AnimationData
Fields
double |
|
double |
|
double |
Functions
|
|
void |
|
void |
|
void |
|
void |
|
void |
|
void |
|
void |
|
void |
|
void |
|
void |
|
void |
Detailed Description
-
class AnimationData : public RED::Object
Base data for animation.
@related class RED::AnimationClip, class RED::Quaternion
Animation data is composed of:
Position as a 3 components vector;
Rotation as a 4 components quaternion;
Scale as a 3 components vector.
This class provides functions for blending used in the RED animation system:
An animation data can be converted to a RED::Matrix using the RED::AnimationData::GetMatrix function.
Public Functions
- SET_CID (CID_class_REDAnimationData) IMPLEMENT_AS()
-
AnimationData()
Default constructor.
-
void SetPosition(const RED::Vector3 &iPosition)
Sets the position.
- Parameters
iPosition – Position.
-
void SetPosition(double iX, double iY, double iZ)
Sets the position from coordinates.
- Parameters
iX – Position x coordinate.
iY – Position y coordinate.
iZ – Position z coordinate.
-
void SetRotation(const RED::Quaternion &iRotation)
Sets the rotation.
- Parameters
iRotation – Rotation as a quaternion.
-
void SetRotation(double iX, double iY, double iZ, double iW)
Sets the rotation from quaternion values.
- Parameters
iX – Quaternion x coordinate.
iY – Quaternion y coordinate.
iZ – Quaternion z coordinate.
iW – Quaternion w coordinate.
-
void SetScale(double iX, double iY, double iZ)
Sets the scale from coordinates.
- Parameters
iX – Scale x coordinate.
iY – Scale y coordinate.
iZ – Scale z coordinate.
-
void SetNeutral()
Sets the neutral transform (no position, rotation or scale).
-
void Blend(const AnimationData &iData1, const AnimationData &iData2, double iWeight)
Sets the animation data as a blend between two other data.
The blending operation performs interpolations between iData1 and iData2.
- Parameters
iData1 – the first data.
iData2 – the second data.
iWeight – the blending weight between 0 and 1 (0 = iData1, 1 = iData2)
-
void Add(const AnimationData &iData1, const AnimationData &iData2, double iWeight)
Sets the animation data as an addition of two other data.
The Addition operation performs interpolations between iData1 and iData1 + iData2.
- Parameters
iData1 – the first data.
iData2 – the second data.
iWeight – the blending weight between 0 and 1 (0 = iData1, 1 = iData1 + iData2)
-
void Sub(const AnimationData &iData1, const AnimationData &iData2, double iWeight)
Sets the animation data as a substraction of two other data.
The Substraction operation performs interpolations between iData1 and iData1 - iData2.
- Parameters
iData1 – the first data.
iData2 – the second data.
iWeight – the blending weight between 0 and 1 (0 = iData1, 1 = iData1 - iData2)
Public Members
-
double _position[3]
Position.
-
double _rotation[4]
Quaternion rotation.
-
double _scale[3]
Scale.