animation manipulator that uses keyframes to generate the animation.
More...
#include <vtkPVKeyFrameCueManipulator.h>
|
virtual void | Initialize (vtkPVAnimationCue *) |
| This method is called when the AnimationCue's StartAnimationCueEvent is triggerred, to let the animation manipulator know that the cue has been restarted. More...
|
|
virtual void | Finalize (vtkPVAnimationCue *) |
| This method is called when the AnimationCue's EndAnimationCueEvent is triggerred. More...
|
|
virtual void | UpdateValue (double currenttime, vtkPVAnimationCue *cueproxy) |
| This updates the values based on currenttime. More...
|
|
int | AddKeyFrameInternal (vtkPVKeyFrame *keyframe) |
|
int | RemoveKeyFrameInternal (vtkPVKeyFrame *keyframe) |
|
void | ExecuteEvent (vtkObject *obj, unsigned long event, void *) |
|
|
| vtkPVKeyFrameCueManipulator () |
| This method iterates over all added keyframe proxies and updates the domains for all keyframes, such that for every keyframe J, with keytime between keyframes I and K, the domain for keytime of J is (DomainJ)min = KeyTimeI and (DomainJ)max = KeyTimeK. More...
|
|
| ~vtkPVKeyFrameCueManipulator () |
| This method iterates over all added keyframe proxies and updates the domains for all keyframes, such that for every keyframe J, with keytime between keyframes I and K, the domain for keytime of J is (DomainJ)min = KeyTimeI and (DomainJ)max = KeyTimeK. More...
|
|
| vtkPVCueManipulator () |
|
| ~vtkPVCueManipulator () |
|
animation manipulator that uses keyframes to generate the animation.
This is a Manipulator that support key framing. Key frames are stored in a vector ordered by their keyframe time. Ordering of keyframes with same key time is arbritary. This class ensures that the keyframes are always maintained in the correct order. How the values for the animated property are interpolated between successive keyframes depends on the the type of the preceding keyframe. Thus this class doesn't perform the interpolation instead delegates it to the keyframe object affecting the property at the current time value.
vtkPVCueManipulator::StateModifiedEvent
- This event is fired when the manipulator modifies the animated proxy.
vtkCommand::ModifiedEvent
- is fired when the keyframes are changed i.e. added/removed/modified.
- See also
- vtkPVAnimationCue vtkPVCueManipulator
Definition at line 46 of file vtkPVKeyFrameCueManipulator.h.
§ Superclass
§ vtkPVKeyFrameCueManipulator()
vtkPVKeyFrameCueManipulator::vtkPVKeyFrameCueManipulator |
( |
| ) |
|
|
protected |
This method iterates over all added keyframe proxies and updates the domains for all keyframes, such that for every keyframe J, with keytime between keyframes I and K, the domain for keytime of J is (DomainJ)min = KeyTimeI and (DomainJ)max = KeyTimeK.
void UpdateKeyTimeDomains();
§ ~vtkPVKeyFrameCueManipulator()
vtkPVKeyFrameCueManipulator::~vtkPVKeyFrameCueManipulator |
( |
| ) |
|
|
protected |
This method iterates over all added keyframe proxies and updates the domains for all keyframes, such that for every keyframe J, with keytime between keyframes I and K, the domain for keytime of J is (DomainJ)min = KeyTimeI and (DomainJ)max = KeyTimeK.
void UpdateKeyTimeDomains();
§ GetClassName()
virtual const char* vtkPVKeyFrameCueManipulator::GetClassName |
( |
| ) |
|
|
virtual |
§ IsTypeOf()
static int vtkPVKeyFrameCueManipulator::IsTypeOf |
( |
const char * |
type | ) |
|
|
static |
§ IsA()
virtual int vtkPVKeyFrameCueManipulator::IsA |
( |
const char * |
type | ) |
|
|
virtual |
§ SafeDownCast()
§ PrintSelf()
void vtkPVKeyFrameCueManipulator::PrintSelf |
( |
ostream & |
os, |
|
|
vtkIndent |
indent |
|
) |
| |
§ New()
§ AddKeyFrame()
int vtkPVKeyFrameCueManipulator::AddKeyFrame |
( |
vtkPVKeyFrame * |
keyframe | ) |
|
Add a key frame.
Key frames are stored in a map, keyed by the KeyFrameTime. If two keyframes have the same key time, only one of then will be considered. It returns the index of the added frame in the collection.
§ GetLastAddedKeyFrameIndex()
virtual int vtkPVKeyFrameCueManipulator::GetLastAddedKeyFrameIndex |
( |
| ) |
|
|
virtual |
This method returns the index of the last added key frame.
Note that this index is valid only until none of the keyframes are modified. This is even provided as a method so that this value can be accessed via properties.
§ RemoveKeyFrame()
void vtkPVKeyFrameCueManipulator::RemoveKeyFrame |
( |
vtkPVKeyFrame * |
keyframe | ) |
|
Removes a key frame at the specified time, if any.
§ RemoveAllKeyFrames()
void vtkPVKeyFrameCueManipulator::RemoveAllKeyFrames |
( |
| ) |
|
Removes all key frames, if any.
§ GetKeyFrame()
vtkPVKeyFrame* vtkPVKeyFrameCueManipulator::GetKeyFrame |
( |
double |
time | ) |
|
Returns a pointer to the key frame at the given time.
If no key frame exists at the given time, it returns NULL.
§ GetStartKeyFrame()
vtkPVKeyFrame* vtkPVKeyFrameCueManipulator::GetStartKeyFrame |
( |
double |
time | ) |
|
Given the current time, determine the key frames between which the current time lies.
Returns the key frame time. If the current time coincides with a key frame, both methods (GetStartKeyFrameTime and GetEndKeyFrameTime) return that key keyframes time which is same as time. If the current time is before the first key frame or after the last key frame, then this method return -1.
§ GetEndKeyFrame()
vtkPVKeyFrame* vtkPVKeyFrameCueManipulator::GetEndKeyFrame |
( |
double |
time | ) |
|
Given the current time, determine the key frames between which the current time lies.
Returns the key frame time. If the current time coincides with a key frame, both methods (GetStartKeyFrameTime and GetEndKeyFrameTime) return that key keyframes time which is same as time. If the current time is before the first key frame or after the last key frame, then this method return -1.
§ GetNextKeyFrame()
Get the next/previous key frame relative to argument key frame.
Returns NULL when no next/previous frame exists.
§ GetPreviousKeyFrame()
Get the next/previous key frame relative to argument key frame.
Returns NULL when no next/previous frame exists.
§ GetNumberOfKeyFrames()
unsigned int vtkPVKeyFrameCueManipulator::GetNumberOfKeyFrames |
( |
| ) |
|
Get the number of keyframes.
§ GetKeyFrameAtIndex()
vtkPVKeyFrame* vtkPVKeyFrameCueManipulator::GetKeyFrameAtIndex |
( |
int |
index | ) |
|
Access the keyframe collection using the indices.
Keyframes are sorted according to increasing key frame time.
§ Initialize()
This method is called when the AnimationCue's StartAnimationCueEvent is triggerred, to let the animation manipulator know that the cue has been restarted.
This is here for one major reason: after the last key frame, the state of the scene must be as it was left a the the last key frame. This does not happend automatically, since if while animating the currentime never coincides with the last key frame's key time, then it never gets a chance to update the properties value. Hence, we note when the cue begins. Then, if the currentime is beyond that of the last key frame we pretend that the current time coincides with that of the last key frame and let it update the properties. This is done only once per Animation cycle. The Initialize method is used to indicate that a new animation cycle has begun.
Reimplemented from vtkPVCueManipulator.
Reimplemented in vtkPVCameraCueManipulator.
§ Finalize()
This method is called when the AnimationCue's EndAnimationCueEvent is triggerred.
Typically, the Manipulator will set the state of the Cue to that at the end of the cue.
Reimplemented from vtkPVCueManipulator.
Reimplemented in vtkPVCameraCueManipulator.
§ UpdateValue()
virtual void vtkPVKeyFrameCueManipulator::UpdateValue |
( |
double |
currenttime, |
|
|
vtkPVAnimationCue * |
cueproxy |
|
) |
| |
|
protectedvirtual |
§ AddKeyFrameInternal()
int vtkPVKeyFrameCueManipulator::AddKeyFrameInternal |
( |
vtkPVKeyFrame * |
keyframe | ) |
|
|
protected |
§ RemoveKeyFrameInternal()
int vtkPVKeyFrameCueManipulator::RemoveKeyFrameInternal |
( |
vtkPVKeyFrame * |
keyframe | ) |
|
|
protected |
§ ExecuteEvent()
void vtkPVKeyFrameCueManipulator::ExecuteEvent |
( |
vtkObject * |
obj, |
|
|
unsigned long |
event, |
|
|
void * |
|
|
) |
| |
|
protected |
§ vtkPVKeyFrameCueManipulatorObserver
friend class vtkPVKeyFrameCueManipulatorObserver |
|
friend |
§ Internals
vtkPVKeyFrameCueManipulatorInternals* vtkPVKeyFrameCueManipulator::Internals |
|
protected |
§ Observer
§ SendEndEvent
int vtkPVKeyFrameCueManipulator::SendEndEvent |
|
protected |
§ LastAddedKeyFrameIndex
int vtkPVKeyFrameCueManipulator::LastAddedKeyFrameIndex |
|
protected |
The documentation for this class was generated from the following file: