vrecko
virtual reality framework
|
#include <Animator.h>
Classes | |
class | AnimationPoint |
Public Types | |
enum | AnimationTypes { AnimSRT = 1, AnimAlpha = 2, AnimNodeMask = 4 } |
enum | LoopType { NoLoop, Simple, BiDi } |
enum | InterpolationType { Linear, Sine } |
Public Types inherited from vrecko::Ability | |
typedef std::vector < ParameterStruct > | ParameterVector |
Vector of the description of parameters. More... | |
Public Types inherited from vrecko::BaseClass | |
enum | NotificationTypes { NOTIFICATION_DELETE_CLASS = 1, NOTIFICATION_EO_REGISTERING = 2, NOTIFICATION_EO_UNREGISTERING = 4, NOTIFICATION_PROGRAM_TERMINATION = 8, NOTIFICATION_ALL = 0xFFFFFFFF } |
Public Member Functions | |
Animator () | |
virtual | ~Animator () |
virtual void | preInitialize () |
OBSOLETE METHOD, kept for backwards compatibility. More... | |
virtual bool | loadXMLParameters (XERCES_CPP_NAMESPACE_QUALIFIER DOMNode *pParametersNode) |
OBSOLETE METHOD, kept for backwards compatibility. More... | |
virtual void | update () |
This method is called periodically in case this instance is registered in Scheduler. More... | |
virtual void | clean () |
bool | removeAnimation () |
bool | isAnimating () |
bool | stopAnimation () |
bool | startAnimation () |
bool | animateToPoint (int pointIndex) |
bool | resetToPos (float fPos) |
bool | setAnimationPointsNumber (unsigned int number) |
unsigned int | getAnimationPointsNumber () |
bool | setEnabledAnimations (unsigned long dwAnimations) |
unsigned long | getEnabledAnimations () |
bool | setTranslation (int pointIndex, const osg::Vec3 &trans) |
osg::Vec3 & | getTranslation (int pointIndex) |
bool | setRotation (int pointIndex, const osg::Quat &rot) |
osg::Quat & | getRotation (int pointIndex) |
bool | setScale (int pointIndex, const osg::Vec3 &scale) |
osg::Vec3 & | getScale (int pointIndex) |
bool | setAlpha (int pointIndex, float alpha) |
float | getAlpha (int pointIndex) |
bool | setNodeMask (int pointIndex, osg::Node::NodeMask nodeMask) |
osg::Node::NodeMask | getNodeMask (int pointIndex) |
bool | setTimePerLoop (float timeInS) |
float | getTimePerLoop () |
bool | setLoopType (LoopType newType) |
LoopType | getLoopType () |
bool | setInterpolationType (InterpolationType newType) |
InterpolationType | getInterpolationType () |
bool | setTransformationFromMatrix (int startPointIndex, int endPointIndex, const osg::Matrix &matrix) |
bool | getAnimMatrix (float fActPos, osg::Matrix &outMatrix) |
Public Member Functions inherited from vrecko::Ability | |
virtual | ~Ability () |
copy constructor More... | |
const std::string & | getName () const |
Returns the ability name. More... | |
void | setPluginName (const char *pName) |
Sets the plugin name. More... | |
const std::string & | getPluginName (void) const |
Returns the plugin name. More... | |
const std::string & | getID (void) const |
Returns ability the identification string. More... | |
void | setID (const char *pID) |
(Internal usage, most people should not need to use it.) Sets the ability ID. More... | |
void | setOwner (BaseClass *owner) |
(Internal usage, most people should not need to use it.) Sets ability owner. *l This method is called automatically in World::createAbility(), so one would (almost?) never want to use it directly. More... | |
BaseClass * | getOwner (void) |
Returns the ability owner. More... | |
virtual ParameterVector * | getParameterVector (void) |
Return vector of the parameter description. More... | |
bool | isUpdated (void) |
Set update flag. More... | |
virtual const std::string & | getSenderString (void) |
Returns the identification string of sender. More... | |
Public Member Functions inherited from vrecko::BaseClass | |
BaseClass (const char *startingSenderString) | |
The main constructor. More... | |
BaseClass (BaseClass &bc) | |
Copy constructor. Probably not really used. More... | |
virtual | ~BaseClass () |
Destructor. More... | |
virtual bool | initialize (XERCES_CPP_NAMESPACE_QUALIFIER DOMNode *parameters=NULL) |
Core initialization. More... | |
virtual bool | initializeFromString (const char *xmlString) |
Helper method that allows to initialize ability from a XML-formatted string. More... | |
virtual XERCES_CPP_NAMESPACE_QUALIFIER DOMNode * | saveXMLParameters (XERCES_CPP_NAMESPACE_QUALIFIER DOMDocument *) |
Save current setting into a XML node. More... | |
bool | inputPresent (const std::string &name) |
Returns true if input pin (not request inputpin ) with given name is present. More... | |
bool | outputPresent (const std::string &name) |
Returns true if output pin (not request output pin) with given name is present. More... | |
void | addInputPin (InputPinBase *pin) |
Adds an input pin. More... | |
void | removeInputPin (InputPinBase *pin) |
Removes an input pin. More... | |
void | addOutputPin (OutputPinBase *pin) |
Adds an output pin. More... | |
void | removeOutputPin (OutputPinBase *pin) |
Removes and output pin. More... | |
void | addRequestInputPin (RequestInputPinBase *pin) |
Adds a request input pin. More... | |
void | removeRequestInputPin (RequestInputPinBase *pin) |
Removes a request input pin. More... | |
void | addRequestOutputPin (RequestOutputPinBase *pin) |
Adds a request output pin. More... | |
void | removeRequestOutputPin (RequestOutputPinBase *pin) |
Removes a request output pin. More... | |
bool | addNotification (BaseClass *receiver, unsigned long notificationTypes) |
Registers an observer that will be notified if a specific change occurs. More... | |
bool | removeNotification (BaseClass *receiver, unsigned long notificationTypes=NOTIFICATION_ALL) |
Unregisters a previously registered observer. More... | |
virtual void | processEvent (const std::string &input_name, VreckoMessage *pMessage) |
Internal method for processing the events. More... | |
virtual VreckoMessage * | processRequest (const std::string &request_input_name, VreckoMessage *pMessage) |
Internal method for processing the requests. More... | |
void | reportError (const std::string &error) |
Print error message. More... | |
void | setPriority (long int pr) |
Sets the priority. (Possible problems - read the full description for more info) More... | |
long int | getPriority (void) const |
Returns current object priority. More... | |
void | setAttribute (const std::string &attr_name, int attr_value) |
Sets an attribute value. More... | |
int | getAttribute (const std::string &attr_name) |
Returns attribute value. More... | |
int | getAttribute (const char *attr_name) |
Returns attribute value. More... | |
void | deleteAttribute (const std::string &attr_name) |
Delete an attribute. More... | |
void | setSceneFile (const std::string &sceneFileName) |
Set the name of the file this component was in (and possibly will be saved to). More... | |
const std::string & | getSceneFile () const |
Get the name of the file this component was in. More... | |
virtual void | postInitialize (void) |
OBSOLETE METHOD, kept for backwards compatibility. More... | |
virtual bool | loadXMLParameters (const char *xmlString) |
OBSOLETE METHOD, kept for backwards compatibility. More... | |
InputPinBase * | getInputPin (const char *strName) |
Returns pointer to an input pin with specified name. More... | |
OutputPinBase * | getOutputPin (const char *strName) |
Returns pointer to an output pin with specified name. More... | |
RequestInputPinBase * | getRequestInputPin (const char *strName) |
Returns pointer to an request input pin with specified name. More... | |
RequestOutputPinBase * | getRequestOutputPin (const char *strName) |
Returns pointer to an input pin with specified name. More... | |
Static Public Member Functions | |
static Animator * | getAnimatorOnObject (vrecko::EnvironmentObject *object) |
static Animator * | addAnimatorToObject (vrecko::EnvironmentObject *object, bool bReuseOldIfPossible=true) |
Protected Member Functions | |
float | convertActTimeToActPos () |
float | convertActPosToNormPos (float fActPos, int *outPoint1, int *outPoint2) |
bool | updateActTime () |
bool | updateAnimation (float fActPos) |
bool | calcAnimMatrix (float fNormPos, int iPoint1, int iPoint2, osg::Matrix &outMatrix) |
DECLARE_INPUT (Trigger, MessageVoid) | |
DECLARE_INPUT (AnimateToPoint, MessageInt) | |
DECLARE_OUTPUT (AnimationEnded, MessageBool) | |
Protected Member Functions inherited from vrecko::Ability | |
Ability (const char *theAbilityName) | |
Protected Member Functions inherited from vrecko::BaseClass | |
bool | sendNotifications (unsigned long notificationType, void *notificationData) |
virtual int | processNotification (BaseClass *sender, unsigned long notificationType, void *notificationData) |
Process an incoming notification. More... | |
IOPinBase * | findPinInList (const char *strName, PinList *pinList) |
Internal method to find a given pin in a given list. More... | |
Protected Attributes | |
EnvironmentObject * | owner |
unsigned int | enabledAnimations |
LoopType | loopType |
InterpolationType | interpolationType |
DynamicArray< AnimationPoint > | points |
osg::ref_ptr< osg::StateSet > | stateSet |
float | timePerLoop |
bool | bAnimating |
float | fActTime |
int | iActDir |
osg::Timer_t | lastTimerTick |
Protected Attributes inherited from vrecko::Ability | |
BaseClass * | pOwner |
Pointer to the owner of this ability. (Almost?) always an EnvironmentObject class. More... | |
std::vector< std::string > | parameterString |
bool | updated |
Update flag. It is used for save. More... | |
Protected Attributes inherited from vrecko::BaseClass | |
AttributeMap | attribute |
MTReadWriteLock | attributeLock |
std::string | senderString |
MTLock | notificationsLock |
std::vector < NOTIFICATION_DESCRIPTION > | notifications |
long int | priority |
const std::string * | sceneFile |
PinList | inputPinsList |
PinList | outputPinsList |
PinList | requestInputPinsList |
PinList | requestOutputPinsList |
Additional Inherited Members | |
Protected Types inherited from vrecko::BaseClass | |
typedef std::map< std::string, int > | AttributeMap |
Attributes. More... | |
typedef std::vector < osg::ref_ptr< IOPinBase > > | PinList |
ANIMATOR_IMP_EXP APObjectUtils::Animator::Animator | ( | ) |
|
virtual |
|
static |
bool APObjectUtils::Animator::animateToPoint | ( | int | pointIndex | ) |
|
protected |
|
virtual |
Reimplemented from vrecko::Ability.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
ANIMATOR_IMP_EXP float APObjectUtils::Animator::getAlpha | ( | int | pointIndex | ) |
|
inline |
|
static |
bool APObjectUtils::Animator::getAnimMatrix | ( | float | fActPos, |
osg::Matrix & | outMatrix | ||
) |
|
inline |
|
inline |
|
inline |
ANIMATOR_IMP_EXP osg::Node::NodeMask APObjectUtils::Animator::getNodeMask | ( | int | pointIndex | ) |
|
inline |
ANIMATOR_IMP_EXP osg::Vec3 & APObjectUtils::Animator::getScale | ( | int | pointIndex | ) |
|
inline |
ANIMATOR_IMP_EXP osg::Vec3 & APObjectUtils::Animator::getTranslation | ( | int | pointIndex | ) |
|
inline |
|
virtual |
OBSOLETE METHOD, kept for backwards compatibility.
The preInitialize(), loadXMLParameters() and postInitialize() methods were replaced in 2011 by a single method initialize().
* | (XERCES_CPP_NAMESPACE_QUALIFIER DOMNode) |
Reimplemented from vrecko::BaseClass.
|
virtual |
OBSOLETE METHOD, kept for backwards compatibility.
The preInitialize(), loadXMLParameters() and postInitialize() methods were replaced in 2011 by a single method initialize().
Reimplemented from vrecko::BaseClass.
bool APObjectUtils::Animator::removeAnimation | ( | ) |
bool APObjectUtils::Animator::resetToPos | ( | float | fPos | ) |
ANIMATOR_IMP_EXP bool APObjectUtils::Animator::setAlpha | ( | int | pointIndex, |
float | alpha | ||
) |
ANIMATOR_IMP_EXP bool APObjectUtils::Animator::setAnimationPointsNumber | ( | unsigned int | number | ) |
ANIMATOR_IMP_EXP bool APObjectUtils::Animator::setEnabledAnimations | ( | unsigned long | dwAnimations | ) |
|
inline |
|
inline |
ANIMATOR_IMP_EXP bool APObjectUtils::Animator::setNodeMask | ( | int | pointIndex, |
osg::Node::NodeMask | nodeMask | ||
) |
ANIMATOR_IMP_EXP bool APObjectUtils::Animator::setRotation | ( | int | pointIndex, |
const osg::Quat & | rot | ||
) |
ANIMATOR_IMP_EXP bool APObjectUtils::Animator::setScale | ( | int | pointIndex, |
const osg::Vec3 & | scale | ||
) |
|
inline |
bool APObjectUtils::Animator::setTransformationFromMatrix | ( | int | startPointIndex, |
int | endPointIndex, | ||
const osg::Matrix & | matrix | ||
) |
ANIMATOR_IMP_EXP bool APObjectUtils::Animator::setTranslation | ( | int | pointIndex, |
const osg::Vec3 & | trans | ||
) |
bool APObjectUtils::Animator::startAnimation | ( | ) |
bool APObjectUtils::Animator::stopAnimation | ( | ) |
|
virtual |
This method is called periodically in case this instance is registered in Scheduler.
The method is called periodically at specified frequency or every frame. Use the Scheduler::addEntity() method to register your class and set the frequency.
Reimplemented from vrecko::BaseClass.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |