VR-Forces Development_Version Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Member Functions | Protected Attributes | Friends
makVrv::DtEffectModelInstance Class Reference

An effect model instance creates a particle effect from a model definition. More...

Inheritance diagram for makVrv::DtEffectModelInstance:
Inheritance graph
[legend]

Public Member Functions

virtual ~DtEffectModelInstance ()
 DTOR.
virtual void setIntensity (float intensity)
 Set the effect intensity.
virtual void setScale (float scale)
 Set the effect scale.
virtual void setDuration (double seconds)
 Set the effect duration.
virtual void setWind (const DtVector &windVector)
 Set the effect wind.
virtual void setPosition (const DtVector &position)
 Set the position of the effect, either in world coordinates or in local coordinates.
virtual bool realize (DtModelDefinition &definition)
 Attempt to realize a definition.
virtual void addToConnector (DtOsgSceneConnector *connector)
 Brief Tell the model instance to add itself to the provided node.
virtual bool removeFromConnector (DtOsgSceneConnector *connector)
 Brief Tell the model instance to remove itself from the provided node.
virtual void stop ()
 Tell the model to stop emitting particles.
virtual void start ()
 Tell the model to start emitting particles.
virtual void pause ()
 Freeze the particle emitters.
virtual void resume ()
virtual void setLoopMode (bool loopOn)
virtual void setReverseAnimation (bool reverse)
virtual void setVisible (bool isVisible)
 Call setVisible on the scene connector if one exists.
- Public Member Functions inherited from makVrv::DtOsgModelInstance
virtual ~DtOsgModelInstance ()
 DTOR.
virtual bool saveModelToFile (const std::string &filename) const
 Attempt to save the model to a file.
virtual void enableColorBlending (bool b)
 Enable / disable coloring on all models in the scene object Note about enableColorBlending: If this particular model has instancing enabled then this flag is set to false and color blending is handled by the instance manager.
virtual void setBlendColor (float r, float g, float b, float a)
 set the model's color
virtual void enableTexture (bool onOff)
virtual osg::Node * rootNode ()
 Get the model instance's root node.
virtual const osg::Node * rootNode () const
 Get the model instance's root node.
virtual osg::Node * sensorNode ()
 Get the model instance's sensor node, .
virtual const osg::Node * sensorNode () const
 Get the model instance's sensor node, .
virtual void addDynamicSensorRegion (const std::string &region)
 Add an active region state.
virtual void setDynamicSensorRegion (const std::string &region, bool state)
 Set the state of an active region.
virtual bool dynamicSensorRegion (const std::string &region)
 Get the current state of the specified sensor region.
SensorRegionStateMap const dynamicSensorRegionMap () const
 Get the map containing all regions and their current states.
- Public Member Functions inherited from makVrv::DtModelInstance
 DtModelInstance (DtDe &de)
 CTOR.
virtual ~DtModelInstance ()
 DTOR.
const std::string & realizedDefinitionName () const
 Get the name of the definition that this model instance was realized with.
const DtVectorboundingBoxExtents () const
 Get the bounding box extents of the model instance.
void getBoundingBoxExtents (double &x, double &y, double &z) const
 Get the bounding box extents of the model instance.
const DtVectorboundingBoxCenter () const
 Get the bounding box center of the model instance.
void getBoundingBoxCenter (double &x, double &y, double &z) const
 Get the bounding box center of the model instance.
void getBoundingBoxComponents (DtVector &minimum, DtVector &maximum)
virtual void setContributesToBound (bool trueOrFalse)
 Set whether this model instance contributes to an object's overall bounding volume.
bool contributesToBound () const
 Get whether this model instance contributes to an object's overall bounding volume.

Protected Member Functions

DtOsgRibboncreateRibbonEffect (const osg::Vec3 &pointA, const osg::Vec3 &pointB)
 Create the ribbon effect.
 DtEffectModelInstance (DtDe &de)
osg::BoundingBox calculateParentExtents (osg::Node *parent)
osg::Node * findFromCache (DtModelDefinition &definition)
 Try to find an effect model instance in cache to copy.
osg::ref_ptr< osg::Node > loadNode (const std::string &filenameParam)
 Try to load a filename as a node.
- Protected Member Functions inherited from makVrv::DtOsgModelInstance
virtual void updateColorBlending ()
 calls update color blending with the model root.
virtual void updateColorBlending (osg::Node *node)
virtual void enableTexture (osg::Node *root, bool onOff)
virtual void updateBoundingBoxViaContents ()
 DtOsgModelInstance (DtDe &de)
 CTOR.
virtual void setRootNode (osg::Node *node)
 Set the model instance's root node.

Protected Attributes

osg::ref_ptr< DtParticleEffectmyEffect
bool myParentIsDynamic
bool myScaleToParentY
std::string myDefinition
osg::ref_ptr< DtOsgRibbonmyRibbon
DtOsgSceneConnectormySceneConnector
- Protected Attributes inherited from makVrv::DtOsgModelInstance
osg::ref_ptr< osg::Node > myModelRoot
osg::ref_ptr< osg::StateSet > myCachedState
SensorRegionStateMap mySensorRegionMap
- Protected Attributes inherited from makVrv::DtModelInstance
DtDemyDe
std::string myRealizedModelDefinitionName
DtVector myBoundingBoxCenter
DtVector myBoundingBoxExtents
DtVector myBoundingBoxMinimum
DtVector myBoundingBoxMaximum
bool myContributesToBound
bool myColorBlendingEnabled
float myBlendRed
float myBlendBlue
float myBlendGreen
float myBlendAlpha

Friends

class DtEffectModelInstanceCreator

Additional Inherited Members

- Public Types inherited from makVrv::DtOsgModelInstance
typedef boost::unordered_map
< std::string, bool
SensorRegionStateMap
 Dynamic Sensor Region methods.
- Static Public Member Functions inherited from makVrv::DtOsgModelInstance
static osg::Vec4 readVec4 (const std::string &paramName, const DtModelDefinition &definition)
static osg::Vec3 readVec3 (const std::string &paramName, const DtModelDefinition &definition)
- Public Attributes inherited from makVrv::DtOsgModelInstance
boost::signal< void(const
std::string &) > 
signal_dynamicSensorRegionAdded
 Signal raised when a dynamic sensor region is added.
boost::signal< void(const
std::string &, bool) > 
signal_dynamicSensorRegionChanged
 Signal raised when a dynamic sensor region's state changes.
- Public Attributes inherited from makVrv::DtModelInstance
boost::signal< void(DtModelInstance *)> signal_modelInstanceChanged

Detailed Description

An effect model instance creates a particle effect from a model definition.

Constructor & Destructor Documentation

virtual makVrv::DtEffectModelInstance::~DtEffectModelInstance ( )
virtual

DTOR.

makVrv::DtEffectModelInstance::DtEffectModelInstance ( DtDe de)
protected

Member Function Documentation

virtual void makVrv::DtEffectModelInstance::setIntensity ( float  intensity)
virtual

Set the effect intensity.

virtual void makVrv::DtEffectModelInstance::setScale ( float  scale)
virtual

Set the effect scale.

virtual void makVrv::DtEffectModelInstance::setDuration ( double  seconds)
virtual

Set the effect duration.

virtual void makVrv::DtEffectModelInstance::setWind ( const DtVector windVector)
virtual

Set the effect wind.

virtual void makVrv::DtEffectModelInstance::setPosition ( const DtVector position)
virtual

Set the position of the effect, either in world coordinates or in local coordinates.

virtual bool makVrv::DtEffectModelInstance::realize ( DtModelDefinition definition)
virtual

Attempt to realize a definition.

If the model instance can't realize the definition it should return false.

Reimplemented from makVrv::DtModelInstance.

virtual void makVrv::DtEffectModelInstance::addToConnector ( DtOsgSceneConnector connector)
virtual

Brief Tell the model instance to add itself to the provided node.

Reimplemented from makVrv::DtOsgModelInstance.

virtual bool makVrv::DtEffectModelInstance::removeFromConnector ( DtOsgSceneConnector connector)
virtual

Brief Tell the model instance to remove itself from the provided node.

Reimplemented from makVrv::DtOsgModelInstance.

virtual void makVrv::DtEffectModelInstance::stop ( )
virtual

Tell the model to stop emitting particles.

virtual void makVrv::DtEffectModelInstance::start ( )
virtual

Tell the model to start emitting particles.

virtual void makVrv::DtEffectModelInstance::pause ( )
virtual

Freeze the particle emitters.

virtual void makVrv::DtEffectModelInstance::resume ( )
virtual
virtual void makVrv::DtEffectModelInstance::setLoopMode ( bool  loopOn)
virtual
virtual void makVrv::DtEffectModelInstance::setReverseAnimation ( bool  reverse)
virtual
virtual void makVrv::DtEffectModelInstance::setVisible ( bool  isVisible)
virtual

Call setVisible on the scene connector if one exists.

Implements makVrv::DtModelInstance.

DtOsgRibbon* makVrv::DtEffectModelInstance::createRibbonEffect ( const osg::Vec3 &  pointA,
const osg::Vec3 &  pointB 
)
protected

Create the ribbon effect.

osg::BoundingBox makVrv::DtEffectModelInstance::calculateParentExtents ( osg::Node *  parent)
protected
osg::Node* makVrv::DtEffectModelInstance::findFromCache ( DtModelDefinition definition)
protected

Try to find an effect model instance in cache to copy.

osg::ref_ptr<osg::Node> makVrv::DtEffectModelInstance::loadNode ( const std::string &  filenameParam)
protected

Try to load a filename as a node.

Friends And Related Function Documentation

friend class DtEffectModelInstanceCreator
friend

Member Data Documentation

osg::ref_ptr<DtParticleEffect> makVrv::DtEffectModelInstance::myEffect
protected
bool makVrv::DtEffectModelInstance::myParentIsDynamic
protected
bool makVrv::DtEffectModelInstance::myScaleToParentY
protected
std::string makVrv::DtEffectModelInstance::myDefinition
protected
osg::ref_ptr<DtOsgRibbon> makVrv::DtEffectModelInstance::myRibbon
protected
DtOsgSceneConnector* makVrv::DtEffectModelInstance::mySceneConnector
protected

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

Document ID: Generated on Mon Jul 4 01:00:18 EDT 2016 from SVN revision 166489
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)