#include <OgreAnimationTrack.h>
Collaboration diagram for Ogre::AnimationTrack:

Public Methods | |
| AnimationTrack (Animation *parent) | |
| Constructor. | |
| AnimationTrack (Animation *parent, Node *targetNode) | |
| Constructor, associates with a Node. | |
| virtual | ~AnimationTrack () |
| unsigned short | getNumKeyFrames (void) const |
| Returns the number of keyframes in this animation. | |
| KeyFrame * | getKeyFrame (unsigned short index) const |
| Returns the KeyFrame at the specified index. | |
| Real | getKeyFramesAtTime (Real timePos, KeyFrame **keyFrame1, KeyFrame **keyFrame2, unsigned short *firstKeyIndex=0) const |
| Gets the 2 KeyFrame objects which are active at the time given, and the blend value between them. | |
| KeyFrame * | createKeyFrame (Real timePos) |
| Creates a new KeyFrame and adds it to this animation at the given time index. | |
| void | removeKeyFrame (unsigned short index) |
| Removes a KeyFrame by it's index. | |
| void | removeAllKeyFrames (void) |
| Removes all the KeyFrames from this track. | |
| KeyFrame | getInterpolatedKeyFrame (Real timeIndex) const |
| Gets a KeyFrame object which contains the interpolated transforms at the time index specified. | |
| void | apply (Real timePos, Real weight=1.0, bool accumulate=false) |
| Applies an animation track at a certain position to the target node. | |
| Node * | getAssociatedNode (void) const |
| Returns a pointer to the associated Node object (if any). | |
| void | setAssociatedNode (Node *node) |
| Sets the associated Node object which will be automatically affected by calls to 'apply'. | |
| void | applyToNode (Node *node, Real timePos, Real weight=1.0, bool accumulate=false) |
| As the 'apply' method but applies to a specified Node instead of associated node. | |
| void | setUseShortestRotationPath (bool useShortestPath) |
| Sets the method of rotation calculation. | |
| bool | getUseShortestRotationPath () const |
| Gets the method of rotation calculation. | |
Protected Types | |
| typedef std::vector< KeyFrame * > | KeyFrameList |
Protected Methods | |
| void | buildInterpolationSplines (void) const |
Protected Attributes | |
| KeyFrameList | mKeyFrames |
| Real | mMaxKeyFrameTime |
| Animation * | mParent |
| Node * | mTargetNode |
| bool | mSplineBuildNeeded |
| SimpleSpline | mPositionSpline |
| SimpleSpline | mScaleSpline |
| RotationalSpline | mRotationSpline |
| bool | mUseShortestRotationPath |
| Defines if rotation is done using shortest path. | |
Definition at line 54 of file OgreAnimationTrack.h.
|
|
Definition at line 149 of file OgreAnimationTrack.h. |
|
|
Constructor.
Definition at line 41 of file OgreAnimationTrack.cpp. References mMaxKeyFrameTime, mSplineBuildNeeded, mTargetNode, and mUseShortestRotationPath. |
|
||||||||||||
|
Constructor, associates with a Node.
Definition at line 49 of file OgreAnimationTrack.cpp. References mMaxKeyFrameTime, mSplineBuildNeeded, and mUseShortestRotationPath. |
|
|
Definition at line 57 of file OgreAnimationTrack.cpp. References removeAllKeyFrames(). |
|
||||||||||||||||
|
Applies an animation track at a certain position to the target node.
Definition at line 269 of file OgreAnimationTrack.cpp. References applyToNode(), mTargetNode, and Ogre::Real. |
|
||||||||||||||||||||
|
As the 'apply' method but applies to a specified Node instead of associated node.
Definition at line 285 of file OgreAnimationTrack.cpp. References Ogre::Node::_weightedTransform(), getInterpolatedKeyFrame(), Ogre::KeyFrame::getRotation(), Ogre::KeyFrame::getScale(), Ogre::KeyFrame::getTranslate(), Ogre::Real, Ogre::Node::rotate(), Ogre::Node::scale(), and Ogre::Node::translate(). Referenced by apply(). |
|
|
Definition at line 329 of file OgreAnimationTrack.cpp. References Ogre::RotationalSpline::addPoint(), Ogre::SimpleSpline::addPoint(), Ogre::RotationalSpline::clear(), Ogre::SimpleSpline::clear(), mKeyFrames, mPositionSpline, mRotationSpline, mScaleSpline, mSplineBuildNeeded, Ogre::RotationalSpline::recalcTangents(), Ogre::SimpleSpline::recalcTangents(), Ogre::RotationalSpline::setAutoCalculate(), and Ogre::SimpleSpline::setAutoCalculate(). Referenced by getInterpolatedKeyFrame(). |
|
|
Creates a new KeyFrame and adds it to this animation at the given time index.
Definition at line 139 of file OgreAnimationTrack.cpp. References mKeyFrames, mMaxKeyFrameTime, mSplineBuildNeeded, and Ogre::Real. Referenced by Ogre::SkeletonSerializer::readKeyFrame(). |
|
|
Returns a pointer to the associated Node object (if any).
Definition at line 275 of file OgreAnimationTrack.cpp. References mTargetNode. Referenced by Ogre::Skeleton::_dumpContents(), and Ogre::SkeletonSerializer::writeAnimationTrack(). |
|
|
Gets a KeyFrame object which contains the interpolated transforms at the time index specified.
Definition at line 200 of file OgreAnimationTrack.cpp. References buildInterpolationSplines(), Ogre::Animation::getInterpolationMode(), getKeyFramesAtTime(), Ogre::KeyFrame::getRotation(), Ogre::KeyFrame::getScale(), Ogre::KeyFrame::getTranslate(), Ogre::SimpleSpline::interpolate(), Ogre::RotationalSpline::interpolate(), mParent, mPositionSpline, mRotationSpline, mScaleSpline, mUseShortestRotationPath, Ogre::Real, Ogre::KeyFrame::setRotation(), Ogre::KeyFrame::setScale(), and Ogre::KeyFrame::setTranslate(). Referenced by applyToNode(). |
|
|
Returns the KeyFrame at the specified index.
Definition at line 67 of file OgreAnimationTrack.cpp. References mKeyFrames, and Ogre::ushort. Referenced by Ogre::Skeleton::_dumpContents(), Ogre::SkeletonSerializer::calcAnimationTrackSize(), and Ogre::SkeletonSerializer::writeAnimationTrack(). |
|
||||||||||||||||||||
|
Gets the 2 KeyFrame objects which are active at the time given, and the blend value between them.
Definition at line 75 of file OgreAnimationTrack.cpp. References Ogre::Animation::getLength(), Ogre::KeyFrame::getTime(), mKeyFrames, mParent, and Ogre::Real. Referenced by getInterpolatedKeyFrame(). |
|
|
Returns the number of keyframes in this animation.
Definition at line 62 of file OgreAnimationTrack.cpp. References mKeyFrames. Referenced by Ogre::Skeleton::_dumpContents(), Ogre::SkeletonSerializer::calcAnimationTrackSize(), and Ogre::SkeletonSerializer::writeAnimationTrack(). |
|
|
Gets the method of rotation calculation.
Definition at line 364 of file OgreAnimationTrack.cpp. References mUseShortestRotationPath. |
|
|
Removes all the KeyFrames from this track.
Definition at line 185 of file OgreAnimationTrack.cpp. References mKeyFrames, and mSplineBuildNeeded. Referenced by ~AnimationTrack(). |
|
|
Removes a KeyFrame by it's index.
Definition at line 167 of file OgreAnimationTrack.cpp. References mKeyFrames, mSplineBuildNeeded, and Ogre::ushort. |
|
|
Sets the associated Node object which will be automatically affected by calls to 'apply'.
Definition at line 280 of file OgreAnimationTrack.cpp. References mTargetNode. Referenced by Ogre::Animation::createTrack(). |
|
|
Sets the method of rotation calculation.
Definition at line 358 of file OgreAnimationTrack.cpp. References mUseShortestRotationPath. |
|
|
Definition at line 150 of file OgreAnimationTrack.h. Referenced by buildInterpolationSplines(), createKeyFrame(), getKeyFrame(), getKeyFramesAtTime(), getNumKeyFrames(), removeAllKeyFrames(), and removeKeyFrame(). |
|
|
Definition at line 151 of file OgreAnimationTrack.h. Referenced by AnimationTrack(), and createKeyFrame(). |
|
|
Definition at line 152 of file OgreAnimationTrack.h. Referenced by getInterpolatedKeyFrame(), and getKeyFramesAtTime(). |
|
|
Definition at line 160 of file OgreAnimationTrack.h. Referenced by buildInterpolationSplines(), and getInterpolatedKeyFrame(). |
|
|
Definition at line 162 of file OgreAnimationTrack.h. Referenced by buildInterpolationSplines(), and getInterpolatedKeyFrame(). |
|
|
Definition at line 161 of file OgreAnimationTrack.h. Referenced by buildInterpolationSplines(), and getInterpolatedKeyFrame(). |
|
|
Definition at line 159 of file OgreAnimationTrack.h. Referenced by AnimationTrack(), buildInterpolationSplines(), createKeyFrame(), removeAllKeyFrames(), and removeKeyFrame(). |
|
|
Definition at line 153 of file OgreAnimationTrack.h. Referenced by AnimationTrack(), apply(), getAssociatedNode(), and setAssociatedNode(). |
|
|
Defines if rotation is done using shortest path.
Definition at line 164 of file OgreAnimationTrack.h. Referenced by AnimationTrack(), getInterpolatedKeyFrame(), getUseShortestRotationPath(), and setUseShortestRotationPath(). |
Copyright © 2002-2003 by The OGRE Team
Last modified Wed Jan 21 00:16:39 2004