VisioMove  2.1.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Properties Friends Pages
VgEngine::VgSinusoidalVectorOffsetFunctorDescriptor Class Reference

This class implements descriptors for sinusoidal animation of vectors. More...

Inheritance diagram for VgEngine::VgSinusoidalVectorOffsetFunctorDescriptor:
Inheritance graph

Static Public Member Functions

static VgRefPtr
< VgSinusoidalVectorOffsetFunctorDescriptor
create ()
 This static method returns a new heap-allocated descriptor. More...
 

Public Attributes

float mBaseVector [3]
 The base vector. More...
 
float mVector [3]
 The vector along which we will animate (in local metric frame). More...
 
double mStartPhase
 The sine function start phase (in radians). More...
 
double mEndPhase
 The sine function end phase (in radians). More...
 
- Public Attributes inherited from VgEngine::VgFunctorDescriptor
float mStartTime
 The functor start time (relative to the animation's start time). More...
 
float mEndTime
 The functor's end time (relative to the animation's start time). More...
 

Protected Member Functions

 VgSinusoidalVectorOffsetFunctorDescriptor ()
 Class constructor. More...
 
virtual ~VgSinusoidalVectorOffsetFunctorDescriptor ()
 Class destructor. More...
 
- Protected Member Functions inherited from VgEngine::VgFunctorDescriptor
 VgFunctorDescriptor ()
 This class constructor is protected to prevent instantiation. More...
 

Friends

class VgObjectBridge
 

Additional Inherited Members

- Public Member Functions inherited from VgEngine::VgFunctorDescriptor
virtual ~VgFunctorDescriptor ()
 Class destructor. More...
 
- Public Member Functions inherited from VgEngine::VgReferenced
 VgReferenced ()
 Constructor. More...
 
 VgReferenced (const VgReferenced &pThis)
 Copy constructor. More...
 
virtual ~VgReferenced ()
 Destructor. More...
 
VgReferencedoperator= (const VgReferenced &pThis)
 Assignment operator. More...
 
void ref () const
 This method is used to add a reference to this object. More...
 
int unref () const
 This method is used to remove a reference to this object. More...
 
int getNbReferences () const
 Retrieves the number of references to this object. More...
 
- Protected Attributes inherited from VgEngine::VgFunctorDescriptor
Private * mPrivate
 
- Protected Attributes inherited from VgEngine::VgReferenced
int mNbReferences
 The number of references to this object. More...
 

Detailed Description

This class implements descriptors for sinusoidal animation of vectors.

The sinusoidal vector animation will apply an offset vector weighted by a sinusoidal time-dependent function. The functors described by this class can be used for all animations channels that manage vectors as values. Formula is the following : f(t) = mBaseVector + sin(mStartPhase + t/mDuration * (mEndPhase-mStartPhase)) * mOffsetVector.

Note
There is no period (or frequency) parameter in this descriptor, because it will be deduced from the start/end phase and the animation duration.
The valid range for phase parameters is [-inf, +inf], but the precision will be (a lot) better for values around 0. To get a full sine cycle start phase should be 0 and the end phase 2 * Pi. To get more pulsations the range should be widened, but it is better to use [-phase, +phase] than [0, 2*phase]
Version
2.0.7729

Constructor & Destructor Documentation

VgEngine::VgSinusoidalVectorOffsetFunctorDescriptor::VgSinusoidalVectorOffsetFunctorDescriptor ( )
protected

Class constructor.

This can't be called publicly, instances must be obtained through the VgSinusoidalVectorOffsetFunctorDescriptor::create method.

virtual VgEngine::VgSinusoidalVectorOffsetFunctorDescriptor::~VgSinusoidalVectorOffsetFunctorDescriptor ( )
protectedvirtual

Class destructor.

Member Function Documentation

static VgRefPtr< VgSinusoidalVectorOffsetFunctorDescriptor > VgEngine::VgSinusoidalVectorOffsetFunctorDescriptor::create ( )
static

This static method returns a new heap-allocated descriptor.

It is the only method that should be used to instantiate new descriptors. It is a way to make sure no one will delete it, except the last VgRefPtr pointing to it.

Friends And Related Function Documentation

friend class VgObjectBridge
friend

Member Data Documentation

float VgEngine::VgSinusoidalVectorOffsetFunctorDescriptor::mBaseVector[3]

The base vector.

double VgEngine::VgSinusoidalVectorOffsetFunctorDescriptor::mEndPhase

The sine function end phase (in radians).

double VgEngine::VgSinusoidalVectorOffsetFunctorDescriptor::mStartPhase

The sine function start phase (in radians).

float VgEngine::VgSinusoidalVectorOffsetFunctorDescriptor::mVector[3]

The vector along which we will animate (in local metric frame).


The documentation for this class was generated from the following file:
VisioMove 2.1.5, Visioglobe® 2015