OSG
3.4.0
|
#include <MultiSegmentPlacer.h>
Public Member Functions | |
MultiSegmentPlacer () | |
MultiSegmentPlacer (const MultiSegmentPlacer ©, const osg::CopyOp ©op=osg::CopyOp::SHALLOW_COPY) | |
META_Object (osgParticle, MultiSegmentPlacer) | |
int | numVertices () const |
Get the number of vertices which define the segments. More... | |
const osg::Vec3 & | getVertex (int i) const |
Get a vertex. More... | |
void | setVertex (int i, const osg::Vec3 &v) |
Set a vertex. More... | |
void | setVertex (int i, float x, float y, float z) |
Set a vertex. More... | |
void | addVertex (const osg::Vec3 &v) |
Add a vertex. More... | |
void | addVertex (float x, float y, float z) |
Add a vertex. More... | |
void | removeVertex (int i) |
Remove a vertex. More... | |
void | place (Particle *P) const |
Place a partice. Called automatically by ModularEmitter , do not call this method manually. More... | |
float | volume () const |
return the length of the multi-segment More... | |
osg::Vec3 | getControlPosition () const |
return the control position More... | |
![]() | |
Placer () | |
Placer (const Placer ©, const osg::CopyOp ©op=osg::CopyOp::SHALLOW_COPY) | |
virtual const char * | libraryName () const |
virtual const char * | className () const |
virtual bool | isSameKindAs (const osg::Object *obj) const |
![]() | |
Object () | |
Object (bool threadSafeRefUnref) | |
Object (const Object &, const CopyOp ©op=CopyOp::SHALLOW_COPY) | |
virtual Object * | cloneType () const =0 |
virtual Object * | clone (const CopyOp &) const =0 |
std::string | getCompoundClassName () const |
virtual Node * | asNode () |
virtual const Node * | asNode () const |
virtual NodeVisitor * | asNodeVisitor () |
virtual const NodeVisitor * | asNodeVisitor () const |
virtual StateAttribute * | asStateAttribute () |
virtual const StateAttribute * | asStateAttribute () const |
virtual Uniform * | asUniform () |
virtual const Uniform * | asUniform () const |
virtual void | setThreadSafeRefUnref (bool threadSafe) |
virtual void | setName (const std::string &name) |
void | setName (const char *name) |
const std::string & | getName () const |
void | setDataVariance (DataVariance dv) |
DataVariance | getDataVariance () const |
virtual void | computeDataVariance () |
void | setUserDataContainer (osg::UserDataContainer *udc) |
osg::UserDataContainer * | getUserDataContainer () |
const osg::UserDataContainer * | getUserDataContainer () const |
osg::UserDataContainer * | getOrCreateUserDataContainer () |
virtual void | setUserData (Referenced *obj) |
virtual Referenced * | getUserData () |
virtual const Referenced * | getUserData () const |
template<typename T > | |
bool | getUserValue (const std::string &name, T &value) const |
template<typename T > | |
void | setUserValue (const std::string &name, const T &value) |
virtual void | resizeGLObjectBuffers (unsigned int) |
virtual void | releaseGLObjects (osg::State *=0) const |
template<typename T > | |
BoolValueObject UCharValueObject UShortValueObject UIntValueObject DoubleValueObject Vec3fValueObject Vec2dValueObject Vec4dValueObject PlaneValueObject MatrixdValueObject BoundingBoxdValueObject BoundingSpheredValueObject bool | getUserValue (const std::string &name, T &value) const |
![]() | |
Referenced () | |
Referenced (bool threadSafeRefUnref) | |
Referenced (const Referenced &) | |
Referenced & | operator= (const Referenced &) |
bool | getThreadSafeRefUnref () const |
OpenThreads::Mutex * | getRefMutex () const |
int | ref () const |
int | unref () const |
int | unref_nodelete () const |
int | referenceCount () const |
ObserverSet * | getObserverSet () const |
ObserverSet * | getOrCreateObserverSet () const |
void | addObserver (Observer *observer) const |
void | removeObserver (Observer *observer) const |
Protected Member Functions | |
virtual | ~MultiSegmentPlacer () |
MultiSegmentPlacer & | operator= (const MultiSegmentPlacer &) |
![]() | |
~Placer () | |
Placer & | operator= (const Placer &) |
![]() | |
virtual | ~Object () |
![]() | |
virtual | ~Referenced () |
void | signalObserversAndDelete (bool signalDelete, bool doDelete) const |
void | deleteUsingDeleteHandler () const |
Additional Inherited Members | |
![]() | |
enum | DataVariance { DYNAMIC, STATIC, UNSPECIFIED } |
![]() | |
static OpenThreads::Mutex * | getGlobalReferencedMutex () |
static void | setThreadSafeReferenceCounting (bool enableThreadSafeReferenceCounting) |
static bool | getThreadSafeReferenceCounting () |
static void | setDeleteHandler (DeleteHandler *handler) |
static DeleteHandler * | getDeleteHandler () |
![]() | |
std::string | _name |
DataVariance | _dataVariance |
osg::UserDataContainer * | _userDataContainer |
![]() | |
OpenThreads::AtomicPtr | _observerSet |
OpenThreads::Atomic | _refCount |
A polyline-shaped particle placer. This placer class sets the position of incoming particles by choosing a random point on the specified sequence of connected segments.
Definition at line 36 of file MultiSegmentPlacer.h.
osgParticle::MultiSegmentPlacer::MultiSegmentPlacer | ( | ) |
osgParticle::MultiSegmentPlacer::MultiSegmentPlacer | ( | const MultiSegmentPlacer & | copy, |
const osg::CopyOp & | copyop = osg::CopyOp::SHALLOW_COPY |
||
) |
|
inlineprotectedvirtual |
Definition at line 74 of file MultiSegmentPlacer.h.
|
inline |
Add a vertex.
Definition at line 112 of file MultiSegmentPlacer.h.
|
inline |
Add a vertex.
Definition at line 122 of file MultiSegmentPlacer.h.
|
inlinevirtual |
return the control position
Implements osgParticle::Placer.
Definition at line 138 of file MultiSegmentPlacer.h.
|
inline |
Get a vertex.
Definition at line 95 of file MultiSegmentPlacer.h.
osgParticle::MultiSegmentPlacer::META_Object | ( | osgParticle | , |
MultiSegmentPlacer | |||
) |
|
inline |
Get the number of vertices which define the segments.
Definition at line 90 of file MultiSegmentPlacer.h.
|
inlineprotected |
Definition at line 75 of file MultiSegmentPlacer.h.
|
virtual |
Place a partice. Called automatically by ModularEmitter
, do not call this method manually.
Implements osgParticle::Placer.
|
inline |
Remove a vertex.
Definition at line 127 of file MultiSegmentPlacer.h.
|
inline |
Set a vertex.
Definition at line 100 of file MultiSegmentPlacer.h.
|
inline |
Set a vertex.
Definition at line 106 of file MultiSegmentPlacer.h.
|
inlinevirtual |
return the length of the multi-segment
Reimplemented from osgParticle::Placer.
Definition at line 133 of file MultiSegmentPlacer.h.