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

Customized OpenSceneGraph particle system operator Rewritten from default fluid friction operator to use correct physics-based approximations. More...

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

Public Member Functions

 DtOsgFluidFrictionOperator ()
 CTOR. More...
 
 DtOsgFluidFrictionOperator (const DtOsgFluidFrictionOperator &copy, const osg::CopyOp &copyop=osg::CopyOp::SHALLOW_COPY)
 Copy CTOR. More...
 
 META_Object (makVrv, DtOsgFluidFrictionOperator)
 
void setFluidDensity (float d)
 Set the density of the fluid. More...
 
float getFluidDensity () const
 Get the density of the fluid. More...
 
void setFluidViscosity (float v)
 Set the viscosity of the fluid. More...
 
float getFluidViscosity () const
 Get the viscosity of the fluid. More...
 
void setWind (const osg::Vec3 &wind)
 Set the wind vector. More...
 
const osg::Vec3 & getWind () const
 Get the wind vector. More...
 
void setUp (const osg::Vec3 &up)
 Set the up vector. More...
 
const osg::Vec3 & getUp () const
 Get the up vector. More...
 
void setOverrideRadius (float r)
 Set the overriden radius value (pass 0 if you want to use particle's radius). More...
 
float getOverrideRadius () const
 Get the overriden radius value. More...
 
void setFluidToAir ()
 Set the fluid parameters as for air (20°C temperature). More...
 
void setFluidToWater ()
 Set the fluid parameters as for pure water (20°C temperature). More...
 
void operate (osgParticle::Particle *P, double dt)
 Apply the friction forces to a particle. Do not call this method manually. More...
 
void beginOperate (osgParticle::Program *prg)
 Perform some initializations. Do not call this method manually. More...
 

Static Public Member Functions

static DtOsgFluidFrictionOperatorfromOsgFluidFrictionOperator (osgParticle::FluidFrictionOperator *osgOp)
 Generate a fluid friction operator from the osg version. More...
 

Protected Member Functions

virtual ~DtOsgFluidFrictionOperator ()
 
DtOsgFluidFrictionOperatoroperator= (const DtOsgFluidFrictionOperator &)
 

Private Attributes

float viscosityCoefficient
 
float densityCoefficient
 
float _density
 
float _viscosity
 
float _ovr_rad
 
osg::Vec3 _wind
 
osg::Vec3 _up
 
osgParticle::Program * _current_program
 

Detailed Description

Customized OpenSceneGraph particle system operator Rewritten from default fluid friction operator to use correct physics-based approximations.

Constructor & Destructor Documentation

makVrv::DtOsgFluidFrictionOperator::DtOsgFluidFrictionOperator ( )

CTOR.

makVrv::DtOsgFluidFrictionOperator::DtOsgFluidFrictionOperator ( const DtOsgFluidFrictionOperator copy,
const osg::CopyOp &  copyop = osg::CopyOp::SHALLOW_COPY 
)

Copy CTOR.

virtual makVrv::DtOsgFluidFrictionOperator::~DtOsgFluidFrictionOperator ( )
inlineprotectedvirtual

Member Function Documentation

static DtOsgFluidFrictionOperator* makVrv::DtOsgFluidFrictionOperator::fromOsgFluidFrictionOperator ( osgParticle::FluidFrictionOperator *  osgOp)
static

Generate a fluid friction operator from the osg version.

makVrv::DtOsgFluidFrictionOperator::META_Object ( makVrv  ,
DtOsgFluidFrictionOperator   
)
void makVrv::DtOsgFluidFrictionOperator::setFluidDensity ( float  d)

Set the density of the fluid.

float makVrv::DtOsgFluidFrictionOperator::getFluidDensity ( ) const

Get the density of the fluid.

void makVrv::DtOsgFluidFrictionOperator::setFluidViscosity ( float  v)

Set the viscosity of the fluid.

float makVrv::DtOsgFluidFrictionOperator::getFluidViscosity ( ) const

Get the viscosity of the fluid.

void makVrv::DtOsgFluidFrictionOperator::setWind ( const osg::Vec3 &  wind)
inline

Set the wind vector.

const osg::Vec3& makVrv::DtOsgFluidFrictionOperator::getWind ( ) const
inline

Get the wind vector.

void makVrv::DtOsgFluidFrictionOperator::setUp ( const osg::Vec3 &  up)
inline

Set the up vector.

const osg::Vec3& makVrv::DtOsgFluidFrictionOperator::getUp ( void  ) const
inline

Get the up vector.

void makVrv::DtOsgFluidFrictionOperator::setOverrideRadius ( float  r)

Set the overriden radius value (pass 0 if you want to use particle's radius).

float makVrv::DtOsgFluidFrictionOperator::getOverrideRadius ( ) const

Get the overriden radius value.

void makVrv::DtOsgFluidFrictionOperator::setFluidToAir ( )

Set the fluid parameters as for air (20°C temperature).

void makVrv::DtOsgFluidFrictionOperator::setFluidToWater ( )

Set the fluid parameters as for pure water (20°C temperature).

void makVrv::DtOsgFluidFrictionOperator::operate ( osgParticle::Particle *  P,
double  dt 
)

Apply the friction forces to a particle. Do not call this method manually.

void makVrv::DtOsgFluidFrictionOperator::beginOperate ( osgParticle::Program *  prg)

Perform some initializations. Do not call this method manually.

DtOsgFluidFrictionOperator& makVrv::DtOsgFluidFrictionOperator::operator= ( const DtOsgFluidFrictionOperator )
inlineprotected

Member Data Documentation

float makVrv::DtOsgFluidFrictionOperator::viscosityCoefficient
private
float makVrv::DtOsgFluidFrictionOperator::densityCoefficient
private
float makVrv::DtOsgFluidFrictionOperator::_density
private
float makVrv::DtOsgFluidFrictionOperator::_viscosity
private
float makVrv::DtOsgFluidFrictionOperator::_ovr_rad
private
osg::Vec3 makVrv::DtOsgFluidFrictionOperator::_wind
private
osg::Vec3 makVrv::DtOsgFluidFrictionOperator::_up
private
osgParticle::Program* makVrv::DtOsgFluidFrictionOperator::_current_program
private

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

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)