BaseParticleEmitter

class BaseParticleEmitter

Bases: ReferenceCount

Inheritance diagram

Inheritance diagram of BaseParticleEmitter

enum emissionType
enumerator ET_EXPLICIT = 0

all particles are emitted in parallel along the same vector

enumerator ET_RADIATE = 1

all particles radiate away from a single point

enumerator ET_CUSTOM = 2

particle launch vectors are dependent on particular derived emitter

void generate(LPoint3 &pos, LVector3 &vel)

parent generation function

PN_stdfloat get_amplitude(void) const

amplitude query

PN_stdfloat get_amplitude_spread(void) const

amplitude spread query

emissionType get_emission_type(void) const

emission type query

LVector3 get_explicit_launch_vector(void) const

query for explicit emission launch vector

LVector3 get_offset_force(void) const

user-defined force

LPoint3 get_radiate_origin(void) const

query for explicit emission launch vector

virtual BaseParticleEmitter *make_copy(void) = 0
virtual void output(std::ostream &out) const

Write a string representation of this instance to <out>.

void set_amplitude(PN_stdfloat a)

amplitude assignment

void set_amplitude_spread(PN_stdfloat as)

amplitude spread assignment

void set_emission_type(BaseParticleEmitter::emissionType et)

emission type assignment

void set_explicit_launch_vector(LVector3 const &elv)

this is a constant force applied to all particles

assignment of explicit emission launch vector

void set_offset_force(LVector3 const &of)

this is a constant force applied to all particles

user-defined force

void set_radiate_origin(LPoint3 const &ro)

assignment of radiate emission origin point

virtual void write(std::ostream &out, int indent = 0) const

Write a string representation of this instance to <out>.