A curve is a collection of keys (time/value pairs). The shape of the curve is defined by its type that specifies an interpolation scheme for the keys.

Constructors

Properties

Accessors

Methods

Constructors

  • Creates a new Curve instance.

    Parameters

    • Optionaldata: number[]

      An array of keys (pairs of numbers with the time first and value second).

    Returns Curve

    const curve = new pc.Curve([
    0, 0, // At 0 time, value of 0
    0.33, 2, // At 0.33 time, value of 2
    0.66, 2.6, // At 0.66 time, value of 2.6
    1, 3 // At 1 time, value of 3
    ]);

Properties

keys: number[][] = []

The keys that define the curve. Each key is an array of two numbers with the time first and the value second.

tension: number = 0.5

Controls how CURVE_SPLINE tangents are calculated. Valid range is between 0 and 1 where 0 results in a non-smooth curve (equivalent to linear interpolation) and 1 results in a very smooth curve. Use 0.5 for a Catmull-rom spline.

type: number = CURVE_SMOOTHSTEP

The curve interpolation scheme. Can be:

Defaults to CURVE_SMOOTHSTEP.

Accessors

Methods

  • Adds a new key to the curve.

    Parameters

    • time: number

      Time to add new key.

    • value: number

      Value of new key.

    Returns number[]

    The newly created [time, value] pair.

  • Gets the [time, value] pair at the specified index.

    Parameters

    • index: number

      The index of key to return.

    Returns number[]

    The [time, value] pair at the specified index.

  • Returns the interpolated value of the curve at specified time.

    Parameters

    • time: number

      The time at which to calculate the value.

    Returns number

    The interpolated value.