Describes a physical region in space in which particles are randomly generated. More...
#include "baseParticleEmitter.h"
Public Types | |
enum | emissionType { ET_EXPLICIT, ET_RADIATE, ET_CUSTOM } |
Public Member Functions | |
virtual | ~BaseParticleEmitter () |
destructor More... | |
void | generate (LPoint3 &pos, LVector3 &vel) |
parent generation function More... | |
PN_stdfloat | get_amplitude () const |
amplitude query More... | |
PN_stdfloat | get_amplitude_spread () const |
amplitude spread query More... | |
emissionType | get_emission_type () const |
emission type query More... | |
LVector3 | get_explicit_launch_vector () const |
query for explicit emission launch vector More... | |
LVector3 | get_offset_force () const |
user-defined force More... | |
LPoint3 | get_radiate_origin () const |
query for explicit emission launch vector More... | |
virtual BaseParticleEmitter * | make_copy ()=0 |
virtual void | output (ostream &out) const |
Write a string representation of this instance to <out>. More... | |
void | set_amplitude (PN_stdfloat a) |
amplitude assignment More... | |
void | set_amplitude_spread (PN_stdfloat as) |
amplitude spread assignment More... | |
void | set_emission_type (emissionType et) |
emission type assignment More... | |
void | set_explicit_launch_vector (const LVector3 &elv) |
assignment of explicit emission launch vector More... | |
void | set_offset_force (const LVector3 &of) |
user-defined force More... | |
void | set_radiate_origin (const LPoint3 &ro) |
assignment of radiate emission origin point More... | |
virtual void | write (ostream &out, int indent=0) const |
Write a string representation of this instance to <out>. More... | |
![]() | |
int | get_ref_count () const |
Returns the current reference count. More... | |
WeakReferenceList * | get_weak_list () const |
Returns the WeakReferenceList associated with this ReferenceCount object. More... | |
bool | has_weak_list () const |
Returns true if this particular ReferenceCount object has a WeakReferenceList created, false otherwise. More... | |
void | local_object () |
This function should be called, once, immediately after creating a new instance of some ReferenceCount-derived object on the stack. More... | |
void | ref () const |
Explicitly increments the reference count. More... | |
bool | test_ref_count_integrity () const |
Does some easy checks to make sure that the reference count isn't completely bogus. More... | |
bool | test_ref_count_nonzero () const |
Does some easy checks to make sure that the reference count isn't zero, or completely bogus. More... | |
virtual bool | unref () const |
Explicitly decrements the reference count. More... | |
void | weak_ref (WeakPointerToVoid *ptv) |
Adds the indicated PointerToVoid as a weak reference to this object. More... | |
void | weak_unref (WeakPointerToVoid *ptv) |
Removes the indicated PointerToVoid as a weak reference to this object. More... | |
Additional Inherited Members | |
![]() | |
static TypeHandle | get_class_type () |
static void | init_type () |
Describes a physical region in space in which particles are randomly generated.
Definition at line 31 of file baseParticleEmitter.h.
|
virtual |
destructor
Definition at line 55 of file baseParticleEmitter.cxx.
parent generation function
Definition at line 64 of file baseParticleEmitter.cxx.
References LVecBase3f::normalize().
|
inline |
amplitude query
Definition at line 91 of file baseParticleEmitter.I.
|
inline |
amplitude spread query
Definition at line 111 of file baseParticleEmitter.I.
|
inline |
emission type query
Definition at line 31 of file baseParticleEmitter.I.
|
inline |
query for explicit emission launch vector
Definition at line 51 of file baseParticleEmitter.I.
|
inline |
user-defined force
Definition at line 131 of file baseParticleEmitter.I.
|
inline |
query for explicit emission launch vector
Definition at line 71 of file baseParticleEmitter.I.
|
virtual |
Write a string representation of this instance to <out>.
Reimplemented in DiscEmitter, RingEmitter, ArcEmitter, TangentRingEmitter, BoxEmitter, LineEmitter, RectangleEmitter, PointEmitter, SphereSurfaceEmitter, and SphereVolumeEmitter.
Definition at line 94 of file baseParticleEmitter.cxx.
|
inline |
amplitude assignment
Definition at line 81 of file baseParticleEmitter.I.
|
inline |
amplitude spread assignment
Definition at line 101 of file baseParticleEmitter.I.
|
inline |
emission type assignment
Definition at line 21 of file baseParticleEmitter.I.
|
inline |
assignment of explicit emission launch vector
Definition at line 41 of file baseParticleEmitter.I.
|
inline |
user-defined force
Definition at line 121 of file baseParticleEmitter.I.
|
inline |
assignment of radiate emission origin point
Definition at line 61 of file baseParticleEmitter.I.
|
virtual |
Write a string representation of this instance to <out>.
Reimplemented in DiscEmitter, RingEmitter, ArcEmitter, TangentRingEmitter, BoxEmitter, LineEmitter, RectangleEmitter, PointEmitter, SphereSurfaceEmitter, and SphereVolumeEmitter.
Definition at line 107 of file baseParticleEmitter.cxx.
Referenced by PointEmitter::write(), SphereVolumeEmitter::write(), SphereSurfaceEmitter::write(), BoxEmitter::write(), RectangleEmitter::write(), LineEmitter::write(), TangentRingEmitter::write(), RingEmitter::write(), and DiscEmitter::write().