openscenegraph
osgAnimation::Motion Class Referenceabstract

#include <EaseMotion>

Inheritance diagram for osgAnimation::Motion:
osg::Referenced osgAnimation::MathMotionTemplate< LinearFunction > osgAnimation::MathMotionTemplate< OutQuadFunction > osgAnimation::MathMotionTemplate< InQuadFunction > osgAnimation::MathMotionTemplate< InOutQuadFunction > osgAnimation::MathMotionTemplate< OutCubicFunction > osgAnimation::MathMotionTemplate< InCubicFunction > osgAnimation::MathMotionTemplate< InOutCubicFunction > osgAnimation::MathMotionTemplate< OutQuartFunction > osgAnimation::MathMotionTemplate< InQuartFunction > osgAnimation::MathMotionTemplate< InOutQuartFunction > osgAnimation::MathMotionTemplate< OutBounceFunction > osgAnimation::MathMotionTemplate< InBounceFunction > osgAnimation::MathMotionTemplate< InOutBounceFunction > osgAnimation::MathMotionTemplate< OutElasticFunction > osgAnimation::MathMotionTemplate< InElasticFunction > osgAnimation::MathMotionTemplate< InOutElasticFunction > osgAnimation::MathMotionTemplate< OutSineFunction > osgAnimation::MathMotionTemplate< InSineFunction > osgAnimation::MathMotionTemplate< InOutSineFunction > osgAnimation::MathMotionTemplate< OutBackFunction > osgAnimation::MathMotionTemplate< InBackFunction > osgAnimation::MathMotionTemplate< InOutBackFunction > osgAnimation::MathMotionTemplate< OutCircFunction > osgAnimation::MathMotionTemplate< InCircFunction > osgAnimation::MathMotionTemplate< InOutCircFunction > osgAnimation::MathMotionTemplate< OutExpoFunction > osgAnimation::MathMotionTemplate< InExpoFunction > osgAnimation::MathMotionTemplate< InOutExpoFunction > osgAnimation::CompositeMotion osgAnimation::MathMotionTemplate< T > osgAnimation::SamplerMotionTemplate< T >

Public Types

enum  TimeBehaviour { CLAMP , LOOP }
typedef float value_type

Public Member Functions

 Motion (float startValue=0, float duration=1, float changeValue=1, TimeBehaviour tb=CLAMP)
virtual ~Motion ()
void reset ()
float getTime () const
float evaluateTime (float time) const
void update (float dt)
void setTime (float time)
void getValue (value_type &result) const
value_type getValue () const
void getValueAt (float time, value_type &result) const
value_type getValueAt (float time) const
virtual void getValueInNormalizedRange (float t, value_type &result) const =0
float getDuration () const
Public Member Functions inherited from osg::Referenced
 Referenced ()
 Referenced (bool threadSafeRefUnref)
 Referenced (const Referenced &)
Referencedoperator= (const Referenced &)
virtual void setThreadSafeRefUnref (bool)
bool getThreadSafeRefUnref () const
OpenThreads::MutexgetRefMutex () const
int ref () const
int unref () const
int unref_nodelete () const
int referenceCount () const
ObserverSetgetObserverSet () const
ObserverSetgetOrCreateObserverSet () const
void addObserver (Observer *observer) const
void removeObserver (Observer *observer) const

Protected Attributes

float _time
float _startValue
float _changeValue
float _duration
TimeBehaviour _behaviour
Protected Attributes inherited from osg::Referenced
OpenThreads::AtomicPtr _observerSet
OpenThreads::Atomic _refCount

Additional Inherited Members

Static Public Member Functions inherited from osg::Referenced
static OpenThreads::MutexgetGlobalReferencedMutex ()
static void setDeleteHandler (DeleteHandler *handler)
static DeleteHandlergetDeleteHandler ()
Protected Member Functions inherited from osg::Referenced
virtual ~Referenced ()
void signalObserversAndDelete (bool signalDelete, bool doDelete) const
void deleteUsingDeleteHandler () const

Member Typedef Documentation

◆ value_type

Member Enumeration Documentation

◆ TimeBehaviour

Enumerator
CLAMP 
LOOP 

Constructor & Destructor Documentation

◆ Motion()

◆ ~Motion()

virtual osgAnimation::Motion::~Motion ( )
inlinevirtual

Member Function Documentation

◆ evaluateTime()

float osgAnimation::Motion::evaluateTime ( float time) const
inline

References _behaviour, _duration, CLAMP, and LOOP.

Referenced by getValueAt(), getValueAt(), setTime(), and update().

◆ getDuration()

float osgAnimation::Motion::getDuration ( ) const
inline

◆ getTime()

float osgAnimation::Motion::getTime ( ) const
inline

References _time.

◆ getValue() [1/2]

value_type osgAnimation::Motion::getValue ( ) const
inline

References _time, and getValueAt().

◆ getValue() [2/2]

void osgAnimation::Motion::getValue ( value_type & result) const
inline

References _time, and getValueAt().

◆ getValueAt() [1/2]

value_type osgAnimation::Motion::getValueAt ( float time) const
inline

References evaluateTime(), and getValueAt().

◆ getValueAt() [2/2]

void osgAnimation::Motion::getValueAt ( float time,
value_type & result ) const
inline

◆ getValueInNormalizedRange()

virtual void osgAnimation::Motion::getValueInNormalizedRange ( float t,
value_type & result ) const
pure virtual

Implemented in osgAnimation::CompositeMotion, osgAnimation::MathMotionTemplate< T >, osgAnimation::MathMotionTemplate< InBackFunction >, osgAnimation::MathMotionTemplate< InBounceFunction >, osgAnimation::MathMotionTemplate< InCircFunction >, osgAnimation::MathMotionTemplate< InCubicFunction >, osgAnimation::MathMotionTemplate< InElasticFunction >, osgAnimation::MathMotionTemplate< InExpoFunction >, osgAnimation::MathMotionTemplate< InOutBackFunction >, osgAnimation::MathMotionTemplate< InOutBounceFunction >, osgAnimation::MathMotionTemplate< InOutCircFunction >, osgAnimation::MathMotionTemplate< InOutCubicFunction >, osgAnimation::MathMotionTemplate< InOutElasticFunction >, osgAnimation::MathMotionTemplate< InOutExpoFunction >, osgAnimation::MathMotionTemplate< InOutQuadFunction >, osgAnimation::MathMotionTemplate< InOutQuartFunction >, osgAnimation::MathMotionTemplate< InOutSineFunction >, osgAnimation::MathMotionTemplate< InQuadFunction >, osgAnimation::MathMotionTemplate< InQuartFunction >, osgAnimation::MathMotionTemplate< InSineFunction >, osgAnimation::MathMotionTemplate< LinearFunction >, osgAnimation::MathMotionTemplate< OutBackFunction >, osgAnimation::MathMotionTemplate< OutBounceFunction >, osgAnimation::MathMotionTemplate< OutCircFunction >, osgAnimation::MathMotionTemplate< OutCubicFunction >, osgAnimation::MathMotionTemplate< OutElasticFunction >, osgAnimation::MathMotionTemplate< OutExpoFunction >, osgAnimation::MathMotionTemplate< OutQuadFunction >, osgAnimation::MathMotionTemplate< OutQuartFunction >, osgAnimation::MathMotionTemplate< OutSineFunction >, and osgAnimation::SamplerMotionTemplate< T >.

Referenced by getValueAt().

◆ reset()

void osgAnimation::Motion::reset ( )
inline

References setTime().

◆ setTime()

void osgAnimation::Motion::setTime ( float time)
inline

References _time, and evaluateTime().

Referenced by reset().

◆ update()

void osgAnimation::Motion::update ( float dt)
inline

References _time, and evaluateTime().

Member Data Documentation

◆ _behaviour

TimeBehaviour osgAnimation::Motion::_behaviour
protected

Referenced by evaluateTime(), and Motion().

◆ _changeValue

float osgAnimation::Motion::_changeValue
protected

Referenced by getValueAt(), and Motion().

◆ _duration

float osgAnimation::Motion::_duration
protected

◆ _startValue

float osgAnimation::Motion::_startValue
protected

Referenced by getValueAt(), and Motion().

◆ _time

float osgAnimation::Motion::_time
protected

The documentation for this class was generated from the following file: