BezierInterpolant
A Bezier interpolant using cubic Bezier curves with 2D control points.
This interpolant supports the COLLADA/Maya style of Bezier animation where each keyframe has explicit in/out tangent control points specified as 2D coordinates (time, value).
The tangent data must be provided via the settings object:
settings.inTangents: packed[time, value]pairs per keyframe per component.settings.outTangents: packed[time, value]pairs per keyframe per component.
For a track with N keyframes and stride S:
Each tangent array has
N * S * 2values.Layout:
[k0_c0_time, k0_c0_value, k0_c1_time, k0_c1_value, ..., k0_cS_time, k0_cS_value, k1_c0_time, k1_c0_value, ...].
When no tangent data is present, this falls back to linear interpolation.
Parameters
The parameter positions holding the interpolation factors.
The sample values.
The sample size (a.k.a. the value size / stride).
The result buffer; defaults to a fresh DoubleArray(sampleSize).
Constructors
Properties
The default settings object. Overridden by CubicInterpolant.
The parameter positions.
The result buffer. Reused across calls; overwritten by every evaluate.
The sample values.
The interpolation settings. null until assigned; getSettings_ then falls back to DefaultSettings_.
Functions
Copies a sample value to the result buffer.
Evaluates the interpolant at position t.
Returns the interpolation settings.