Engines
109
Engine Types
Many engines interpolate between two values at specified increments. For example, a
rotation interpolator might take the beginning and ending rotation coordinates and the
incremental changes between the two. Its output might be a series of transformations
that move an object through a series of coordinates that rotate it from the beginning to
the ending coordinates.
Another example for using an engine is color cycling. You might take an interpolator
engine that takes a series of colors as inputs and outputs a color that gradually changes
to from one input color to the next.
The following csEngines interpolate data:
• csSpline—interpolates an arbitrary, non-uniform spline and outputs a weighted
array that defines a weight for each key in the spline.
• csSelectorEng—selects one coordinate from an array input as its single output.
Derived classes include csSelectorEng3f and csSelectorEng4f.
• csInterpolator—interpolates between keyframe values selected from the key array
by a floating point fraction, ranging from 0 to 1.
• csColorInterpolator—linearly interpolates among a set of colors.
• csCoordinateInterpolator—linearly interpolates among sets of coordinates,
possibly generating more than one output to help produce, for example, a
geometric morph.
• csNormalInterpolator—linearly interpolates among a set of normal vectors,
possibly generating more than one output to help produce, for example, a
geometric morph.
• csOrientationInterpolator—linearly interpolates among a set of rotations.
• csPositionInterpolator—linearly interpolates among a set of positions in space.
• csScalarInterpolator—linearly interpolates between a set of floats.