#include <OgreAnimationTrack.h>
Inheritance diagram for Ogre::NodeAnimationTrack:
Public Member Functions | |||||||||||||
NodeAnimationTrack (Animation *parent, unsigned short handle) | |||||||||||||
Constructor. | |||||||||||||
NodeAnimationTrack (Animation *parent, unsigned short handle, Node *targetNode) | |||||||||||||
Constructor, associates with a Node. | |||||||||||||
virtual TransformKeyFrame * | createNodeKeyFrame (Real timePos) | ||||||||||||
Creates a new KeyFrame and adds it to this animation at the given time index. | |||||||||||||
virtual Node * | getAssociatedNode (void) const | ||||||||||||
Returns a pointer to the associated Node object (if any). | |||||||||||||
virtual void | setAssociatedNode (Node *node) | ||||||||||||
Sets the associated Node object which will be automatically affected by calls to 'apply'. | |||||||||||||
virtual void | applyToNode (Node *node, Real timePos, Real weight=1.0, bool accumulate=false, Real scale=1.0f) | ||||||||||||
As the 'apply' method but applies to a specified Node instead of associated node. | |||||||||||||
virtual void | setUseShortestRotationPath (bool useShortestPath) | ||||||||||||
Sets the method of rotation calculation. | |||||||||||||
virtual bool | getUseShortestRotationPath () const | ||||||||||||
Gets the method of rotation calculation. | |||||||||||||
void | getInterpolatedKeyFrame (Real timeIndex, KeyFrame *kf) const | ||||||||||||
| |||||||||||||
void | apply (Real timePos, Real weight=1.0, bool accumulate=false, Real scale=1.0f) | ||||||||||||
| |||||||||||||
void | _keyFrameDataChanged (void) const | ||||||||||||
| |||||||||||||
virtual TransformKeyFrame * | getNodeKeyFrame (unsigned short index) const | ||||||||||||
Returns the KeyFrame at the specified index. | |||||||||||||
virtual bool | hasNonZeroKeyFrames (void) const | ||||||||||||
Method to determine if this track has any KeyFrames which are doing anything useful - can be used to determine if this track can be optimised out. | |||||||||||||
virtual void | optimise (void) | ||||||||||||
Optimise the current track by removing any duplicate keyframes. | |||||||||||||
unsigned short | getHandle (void) const | ||||||||||||
Get the handle associated with this track. | |||||||||||||
virtual unsigned short | getNumKeyFrames (void) const | ||||||||||||
Returns the number of keyframes in this animation. | |||||||||||||
virtual KeyFrame * | getKeyFrame (unsigned short index) const | ||||||||||||
Returns the KeyFrame at the specified index. | |||||||||||||
virtual 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. | |||||||||||||
virtual KeyFrame * | createKeyFrame (Real timePos) | ||||||||||||
Creates a new KeyFrame and adds it to this animation at the given time index. | |||||||||||||
virtual void | removeKeyFrame (unsigned short index) | ||||||||||||
Removes a KeyFrame by it's index. | |||||||||||||
virtual void | removeAllKeyFrames (void) | ||||||||||||
Removes all the KeyFrames from this track. | |||||||||||||
Protected Types | |||||||||||||
typedef std::vector< KeyFrame * > | KeyFrameList | ||||||||||||
Protected Member Functions | |||||||||||||
KeyFrame * | createKeyFrameImpl (Real time) | ||||||||||||
Specialised keyframe creation. | |||||||||||||
virtual void | buildInterpolationSplines (void) const | ||||||||||||
Protected Attributes | |||||||||||||
Node * | mTargetNode | ||||||||||||
bool | mSplineBuildNeeded | ||||||||||||
SimpleSpline | mPositionSpline | ||||||||||||
SimpleSpline | mScaleSpline | ||||||||||||
RotationalSpline | mRotationSpline | ||||||||||||
bool | mUseShortestRotationPath | ||||||||||||
Defines if rotation is done using shortest path. | |||||||||||||
KeyFrameList | mKeyFrames | ||||||||||||
Animation * | mParent | ||||||||||||
unsigned short | mHandle |
Definition at line 223 of file OgreAnimationTrack.h.
|
Definition at line 151 of file OgreAnimationTrack.h. |
|
Constructor.
|
|
Constructor, associates with a Node.
|
|
Reimplemented from Ogre::AnimationTrack. |
|
Implements Ogre::AnimationTrack. |
|
As the 'apply' method but applies to a specified Node instead of associated node.
|
|
|
|
Creates a new KeyFrame and adds it to this animation at the given time index.
|
|
Specialised keyframe creation.
Implements Ogre::AnimationTrack. |
|
Creates a new KeyFrame and adds it to this animation at the given time index.
|
|
Returns a pointer to the associated Node object (if any).
|
|
Get the handle associated with this track.
Definition at line 66 of file OgreAnimationTrack.h. |
|
Implements Ogre::AnimationTrack. |
|
Returns the KeyFrame at the specified index.
|
|
Gets the 2 KeyFrame objects which are active at the time given, and the blend value between them.
|
|
Returns the KeyFrame at the specified index.
|
|
Returns the number of keyframes in this animation.
|
|
Gets the method of rotation calculation.
|
|
Method to determine if this track has any KeyFrames which are doing anything useful - can be used to determine if this track can be optimised out.
Reimplemented from Ogre::AnimationTrack. |
|
Optimise the current track by removing any duplicate keyframes.
Reimplemented from Ogre::AnimationTrack. |
|
Removes all the KeyFrames from this track.
|
|
Removes a KeyFrame by it's index.
|
|
Sets the associated Node object which will be automatically affected by calls to 'apply'.
|
|
Sets the method of rotation calculation.
|
|
Definition at line 154 of file OgreAnimationTrack.h. |
|
Definition at line 152 of file OgreAnimationTrack.h. |
|
Definition at line 153 of file OgreAnimationTrack.h. |
|
Definition at line 287 of file OgreAnimationTrack.h. |
|
Definition at line 289 of file OgreAnimationTrack.h. |
|
Definition at line 288 of file OgreAnimationTrack.h. |
|
Definition at line 286 of file OgreAnimationTrack.h. |
|
Definition at line 284 of file OgreAnimationTrack.h. |
|
Defines if rotation is done using shortest path.
Definition at line 291 of file OgreAnimationTrack.h. |
Copyright © 2000-2005 by The OGRE Team
This work is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.
Last modified Sun Jul 23 10:05:48 2006