Main Page | Modules | Namespace List | Class Hierarchy | Class List | Namespace Members | Class Members | Related Pages

VectorInterpolatorNode Class Reference

VectorInterpolatorNode is the base class for keyframe interpolator which can be applied to points, normals, colors and rotations. More...

Inheritance diagram for VectorInterpolatorNode:

ChildNode Node Object VectorInterpolator List of all members.

Detailed Description

VectorInterpolatorNode is the base class for keyframe interpolator which can be applied to points, normals, colors and rotations.

Authoring Interface:

        VectorInterpolatorNode {
            field MFFloat   key             [ ]
            field MFFloat   keyValue        [ ]
            field SFString  type            "LINEAR"
            field SFFloat   easeInFraction  0
            field SFFloat   easeOutFraction 0
        }

Parameters:
key is an array of floats which identifies interpolation keys. Each keyframe value corresponds to one key. Default value: [ ]
keyValue is an array of floats which contains the keyframe values. Each value is made up of a sequence of consecutive floats. The number of floats per keyframe value is determined by keyValue.length / key.length. The number of values returned in from the evaluate() function is equal to this number. Default value: [ ]
type is string identifying the type of interpolation to be done. Allowed values are:
"LINEAR"Treat each floating point value as an independent linear interpolation. Mostly for interpolating position.

"SPHERICAL"Each set of 4 floats is considered to be a rotation value. Do a slerp to interpolate between them.

"RGB"Each set of 3 floats is considered to be an RGB value. Interpolate in HSV space.

"RGBA"Each set of 4 floats is considered to be an RGBA value. Interpolate RGB in HSV space and linearly interpolate alpha.

"NORMAL"Each set of 3 floats is considered to be a normal vector. These are converted to quaternion values, slerp is used to interpolate and then the result is converted back to a normal vector.

"FAST_NORMAL"Each set of 3 floats is considered to be a normal vector. But instead of doing the precise slerp operation, a much faster linear interpolation is performed. The result is then normalized. This is less accurate than slerp, but for normals animating over a small range (like a flag waving) it gives good results.

"MATRIX2D"Each set of 6 floats is consider to be a 2D matrix (a 2x2 matrix plus x,y position). The 2x2 matrix is decomposed into rotation and scale values which are linearly interpolated (the rotation is a single angle value so it can be accurately interpolated in this way) and the position is linearly interpolated.
Default value: "LINEAR"
easeInFraction corresponds to the fraction value at which easing in will be complete. Easing takes place between 0 and this value. Default value: 0
easeOutFraction corresponds to the fraction value at which easing out will start. Easing takes places between 1-easeOutFraction and 1. Default value: 0

Functionality:

XXX


Generated on Sat Apr 1 06:08:08 2006 for Emma Content Development Kit by  doxygen 1.4.3