VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Member Functions | Protected Attributes
makVrv::DtOsgParticleSystemModel Class Reference

A model of a particle system.

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

Public Member Functions

 DtOsgParticleSystemModel (DtDe &de, DtUniqueID id)
 
virtual ~DtOsgParticleSystemModel ()
 
virtual void setModelDefinition (const std::string &str)
 
virtual const std::string & modelDefinition ()
 
virtual const std::string & className () const
 
virtual void setIntensity (float intensity)
 
virtual void setScale (float scale)
 
virtual void setDuration (double seconds)
 
virtual void setWindDirection (const DtVector &direction)
 
virtual void setMaxParticlesToEmit (int max)
 
virtual void stop ()
 
virtual void start ()
 
virtual void pause ()
 
virtual void resume ()
 
virtual void setVisible (bool isVisible)
 
virtual void setIsSupportModel (bool isSupport)
 
virtual void backgroundLoad ()
 
virtual void foregroundLoad ()
 
Set spatial data
virtual void setPosition (int vtx, const DtVector &position)
 
virtual void setOrientation (int vtx, const DtTaitBryan &orientation)
 
virtual void setOffset (const DtVector &offset)
 
virtual void setArtPart (int artPart)
 
- Public Member Functions inherited from makVrv::DtParticleSystemModel
 DtParticleSystemModel (DtDe &de, DtUniqueID id)
 
virtual ~DtParticleSystemModel ()
 
virtual bool supportsMultithreadedLoad ()
 
- Public Member Functions inherited from makVrv::DtModel
 DtModel (DtDe &de, DtUniqueID id)
 
virtual ~DtModel ()
 
DtModelInstancecreateModelInstance (const std::string &modelDefName, bool realize=true)
 
virtual const std::string & modelDefinitionName ()
 
virtual void saveModelToFile (const std::string &filename)
 
virtual DtUniqueID uniqueId () const
 
unsigned int transformSize () const
 
virtual const DtVectorposition (int vtx=0) const
 
virtual void removePosition (int vtx)
 
virtual void setPositionOffset (const DtVector &positionOffset)
 
virtual const DtVectorpositionOffset () const
 
virtual void setPositionAndOrientation (int vtx, const DtVector &positionOffset, const DtTaitBryan &orientation)
 
virtual const DtTaitBryan & orientation (int vtx=0) const
 
virtual void setOrientationOffset (const DtTaitBryan &orientationOffset)
 
virtual const DtTaitBryan & orientationOffset () const
 
virtual void enableColorBlending (bool b)
 
virtual void setBlendColor (float r, float g, float b, float a)
 
virtual void getBlendColor (float &r, float &g, float &b, float &a)
 
virtual bool colorBlendingEnabled () const
 
virtual void setColor (float r, float g, float b, float a)
 
virtual void enableLighting (bool l)
 
virtual DtModelSetId modelSet () const
 
const DtVectorboundingBoxExtents () const
 
void getBoundingBoxExtents (double &x, double &y, double &z) const
 
const DtVectorboundingBoxCenter () const
 
virtual void getBoundingBoxCenter (double &x, double &y, double &z) const
 
virtual void getBoundingBoxComponents (DtVector &minimum, DtVector &maximum)
 
void setContributesToBound (bool trueOrFalse)
 
bool contributesToBound () const
 
DtDede ()
 
virtual void setModelInstance (DtModelInstance *modelInstance)
 
virtual void promoteBackgroundModelInstance (const DtModelDefinition &defintion)
 
virtual bool visible () const
 
DtUniqueID sceneObjectId () const
 
virtual void addedToSceneObjectAsProp (const DtUniqueID &sceneObj)
 
virtual void addedToSceneObject (const DtUniqueID &sceneObj, DtModelSetId modelSet, int visualizerType)
 
virtual void setElementId (DtElementID id)
 
virtual void removedFromSceneObject ()
 
virtual void setSolid (bool isSolid)
 
virtual bool isProp ()
 
virtual void updateMinLastFrameDistance (float distance)
 
virtual void resetLastFrameDistance ()
 
virtual float minLastFrameDistance () const
 
virtual DtModelInstancemodelInstance ()
 
virtual const DtModelInstancemodelInstance () const
 
int visualizerType () const
 
virtual bool isActivelyBackgroundLoading ()
 
virtual DtLoaderHandlegetLoadQueueHandle ()
 

Protected Member Functions

virtual void addToScene (const DtUniqueID &id, DtModelSetId modelSet, int visualizerType)
 
virtual void addToSceneAsProp (const DtUniqueID &sceneObjectId)
 
virtual void removeFromScene ()
 
virtual void slot_coordinateSystemChanged ()
 
virtual void slot_handleWindDirectionChanged (float dir)
 
virtual void slot_handleWindSpeedChanged (float speed)
 
virtual void updateWind ()
 
- Protected Member Functions inherited from makVrv::DtModel
virtual void initializeModelInstance ()
 
void slot_modelInstanceChanged (DtModelInstance *instance)
 
virtual void waitAndClearLoadHandle ()
 
virtual void removedFromLoadQueue ()
 
virtual void setDoneBackgroundLoading ()
 
virtual void setActivelyBackgroundLoading ()
 

Protected Attributes

DtOsgSceneConnectormySceneConnector
 
double myIntensity
 
bool myIntensitySet
 
double myScale
 
bool myScaleSet
 
double myDuration
 
bool myDurationSet
 
bool myOrientUp
 
bool myPositionSet
 
bool myOrientationSet
 
DtVector myPosition
 
DtTaitBryan myOrientation
 
float myWindSpeed
 
float myWindDirection
 
int myMaxParticlesToEmit
 
DtVector myUp
 
DtVector myOffset
 
int myArtPart
 
bool myUpSet
 
DtSignalConnectionManager myConnections
 
DtCoordinateSystemmyCoordinateSystem = nullptr
 
- Protected Attributes inherited from makVrv::DtModel
DtLoaderHandlemyInLoadQueueHandle
 
DtDemyDe
 
const DtUniqueID myUniqueId
 
DtUniqueID myElementId
 
DtUniqueID myParentSceneObjectID
 
bool myColorBlendingEnabled
 
DtModelInstancemyBackgroundModelInstance
 
float myMinLastFrameDistance
 
TransformList myTransforms
 
DtModelInstancemyModelInstance
 
DtModelSetId myModelSet
 
int myVisualizerType
 
bool myContributesToBound
 
bool myIsPropFlag
 
float myBlendColor [4]
 
bool myVisibleFlag
 
DtVector myPositionOffset
 
DtTaitBryan myOrientationOffset
 
std::string myModelDefinitionName
 
bool myRequireModelInstance = true
 

Additional Inherited Members

- Public Attributes inherited from makVrv::DtModel
boost::signalslib::signal
< void(DtModel *)> 
signal_modelToBeDestroyed
 
boost::signalslib::signal
< void(DtModel *)> 
signal_modelChanged
 
boost::signalslib::signal
< bool(DtModel *, bool),
SlotReturnOR
signal_visibilityChangeRequested
 
boost::signalslib::signal
< void(DtModelInstance
*, DtModel *)> 
signal_modelInstanceCreated
 
boost::signalslib::signal
< void(DtModelInstance
*, DtModel *)> 
signal_modelInstanceToBeDestroyed
 
- Protected Types inherited from makVrv::DtModel
typedef std::vector
< ObjectTransform
TransformList
 
- Static Protected Attributes inherited from makVrv::DtModel
static bool theInittedState
 

Constructor & Destructor Documentation

makVrv::DtOsgParticleSystemModel::DtOsgParticleSystemModel ( DtDe de,
DtUniqueID  id 
)

CTOR.

virtual makVrv::DtOsgParticleSystemModel::~DtOsgParticleSystemModel ( )
virtual

DTOR.

Member Function Documentation

virtual void makVrv::DtOsgParticleSystemModel::setModelDefinition ( const std::string &  str)
virtual

Override the default model definition function.

Implements makVrv::DtParticleSystemModel.

virtual const std::string& makVrv::DtOsgParticleSystemModel::modelDefinition ( )
inlinevirtual
virtual const std::string& makVrv::DtOsgParticleSystemModel::className ( ) const
virtual

Get the class name of the model instance owner. This is used to control how model instances are created.

Implements makVrv::DtParticleSystemModel.

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

Set the intensity.

Implements makVrv::DtParticleSystemModel.

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

Set the intensity.

Implements makVrv::DtParticleSystemModel.

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

Set the duration of the effect.

Implements makVrv::DtParticleSystemModel.

virtual void makVrv::DtOsgParticleSystemModel::setPosition ( int  vtx,
const DtVector position 
)
virtual

Set the position of a control vertex in the model.

Reimplemented from makVrv::DtModel.

virtual void makVrv::DtOsgParticleSystemModel::setOrientation ( int  vtx,
const DtTaitBryan &  orientation 
)
virtual

Set the orientation of a vertex in the model.

Reimplemented from makVrv::DtModel.

virtual void makVrv::DtOsgParticleSystemModel::setOffset ( const DtVector offset)
virtual

offset for particle system

Implements makVrv::DtParticleSystemModel.

virtual void makVrv::DtOsgParticleSystemModel::setArtPart ( int  artPart)
virtual

sets the articulated part number to attach to.

Implements makVrv::DtParticleSystemModel.

virtual void makVrv::DtOsgParticleSystemModel::setWindDirection ( const DtVector direction)
virtual

Set the wind direction.

Implements makVrv::DtParticleSystemModel.

virtual void makVrv::DtOsgParticleSystemModel::setMaxParticlesToEmit ( int  max)
virtual

Set the maximum number of particles to emit.

Implements makVrv::DtParticleSystemModel.

virtual void makVrv::DtOsgParticleSystemModel::stop ( )
virtual

Tell the model to stop emitting particles.

Implements makVrv::DtParticleSystemModel.

virtual void makVrv::DtOsgParticleSystemModel::start ( )
virtual

Tell the model to start emitting particles.

Implements makVrv::DtParticleSystemModel.

virtual void makVrv::DtOsgParticleSystemModel::pause ( )
virtual

Freeze the particle emitters.

Implements makVrv::DtParticleSystemModel.

virtual void makVrv::DtOsgParticleSystemModel::resume ( )
virtual

Resume the animation.

Implements makVrv::DtParticleSystemModel.

virtual void makVrv::DtOsgParticleSystemModel::setVisible ( bool  isVisible)
virtual

Override to call setVisible on the scene connector.

Reimplemented from makVrv::DtModel.

virtual void makVrv::DtOsgParticleSystemModel::setIsSupportModel ( bool  isSupport)
virtual

Set whether the model is part of the support group (whether or not other scene objects can ground clamp to this model)

Implements makVrv::DtModel.

virtual void makVrv::DtOsgParticleSystemModel::backgroundLoad ( )
virtual

multithreaded loading functions

Reimplemented from makVrv::DtModel.

virtual void makVrv::DtOsgParticleSystemModel::foregroundLoad ( )
virtual

the chunk of loading that must happen happen in the foreground, adding to scene graph etc.

Reimplemented from makVrv::DtModel.

virtual void makVrv::DtOsgParticleSystemModel::addToScene ( const DtUniqueID sceneObjectId,
DtModelSetId  modelSet,
int  visualizerType 
)
protectedvirtual

Virtual Functions to be implemented, add this model to the scene.

Implements makVrv::DtModel.

virtual void makVrv::DtOsgParticleSystemModel::addToSceneAsProp ( const DtUniqueID sceneObjectId)
protectedvirtual

Add this model to the scene as a prop. All models are not required to re-implement this.

Reimplemented from makVrv::DtModel.

virtual void makVrv::DtOsgParticleSystemModel::removeFromScene ( )
protectedvirtual

Virtual Functions to be implemented, remove this model from the scene.

Implements makVrv::DtModel.

virtual void makVrv::DtOsgParticleSystemModel::slot_coordinateSystemChanged ( )
protectedvirtual

slot for when the coordinate system changes

virtual void makVrv::DtOsgParticleSystemModel::slot_handleWindDirectionChanged ( float  dir)
protectedvirtual
virtual void makVrv::DtOsgParticleSystemModel::slot_handleWindSpeedChanged ( float  speed)
protectedvirtual
virtual void makVrv::DtOsgParticleSystemModel::updateWind ( )
protectedvirtual

Member Data Documentation

DtOsgSceneConnector* makVrv::DtOsgParticleSystemModel::mySceneConnector
protected
double makVrv::DtOsgParticleSystemModel::myIntensity
protected
bool makVrv::DtOsgParticleSystemModel::myIntensitySet
protected
double makVrv::DtOsgParticleSystemModel::myScale
protected
bool makVrv::DtOsgParticleSystemModel::myScaleSet
protected
double makVrv::DtOsgParticleSystemModel::myDuration
protected
bool makVrv::DtOsgParticleSystemModel::myDurationSet
protected
bool makVrv::DtOsgParticleSystemModel::myOrientUp
protected
bool makVrv::DtOsgParticleSystemModel::myPositionSet
protected
bool makVrv::DtOsgParticleSystemModel::myOrientationSet
protected
DtVector makVrv::DtOsgParticleSystemModel::myPosition
protected
DtTaitBryan makVrv::DtOsgParticleSystemModel::myOrientation
protected
float makVrv::DtOsgParticleSystemModel::myWindSpeed
protected
float makVrv::DtOsgParticleSystemModel::myWindDirection
protected
int makVrv::DtOsgParticleSystemModel::myMaxParticlesToEmit
protected
DtVector makVrv::DtOsgParticleSystemModel::myUp
protected
DtVector makVrv::DtOsgParticleSystemModel::myOffset
protected
int makVrv::DtOsgParticleSystemModel::myArtPart
protected
bool makVrv::DtOsgParticleSystemModel::myUpSet
protected
DtSignalConnectionManager makVrv::DtOsgParticleSystemModel::myConnections
protected
DtCoordinateSystem* makVrv::DtOsgParticleSystemModel::myCoordinateSystem = nullptr
protected

local clone of the system wide coordinate system. for thread safety.


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

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)