OpenSceneGraph
3.0.1
|
A shooter class that shoots particles radially. More...
Public Member Functions | |
RadialShooter () | |
RadialShooter (const RadialShooter ©, const osg::CopyOp ©op=osg::CopyOp::SHALLOW_COPY) | |
META_Object (osgParticle, RadialShooter) | |
const rangef & | getThetaRange () const |
Get the range of possible values for theta angle. | |
void | setThetaRange (const rangef &r) |
Set the range of possible values for theta angle. | |
void | setThetaRange (float r1, float r2) |
Set the range of possible values for theta angle. | |
const rangef & | getPhiRange () const |
Get the range of possible values for phi angle. | |
void | setPhiRange (const rangef &r) |
Set the range of possible values for phi angle. | |
void | setPhiRange (float r1, float r2) |
Set the range of possible values for phi angle. | |
const rangef & | getInitialSpeedRange () const |
Get the range of possible values for initial speed of particles. | |
void | setInitialSpeedRange (const rangef &r) |
Set the range of possible values for initial speed of particles. | |
void | setInitialSpeedRange (float r1, float r2) |
Set the range of possible values for initial speed of particles. | |
const rangev3 & | getInitialRotationalSpeedRange () const |
Get the range of possible values for initial rotational speed of particles. | |
void | setInitialRotationalSpeedRange (const rangev3 &r) |
Set the range of possible values for initial rotational speed of particles. | |
void | setInitialRotationalSpeedRange (const osg::Vec3 &r1, const osg::Vec3 &r2) |
Set the range of possible values for initial rotational speed of particles. | |
void | shoot (Particle *P) const |
Shoot a particle. Do not call this method manually. | |
Protected Member Functions | |
virtual | ~RadialShooter () |
RadialShooter & | operator= (const RadialShooter &) |
A shooter class that shoots particles radially.
This shooter computes the velocity vector of incoming particles by choosing a random direction and a random speed. Both direction and speed are chosen within specified ranges. The direction is defined by two angles: theta, which is the angle between the velocity vector and the Z axis, and phi, which is the angle between the X axis and the velocity vector projected onto the X-Y plane.
osgParticle::RadialShooter::RadialShooter | ( | ) | [inline] |
osgParticle::RadialShooter::RadialShooter | ( | const RadialShooter & | copy, |
const osg::CopyOp & | copyop = osg::CopyOp::SHALLOW_COPY |
||
) | [inline] |
virtual osgParticle::RadialShooter::~RadialShooter | ( | ) | [inline, protected, virtual] |
const rangev3 & osgParticle::RadialShooter::getInitialRotationalSpeedRange | ( | ) | const [inline] |
Get the range of possible values for initial rotational speed of particles.
const rangef & osgParticle::RadialShooter::getInitialSpeedRange | ( | ) | const [inline] |
Get the range of possible values for initial speed of particles.
const rangef & osgParticle::RadialShooter::getPhiRange | ( | ) | const [inline] |
Get the range of possible values for phi angle.
const rangef & osgParticle::RadialShooter::getThetaRange | ( | ) | const [inline] |
Get the range of possible values for theta angle.
osgParticle::RadialShooter::META_Object | ( | osgParticle | , |
RadialShooter | |||
) |
RadialShooter& osgParticle::RadialShooter::operator= | ( | const RadialShooter & | ) | [inline, protected] |
void osgParticle::RadialShooter::setInitialRotationalSpeedRange | ( | const rangev3 & | r | ) | [inline] |
Set the range of possible values for initial rotational speed of particles.
void osgParticle::RadialShooter::setInitialRotationalSpeedRange | ( | const osg::Vec3 & | r1, |
const osg::Vec3 & | r2 | ||
) | [inline] |
Set the range of possible values for initial rotational speed of particles.
References osgParticle::range::minimum, and osgParticle::range::maximum.
void osgParticle::RadialShooter::setInitialSpeedRange | ( | const rangef & | r | ) | [inline] |
Set the range of possible values for initial speed of particles.
void osgParticle::RadialShooter::setInitialSpeedRange | ( | float | r1, |
float | r2 | ||
) | [inline] |
Set the range of possible values for initial speed of particles.
References osgParticle::range::minimum, and osgParticle::range::maximum.
void osgParticle::RadialShooter::setPhiRange | ( | const rangef & | r | ) | [inline] |
Set the range of possible values for phi angle.
void osgParticle::RadialShooter::setPhiRange | ( | float | r1, |
float | r2 | ||
) | [inline] |
Set the range of possible values for phi angle.
References osgParticle::range::minimum, and osgParticle::range::maximum.
void osgParticle::RadialShooter::setThetaRange | ( | const rangef & | r | ) | [inline] |
Set the range of possible values for theta angle.
void osgParticle::RadialShooter::setThetaRange | ( | float | r1, |
float | r2 | ||
) | [inline] |
Set the range of possible values for theta angle.
References osgParticle::range::minimum, and osgParticle::range::maximum.
void osgParticle::RadialShooter::shoot | ( | Particle * | P | ) | const [inline, virtual] |
Shoot a particle. Do not call this method manually.
Implements osgParticle::Shooter.
References osgParticle::range::get_random(), osgParticle::Particle::setVelocity(), and osgParticle::Particle::setAngularVelocity().
![]() | Generated at Mon Oct 3 2011 12:39:48 for the OpenSceneGraph by doxygen 1.7.5. |