float getRadius() const
Get the radius of wave peak.
ExplosionOperator & operator=(const ExplosionOperator &)
ExplosionOperator(const ExplosionOperator ©, const osg::CopyOp ©op=osg::CopyOp::SHALLOW_COPY)
void setEpsilon(float eps)
Set the acceleration epsilon.
float getSigma() const
Get broadness of the strength of the wave.
void setCenter(const osg::Vec3 &c)
Set the center of shock wave.
virtual ~ExplosionOperator()
void setSigma(float s)
Set broadness of the strength of the wave.
const osg::Vec3 & getPosition() const
Get the position vector.
void setRadius(float r)
Set the radius of wave peak.
ReferenceFrame getReferenceFrame() const
Get the reference frame.
float getEpsilon() const
Get the acceleration epsilon.
float getMagnitude() const
Get the acceleration scale.
void setMagnitude(float mag)
Set the acceleration scale.
void operate(Particle *P, double dt)
Apply the acceleration to a particle. Do not call this method manually.
META_Object(osgParticle, ExplosionOperator)
void addVelocity(const osg::Vec3 &dv)
Add a vector to the velocity vector.
const osg::Vec3 & getCenter() const
Get the center of shock wave.
osg::Vec3 transformLocalToWorld(const osg::Vec3 &P)
Transform a point from local to world coordinates (valid only during cull traversal).
void beginOperate(Program *prg)
Perform some initializations. Do not call this method manually.