Options
All
  • Public
  • Public/Protected
  • All
Menu

Module "interval"

Index

Functions

Const absMax

  • absMax(a: number, b: number): number

Const absMin

  • absMin(a: number, b: number): number

Const clamp

  • clamp(x: number, min: number, max: number): number
  • Clamps value x to given closed interval.

    Parameters

    • x: number

      value to clamp

    • min: number

      lower bound

    • max: number

      upper bound

    Returns number

Const clamp01

  • clamp01(x: number): number
  • Clamps value x to closed [0 .. 1] interval.

    Parameters

    • x: number

    Returns number

Const clamp05

  • clamp05(x: number): number
  • Clamps value x to closed [0 .. 0.5] interval.

    Parameters

    • x: number

    Returns number

Const clamp11

  • clamp11(x: number): number
  • Clamps value x to closed [-1 .. 1] interval.

    Parameters

    • x: number

    Returns number

Const foldback

  • foldback(e: number, x: number): number

Const inOpenRange

  • inOpenRange(x: number, min: number, max: number): boolean
  • Returns true iff x is in open interval (min .. max)

    Parameters

    • x: number

      -

    • min: number

      -

    • max: number

      -

    Returns boolean

Const inRange

  • inRange(x: number, min: number, max: number): boolean
  • Returns true iff x is in closed interval [min .. max]

    Parameters

    • x: number

      -

    • min: number

      -

    • max: number

      -

    Returns boolean

Const max2id

  • max2id(a: number, b: number): 1 | 0

Const max3id

  • max3id(a: number, b: number, c: number): 2 | 1 | 0
  • Parameters

    • a: number
    • b: number
    • c: number

    Returns 2 | 1 | 0

Const max4id

  • max4id(a: number, b: number, c: number, d: number): 2 | 3 | 1 | 0
  • Parameters

    • a: number
    • b: number
    • c: number
    • d: number

    Returns 2 | 3 | 1 | 0

Const min2id

  • min2id(a: number, b: number): 1 | 0

Const min3id

  • min3id(a: number, b: number, c: number): 2 | 1 | 0
  • Parameters

    • a: number
    • b: number
    • c: number

    Returns 2 | 1 | 0

Const min4id

  • min4id(a: number, b: number, c: number, d: number): 2 | 3 | 1 | 0
  • Parameters

    • a: number
    • b: number
    • c: number
    • d: number

    Returns 2 | 3 | 1 | 0

Const minNonZero2

  • minNonZero2(a: number, b: number): number
  • Returns the non-zero minimum value of the given a, b args.

    Parameters

    • a: number
    • b: number

    Returns number

Const minNonZero3

  • minNonZero3(a: number, b: number, c: number): number
  • Returns the non-zero minimum value of the given a, b, c args.

    Parameters

    • a: number
    • b: number
    • c: number

    Returns number

Const sclamp

  • sclamp(x: number, min: number, max: number, k: number): number
  • Same as smin(smax(x, min, k), max, k).

    Parameters

    • x: number

      -

    • min: number

      -

    • max: number

      -

    • k: number

      -

    Returns number

Const smax

  • smax(a: number, b: number, k: number): number
  • Smooth maximum. Note: Result values will be slightly larger than max value near max(a,b) + eps due to exponential decay. Higher k values reduce the error, but also reduce the smoothing. Recommended k=16.

    https://en.wikipedia.org/wiki/Smooth_maximum

    Parameters

    • a: number

      -

    • b: number

      -

    • k: number

      smooth exponent (MUST be > 0)

    Returns number

Const smin

  • smin(a: number, b: number, k: number): number
  • See smax().

    Parameters

    • a: number

      -

    • b: number

      -

    • k: number

      smooth exponent (MUST be > 0)

    Returns number

Const wrap

  • wrap(x: number, min: number, max: number): number
  • Folds x back inside closed [min..max] interval. Also see wrapOnce.

    Parameters

    • x: number

      -

    • min: number

      -

    • max: number

      -

    Returns number

Const wrap01

  • wrap01(x: number): number

Const wrap11

  • wrap11(x: number): number

Const wrapOnce

  • wrapOnce(x: number, min: number, max: number): number
  • Like wrap, but optimized for cases where x is guaranteed to be in [min - d, max + d] interval, where d = max - min. Result will be in closed [min..max] interval.

    Parameters

    • x: number

      -

    • min: number

      -

    • max: number

      -

    Returns number

Generated using TypeDoc