# osgParticle::RadialShooter Class Reference

A shooter class that shoots particles radially. More...

Inheritance diagram for osgParticle::RadialShooter:

[legend]
List of all members.

## Public Member Functions

| RadialShooter ()
| RadialShooter (const RadialShooter &copy, const osg::CopyOp &copyop=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 &)

## Detailed Description

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.

## Constructor & Destructor Documentation

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]`

## Member Function Documentation

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 osg::Vec3 & | r1,
|  | const osg::Vec3 & | r2
| ) | `[inline]`

| Set the range of possible values for initial rotational speed of particles.

void osgParticle::RadialShooter::setInitialRotationalSpeedRange | ( | const rangev3 & | r | ) | `[inline]`

| Set the range of possible values for initial rotational speed of particles.

void osgParticle::RadialShooter::setInitialSpeedRange | ( | float | r1,
|  | float | r2
| ) | `[inline]`

| Set the range of possible values for initial speed of particles.

void osgParticle::RadialShooter::setInitialSpeedRange | ( | const rangef & | r | ) | `[inline]`

| Set the range of possible values for initial speed of particles.

void osgParticle::RadialShooter::setPhiRange | ( | float | r1,
|  | float | r2
| ) | `[inline]`

| Set the range of possible values for phi angle.

void osgParticle::RadialShooter::setPhiRange | ( | const rangef & | r | ) | `[inline]`

| Set the range of possible values for phi angle.

void osgParticle::RadialShooter::setThetaRange | ( | float | r1,
|  | float | r2
| ) | `[inline]`

| Set the range of possible values for theta angle.

void osgParticle::RadialShooter::setThetaRange | ( | const rangef & | r | ) | `[inline]`

| Set the range of possible values for theta angle.

void osgParticle::RadialShooter::shoot | ( | Particle * | P | ) | const`[inline, virtual]`

| Shoot a particle. Do not call this method manually. Implements osgParticle::Shooter.

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

- RadialShooter