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 | Private Member Functions | Private Attributes
makVrv::DtTranslateOperator Class Reference

A particle operator to simply translate the particles each frame.

This class operates on each particle in a particle system by translating each particle in a given direction each frame. The translation amount, adjusted for delta-time since last frame, is added to the positions of each particle. The particles' given velocity is not effected. This operator can be used to simulate a simple wind effect on particle clouds such as smoke. No real physics is applied to the particles.

This particle operator is modeled after the osgParticle::AccelOperator found in the Open Scene Graph library.

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

Public Member Functions

 DtTranslateOperator (const osg::Vec3 &vec=osg::Vec3(0.0f, 0.0f, 0.0f))
 
 DtTranslateOperator (const DtTranslateOperator &copy, const osg::CopyOp &copyop=osg::CopyOp::SHALLOW_COPY)
 
 META_Object (makVrv, DtTranslateOperator)
 
osg::Vec3 & vector ()
 
const osg::Vec3 & vector () const
 
void setVector (const osg::Vec3 &vec)
 
void operate (osgParticle::Particle *ptcl, double dt)
 
void beginOperate (osgParticle::Program *prg)
 

Protected Member Functions

virtual ~DtTranslateOperator ()
 

Private Member Functions

DtTranslateOperatoroperator= (const DtTranslateOperator &)
 

Private Attributes

osg::Vec3 myVector
 
osg::Vec3 myXfVector
 

Constructor & Destructor Documentation

makVrv::DtTranslateOperator::DtTranslateOperator ( const osg::Vec3 &  vec = osg::Vec3(0.0f, 0.0f, 0.0f))

Default constructor.

Parameters
[in]vecis the direction and magnitude for translation, in db-units per second.
makVrv::DtTranslateOperator::DtTranslateOperator ( const DtTranslateOperator copy,
const osg::CopyOp &  copyop = osg::CopyOp::SHALLOW_COPY 
)

Copy constructor.

Parameters
[in]copyis the object to copy from.
[in]copyopis a flag describing the type of copy.
virtual makVrv::DtTranslateOperator::~DtTranslateOperator ( )
protectedvirtual

Virtual destructor.

Member Function Documentation

makVrv::DtTranslateOperator::META_Object ( makVrv  ,
DtTranslateOperator   
)
osg::Vec3& makVrv::DtTranslateOperator::vector ( )
inline

Get the current translation direction and magnitude.

Returns
A reference to the translation vector.
const osg::Vec3& makVrv::DtTranslateOperator::vector ( ) const
inline
void makVrv::DtTranslateOperator::setVector ( const osg::Vec3 &  vec)
inline

Set the current translation direction and magnitude.

Parameters
[in]vecis the direction and magnitude for translation, in db-units per second.
void makVrv::DtTranslateOperator::operate ( osgParticle::Particle *  ptcl,
double  dt 
)
inline

Apply the translation to a particle.

Parameters
[in]ptclis the particle being operated on.
[in]dtis the delta time since last operation.
Note
Automatically called. Do not directly call this method.
void makVrv::DtTranslateOperator::beginOperate ( osgParticle::Program *  prg)
inline

Perform some initializations.

Parameters
[in]prgis the program which is calling this operator.
Note
Automatically called. Do not directly call this method.
DtTranslateOperator& makVrv::DtTranslateOperator::operator= ( const DtTranslateOperator )
private

Private copy operator to prevent assignment.

Member Data Documentation

osg::Vec3 makVrv::DtTranslateOperator::myVector
private
osg::Vec3 makVrv::DtTranslateOperator::myXfVector
private

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

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)