SPIN Framework
|
A controller for a particle system. More...
#include <ParticleSystem.h>
Public Member Functions | |
ParticleSystem (SceneManager *sceneManager, const char *initID) | |
virtual void | callbackUpdate (osg::NodeVisitor *nv) |
void | setCenter (float x, float y, float z) |
void | setLifeTime (float seconds) |
float | getLifeTime () |
void | setRadius (float radius) |
float | getRadius () |
void | setMass (float mass) |
float | getMass () |
void | setEmissive (int emissiveFlag) |
int | getEmissive () const |
void | setLighting (int lightingFlag) |
int | getLighting () const |
void | setImagePath (const char *path) |
const char * | getImagePath () const |
void | setFrequencyRange (float min, float max) |
osg::Vec2 | getFrequencyRange () const |
void | setCircularRange (float min, float max) |
osg::Vec2 | getCircularRange () |
void | setSpeedRange (float min, float max) |
osg::Vec2 | getSpeedRange () |
virtual std::vector< lo_message > | getState () const |
A controller for a particle system.
void spin::ParticleSystem::callbackUpdate | ( | osg::NodeVisitor * | nv | ) | [virtual] |
For nodes that require regular programmatic control, there is a callback that is evaluated with every refresh. This function can thus be used for animations, or any other periodic updates.
Note that changes to the scene graph structure (eg, moving/deleting nodes should NOT be done within this callback because traversals stacks will become corrupted. The technique is rather to enable a flag and then do the actual change in the SceneManager::updateGraph() method.
Reimplemented from spin::GroupNode.
std::vector< lo_message > spin::ParticleSystem::getState | ( | ) | const [virtual] |
For each subclass of ReferencedNode, we override the getState() method to fill the vector with the correct set of methods for this particular node
Reimplemented from spin::GroupNode.