Specialised AnimationTrack for dealing with node transforms. More...
#include <OgreAnimationTrack.h>

Classes | |
| struct | Splines |
Public Member Functions | |
| NodeAnimationTrack (Animation *parent, unsigned short handle) | |
| Constructor. | |
| NodeAnimationTrack (Animation *parent, unsigned short handle, Node *targetNode) | |
| Constructor, associates with a Node. | |
| virtual | ~NodeAnimationTrack () |
| Destructor. | |
| 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, const TimeIndex &timeIndex, Real weight=1.0, 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. | |
| virtual void | getInterpolatedKeyFrame (const TimeIndex &timeIndex, KeyFrame *kf) const |
| virtual void | apply (const TimeIndex &timeIndex, Real weight=1.0, 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. | |
| NodeAnimationTrack * | _clone (Animation *newParent) const |
| Clone this track (internal use only) | |
| void | _applyBaseKeyFrame (const KeyFrame *base) |
| Internal method to re-base the keyframes relative to a given keyframe. | |
| 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 (const TimeIndex &timeIndex, 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. | |
| virtual void | _collectKeyFrameTimes (vector< Real >::type &keyFrameTimes) |
| Internal method to collect keyframe times, in unique, ordered format. | |
| virtual void | _buildKeyFrameIndexMap (const vector< Real >::type &keyFrameTimes) |
| Internal method to build keyframe time index map to translate global lower bound index to local lower bound index. | |
| virtual void | setListener (Listener *l) |
| Set a listener for this track. | |
| Animation * | getParent () const |
| Returns the parent Animation object for this track. | |
| void * | operator new (size_t sz, const char *file, int line, const char *func) |
| operator new, with debug line info | |
| void * | operator new (size_t sz) |
| void * | operator new (size_t sz, void *ptr) |
| placement operator new | |
| void * | operator new[] (size_t sz, const char *file, int line, const char *func) |
| array operator new, with debug line info | |
| void * | operator new[] (size_t sz) |
| void | operator delete (void *ptr) |
| void | operator delete (void *ptr, void *) |
| void | operator delete (void *ptr, const char *, int, const char *) |
| void | operator delete[] (void *ptr) |
| void | operator delete[] (void *ptr, const char *, int, const char *) |
Protected Types | |
| typedef vector< KeyFrame * >::type | KeyFrameList |
| typedef vector< ushort >::type | KeyFrameIndexMap |
| Map used to translate global keyframe time lower bound index to local lower bound index. | |
Protected Member Functions | |
| KeyFrame * | createKeyFrameImpl (Real time) |
| Specialised keyframe creation. | |
| virtual void | buildInterpolationSplines (void) const |
| virtual void | populateClone (AnimationTrack *clone) const |
| Internal method for clone implementation. | |
Protected Attributes | |
| Node * | mTargetNode |
| Splines * | mSplines |
| bool | mSplineBuildNeeded |
| bool | mUseShortestRotationPath |
| Defines if rotation is done using shortest path. | |
| KeyFrameList | mKeyFrames |
| Animation * | mParent |
| unsigned short | mHandle |
| Listener * | mListener |
| KeyFrameIndexMap | mKeyFrameIndexMap |
Specialised AnimationTrack for dealing with node transforms.
Definition at line 325 of file OgreAnimationTrack.h.
typedef vector<ushort>::type Ogre::AnimationTrack::KeyFrameIndexMap [protected, inherited] |
Map used to translate global keyframe time lower bound index to local lower bound index.
Definition at line 249 of file OgreAnimationTrack.h.
typedef vector<KeyFrame*>::type Ogre::AnimationTrack::KeyFrameList [protected, inherited] |
Definition at line 242 of file OgreAnimationTrack.h.
| Ogre::NodeAnimationTrack::NodeAnimationTrack | ( | Animation * | parent, |
| unsigned short | handle | ||
| ) |
Constructor.
| Ogre::NodeAnimationTrack::NodeAnimationTrack | ( | Animation * | parent, |
| unsigned short | handle, | ||
| Node * | targetNode | ||
| ) |
Constructor, associates with a Node.
| virtual Ogre::NodeAnimationTrack::~NodeAnimationTrack | ( | ) | [virtual] |
Destructor.
| void Ogre::NodeAnimationTrack::_applyBaseKeyFrame | ( | const KeyFrame * | base | ) | [virtual] |
Internal method to re-base the keyframes relative to a given keyframe.
Reimplemented from Ogre::AnimationTrack.
| virtual void Ogre::AnimationTrack::_buildKeyFrameIndexMap | ( | const vector< Real >::type & | keyFrameTimes | ) | [virtual, inherited] |
Internal method to build keyframe time index map to translate global lower bound index to local lower bound index.
| NodeAnimationTrack* Ogre::NodeAnimationTrack::_clone | ( | Animation * | newParent | ) | const |
Clone this track (internal use only)
| virtual void Ogre::AnimationTrack::_collectKeyFrameTimes | ( | vector< Real >::type & | keyFrameTimes | ) | [virtual, inherited] |
Internal method to collect keyframe times, in unique, ordered format.
| void Ogre::NodeAnimationTrack::_keyFrameDataChanged | ( | void | ) | const [virtual] |
Internal method used to tell the track that keyframe data has been changed, which may cause it to rebuild some internal data.
Reimplemented from Ogre::AnimationTrack.
| virtual void Ogre::NodeAnimationTrack::apply | ( | const TimeIndex & | timeIndex, |
| Real | weight = 1.0, |
||
| Real | scale = 1.0f |
||
| ) | [virtual] |
Applies an animation track to the designated target.
| timeIndex | The time position in the animation to apply. |
| weight | The influence to give to this track, 1.0 for full influence, less to blend with other animations. |
| scale | The scale to apply to translations and scalings, useful for adapting an animation to a different size target. |
Implements Ogre::AnimationTrack.
| virtual void Ogre::NodeAnimationTrack::applyToNode | ( | Node * | node, |
| const TimeIndex & | timeIndex, | ||
| Real | weight = 1.0, |
||
| Real | scale = 1.0f |
||
| ) | [virtual] |
As the 'apply' method but applies to a specified Node instead of associated node.
| virtual void Ogre::NodeAnimationTrack::buildInterpolationSplines | ( | void | ) | const [protected, virtual] |
| virtual KeyFrame* Ogre::AnimationTrack::createKeyFrame | ( | Real | timePos | ) | [virtual, inherited] |
Creates a new KeyFrame and adds it to this animation at the given time index.
| timePos | The time from which this KeyFrame will apply. |
| KeyFrame* Ogre::NodeAnimationTrack::createKeyFrameImpl | ( | Real | time | ) | [protected, virtual] |
Specialised keyframe creation.
Implements Ogre::AnimationTrack.
| virtual TransformKeyFrame* Ogre::NodeAnimationTrack::createNodeKeyFrame | ( | Real | timePos | ) | [virtual] |
Creates a new KeyFrame and adds it to this animation at the given time index.
| timePos | The time from which this KeyFrame will apply. |
| virtual Node* Ogre::NodeAnimationTrack::getAssociatedNode | ( | void | ) | const [virtual] |
Returns a pointer to the associated Node object (if any).
| unsigned short Ogre::AnimationTrack::getHandle | ( | void | ) | const [inherited] |
Get the handle associated with this track.
Definition at line 145 of file OgreAnimationTrack.h.
| virtual void Ogre::NodeAnimationTrack::getInterpolatedKeyFrame | ( | const TimeIndex & | timeIndex, |
| KeyFrame * | kf | ||
| ) | const [virtual] |
Gets a KeyFrame object which contains the interpolated transforms at the time index specified.
| timeIndex | The time (in relation to the whole animation sequence) |
| kf | Keyframe object to store results |
Implements Ogre::AnimationTrack.
| virtual KeyFrame* Ogre::AnimationTrack::getKeyFrame | ( | unsigned short | index | ) | const [virtual, inherited] |
Returns the KeyFrame at the specified index.
| virtual Real Ogre::AnimationTrack::getKeyFramesAtTime | ( | const TimeIndex & | timeIndex, |
| KeyFrame ** | keyFrame1, | ||
| KeyFrame ** | keyFrame2, | ||
| unsigned short * | firstKeyIndex = 0 |
||
| ) | const [virtual, inherited] |
Gets the 2 KeyFrame objects which are active at the time given, and the blend value between them.
| timeIndex | The time index. |
| keyFrame1 | Pointer to a KeyFrame pointer which will receive the pointer to the keyframe just before or at this time index. |
| keyFrame2 | Pointer to a KeyFrame pointer which will receive the pointer to the keyframe just after this time index. |
| firstKeyIndex | Pointer to an unsigned short which, if supplied, will receive the index of the 'from' keyframe in case the caller needs it. |
| virtual TransformKeyFrame* Ogre::NodeAnimationTrack::getNodeKeyFrame | ( | unsigned short | index | ) | const [virtual] |
Returns the KeyFrame at the specified index.
| virtual unsigned short Ogre::AnimationTrack::getNumKeyFrames | ( | void | ) | const [virtual, inherited] |
Returns the number of keyframes in this animation.
| Animation* Ogre::AnimationTrack::getParent | ( | ) | const [inherited] |
Returns the parent Animation object for this track.
Definition at line 240 of file OgreAnimationTrack.h.
| virtual bool Ogre::NodeAnimationTrack::getUseShortestRotationPath | ( | ) | const [virtual] |
Gets the method of rotation calculation.
| virtual bool Ogre::NodeAnimationTrack::hasNonZeroKeyFrames | ( | void | ) | const [virtual] |
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.
| void Ogre::AllocatedObject< Alloc >::operator delete | ( | void * | ptr | ) | [inherited] |
Definition at line 95 of file OgreMemoryAllocatedObject.h.
| void Ogre::AllocatedObject< Alloc >::operator delete | ( | void * | ptr, |
| void * | |||
| ) | [inherited] |
Definition at line 101 of file OgreMemoryAllocatedObject.h.
| void Ogre::AllocatedObject< Alloc >::operator delete | ( | void * | ptr, |
| const char * | , | ||
| int | , | ||
| const char * | |||
| ) | [inherited] |
Definition at line 107 of file OgreMemoryAllocatedObject.h.
| void Ogre::AllocatedObject< Alloc >::operator delete[] | ( | void * | ptr | ) | [inherited] |
Definition at line 112 of file OgreMemoryAllocatedObject.h.
| void Ogre::AllocatedObject< Alloc >::operator delete[] | ( | void * | ptr, |
| const char * | , | ||
| int | , | ||
| const char * | |||
| ) | [inherited] |
Definition at line 118 of file OgreMemoryAllocatedObject.h.
| void* Ogre::AllocatedObject< Alloc >::operator new | ( | size_t | sz, |
| const char * | file, | ||
| int | line, | ||
| const char * | func | ||
| ) | [inherited] |
operator new, with debug line info
Definition at line 67 of file OgreMemoryAllocatedObject.h.
| void* Ogre::AllocatedObject< Alloc >::operator new | ( | size_t | sz | ) | [inherited] |
Definition at line 72 of file OgreMemoryAllocatedObject.h.
| void* Ogre::AllocatedObject< Alloc >::operator new | ( | size_t | sz, |
| void * | ptr | ||
| ) | [inherited] |
placement operator new
Definition at line 78 of file OgreMemoryAllocatedObject.h.
| void* Ogre::AllocatedObject< Alloc >::operator new[] | ( | size_t | sz, |
| const char * | file, | ||
| int | line, | ||
| const char * | func | ||
| ) | [inherited] |
array operator new, with debug line info
Definition at line 85 of file OgreMemoryAllocatedObject.h.
| void* Ogre::AllocatedObject< Alloc >::operator new[] | ( | size_t | sz | ) | [inherited] |
Definition at line 90 of file OgreMemoryAllocatedObject.h.
| virtual void Ogre::NodeAnimationTrack::optimise | ( | void | ) | [virtual] |
Optimise the current track by removing any duplicate keyframes.
Reimplemented from Ogre::AnimationTrack.
| virtual void Ogre::AnimationTrack::populateClone | ( | AnimationTrack * | clone | ) | const [protected, virtual, inherited] |
Internal method for clone implementation.
| virtual void Ogre::AnimationTrack::removeAllKeyFrames | ( | void | ) | [virtual, inherited] |
Removes all the KeyFrames from this track.
| virtual void Ogre::AnimationTrack::removeKeyFrame | ( | unsigned short | index | ) | [virtual, inherited] |
Removes a KeyFrame by it's index.
| virtual void Ogre::NodeAnimationTrack::setAssociatedNode | ( | Node * | node | ) | [virtual] |
Sets the associated Node object which will be automatically affected by calls to 'apply'.
| virtual void Ogre::AnimationTrack::setListener | ( | Listener * | l | ) | [virtual, inherited] |
Set a listener for this track.
Definition at line 237 of file OgreAnimationTrack.h.
| virtual void Ogre::NodeAnimationTrack::setUseShortestRotationPath | ( | bool | useShortestPath | ) | [virtual] |
Sets the method of rotation calculation.
unsigned short Ogre::AnimationTrack::mHandle [protected, inherited] |
Definition at line 245 of file OgreAnimationTrack.h.
KeyFrameIndexMap Ogre::AnimationTrack::mKeyFrameIndexMap [protected, inherited] |
Definition at line 250 of file OgreAnimationTrack.h.
KeyFrameList Ogre::AnimationTrack::mKeyFrames [protected, inherited] |
Definition at line 243 of file OgreAnimationTrack.h.
Listener* Ogre::AnimationTrack::mListener [protected, inherited] |
Definition at line 246 of file OgreAnimationTrack.h.
Animation* Ogre::AnimationTrack::mParent [protected, inherited] |
Definition at line 244 of file OgreAnimationTrack.h.
bool Ogre::NodeAnimationTrack::mSplineBuildNeeded [mutable, protected] |
Definition at line 403 of file OgreAnimationTrack.h.
Splines* Ogre::NodeAnimationTrack::mSplines [mutable, protected] |
Definition at line 402 of file OgreAnimationTrack.h.
Node* Ogre::NodeAnimationTrack::mTargetNode [protected] |
Definition at line 400 of file OgreAnimationTrack.h.
bool Ogre::NodeAnimationTrack::mUseShortestRotationPath [mutable, protected] |
Defines if rotation is done using shortest path.
Definition at line 405 of file OgreAnimationTrack.h.
Copyright © 2012 Torus Knot Software Ltd

This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.
Last modified Sun Sep 2 2012 07:27:25