15 #include <osgParticle/range>
38 const osg::CopyOp& copyop = osg::CopyOp::SHALLOW_COPY );
45 void setPosition(
int puffIndex,
const osg::Vec3d& pos );
50 void setDensity(
int puffIndex,
float dens );
55 void setOneSigma(
int puffIndex,
const osg::Vec3& sigmas );
64 void setIntensityRange(
float mn,
float mx );
71 void setParticleSizeRange(
float isz,
float fsz );
78 void setParticleColorRange(
const osg::Vec4& icl,
const osg::Vec4& fcl );
85 void setParticleAlphaMultiplier(
float alpha );
92 virtual void emitParticles(
double dt );
112 , position( 0.0, 0.f, 0.0 )
113 , density( 1.0f, 0.0f )
114 , sigmas( 1.0f, 1.0f, 1.0f )
118 : index( other.index )
119 , position( other.position )
120 , density( other.density )
121 , sigmas( other.sigmas )
126 std::swap( index, other.
index );
127 std::swap( position, other.
position );
128 std::swap( density, other.
density );
129 std::swap( sigmas, other.
sigmas );
141 typedef std::vector<PuffData>
Puffs;
148 PuffData& puffData(
int puffIndex );
Private data for each individual puff of particles.
Definition: DtTacticalSmokeEmitter.h:103
std::vector< PuffData > Puffs
A vector of puff-data objects.
Definition: DtTacticalSmokeEmitter.h:141
#define DT_DLL_VRVOSG
Definition: vrvOsg.h:23
osgParticle::rangef density
Definition: DtTacticalSmokeEmitter.h:107
osg::Vec3f sigmas
Definition: DtTacticalSmokeEmitter.h:108
An improved modular emitter.
Definition: DtImprovedModularEmitter.h:20
float myAlphaMultiplier
Definition: DtTacticalSmokeEmitter.h:153
An emitter class that manages and emits several particles.
Definition: DtTacticalSmokeEmitter.h:30
Puffs myPuffs
Definition: DtTacticalSmokeEmitter.h:151
osgParticle::rangef myParticlesPerSec
Definition: DtTacticalSmokeEmitter.h:152
PuffData & operator=(PuffData other)
Definition: DtTacticalSmokeEmitter.h:132
int index
Definition: DtTacticalSmokeEmitter.h:105
osg::Vec3d position
Definition: DtTacticalSmokeEmitter.h:106
void swap(PuffData &other)
Definition: DtTacticalSmokeEmitter.h:124
DtTacticalSmokeEmitter & operator=(const DtTacticalSmokeEmitter &)
Protected copy operator.
Definition: DtTacticalSmokeEmitter.h:98
virtual ~DtTacticalSmokeEmitter()
Protected virtual destructor.
Definition: DtTacticalSmokeEmitter.h:95
PuffData(int idx=0)
Definition: DtTacticalSmokeEmitter.h:110
PuffData(const PuffData &other)
Definition: DtTacticalSmokeEmitter.h:117
Contains DLL export macros.
Contains makVrv::DtImprovedModularEmitter class.