SLProject
4.2.000
A platform independent 3D computer graphics framework for desktop OS, Android, iOS and online in web browsers
|
Specialized animation track for node animations. More...
#include <SLAnimTrack.h>
Public Member Functions | |
SLNodeAnimTrack (SLAnimation *parent) | |
virtual | ~SLNodeAnimTrack () |
SLTransformKeyframe * | createNodeKeyframe (SLfloat time) |
void | animatedNode (SLNode *target) |
SLNode * | animatedNode () |
virtual void | calcInterpolatedKeyframe (SLfloat time, SLAnimKeyframe *keyframe) const |
virtual void | apply (SLfloat time, SLfloat weight=1.0f, SLfloat scale=1.0f) |
virtual void | applyToNode (SLNode *node, SLfloat time, SLfloat weight=1.0f, SLfloat scale=1.0f) |
virtual void | drawVisuals (SLSceneView *sv) |
Draws all visualizations of node animations. More... | |
void | interpolationCurve (SLCurve *curve) |
void | translationInterpolation (SLAnimInterpolation interp) |
Public Member Functions inherited from SLAnimTrack | |
SLAnimTrack (SLAnimation *parent) | |
virtual | ~SLAnimTrack () |
SLAnimKeyframe * | createKeyframe (SLfloat time) |
SLfloat | getKeyframesAtTime (SLfloat time, SLAnimKeyframe **k1, SLAnimKeyframe **k2) const |
SLint | numKeyframes () const |
SLAnimKeyframe * | keyframe (SLint index) |
Protected Member Functions | |
void | buildInterpolationCurve () const |
virtual SLAnimKeyframe * | createKeyframeImpl (SLfloat time) |
Protected Attributes | |
SLNode * | _animatedNode |
the target node for this track_nodeID More... | |
SLCurve * | _interpolationCurve |
the translation interpolation curve More... | |
SLAnimInterpolation | _translationInterpolation |
interpolation mode for translations (Bezier or linear) More... | |
SLbool | _rebuildInterpolationCurve |
dirty flag of the Bezier curve More... | |
Protected Attributes inherited from SLAnimTrack | |
SLAnimation * | _animation |
parent animation that created this track More... | |
SLVKeyframe | _keyframes |
keyframe list for this track More... | |
Specialized animation track for node animations.
Allows for translation, scale and rotation parameters to be animated. Also allows for either linear or Bezier interpolation of the position parameter in the track.
Definition at line 65 of file SLAnimTrack.h.
SLNodeAnimTrack::SLNodeAnimTrack | ( | SLAnimation * | animation | ) |
Constructor for specialized NodeAnimationTrack
Definition at line 169 of file SLAnimTrack.cpp.
|
virtual |
Destructor
Definition at line 181 of file SLAnimTrack.cpp.
|
inline |
Definition at line 74 of file SLAnimTrack.h.
Definition at line 73 of file SLAnimTrack.h.
Applies the animation with the input timestamp to the set animation target if it exists.
Implements SLAnimTrack.
Definition at line 239 of file SLAnimTrack.cpp.
|
virtual |
Applies the animation to the input node with the input timestamp and weight.
Definition at line 248 of file SLAnimTrack.cpp.
|
protected |
Rebuilds the translation interpolation Bezier curve.
Definition at line 289 of file SLAnimTrack.cpp.
|
virtual |
Calculates a new keyframe based on the input time and interpolation functions.
Implements SLAnimTrack.
Definition at line 198 of file SLAnimTrack.cpp.
|
protectedvirtual |
Implementation for the keyframe creation function.
Implements SLAnimTrack.
Definition at line 313 of file SLAnimTrack.cpp.
SLTransformKeyframe * SLNodeAnimTrack::createNodeKeyframe | ( | SLfloat | time | ) |
Creates a new SLTransformKeyframe at 'time'.
Definition at line 190 of file SLAnimTrack.cpp.
|
virtual |
Draws all visualizations of node animations.
Implements SLAnimTrack.
Definition at line 275 of file SLAnimTrack.cpp.
|
inline |
Definition at line 82 of file SLAnimTrack.h.
|
protected |
the target node for this track_nodeID
Definition at line 88 of file SLAnimTrack.h.
|
mutableprotected |
the translation interpolation curve
Definition at line 89 of file SLAnimTrack.h.
|
protected |
dirty flag of the Bezier curve
Definition at line 91 of file SLAnimTrack.h.
|
protected |
interpolation mode for translations (Bezier or linear)
Definition at line 90 of file SLAnimTrack.h.