An individual, physically-modelable particle abstract base class. More...
#include "baseParticle.h"
Public Member Functions | |
virtual void | die ()=0 |
PN_stdfloat | get_age () const |
bool | get_alive () const |
int | get_index () const |
PN_stdfloat | get_lifespan () const |
PN_stdfloat | get_parameterized_age () const |
PN_stdfloat | get_parameterized_vel () const |
virtual PN_stdfloat | get_theta () const |
for spriteParticleRenderer More... | |
virtual void | init ()=0 |
virtual PhysicsObject * | make_copy () const =0 |
dynamic copy. More... | |
virtual void | output (std::ostream &out) const |
Write a string representation of this instance to <out>. More... | |
void | set_age (PN_stdfloat age) |
void | set_alive (bool alive) |
void | set_index (int index) |
void | set_lifespan (PN_stdfloat lifespan) |
virtual void | update ()=0 |
virtual void | write (std::ostream &out, int indent=0) const |
Write a string representation of this instance to <out>. More... | |
Public Member Functions inherited from PhysicsObject | |
PhysicsObject () | |
Default Constructor. More... | |
PhysicsObject (const PhysicsObject ©) | |
copy constructor More... | |
virtual | ~PhysicsObject () |
Destructor. More... | |
virtual void | add_impact (const LPoint3 &offset_from_center_of_mass, const LVector3 &impulse) |
Adds an impulse and/or torque (i.e. More... | |
void | add_impulse (const LVector3 &impulse) |
Adds an impulse force (i.e. More... | |
virtual void | add_local_impact (const LPoint3 &offset_from_center_of_mass, const LVector3 &impulse) |
Adds an impulse and/or torque (i.e. More... | |
void | add_local_impulse (const LVector3 &impulse) |
Adds an impulse force (i.e. More... | |
void | add_local_torque (const LRotation &torque) |
Adds an torque force (i.e. More... | |
void | add_torque (const LRotation &torque) |
Adds an torque force (i.e. More... | |
virtual TypeHandle | force_init_type () |
bool | get_active () const |
Process Flag Query. More... | |
LVector3 | get_implicit_velocity () const |
Velocity Query over the last dt. More... | |
virtual LMatrix4 | get_inertial_tensor () const |
returns a transform matrix that represents the object's willingness to be forced. More... | |
LPoint3 | get_last_position () const |
Get the position of the physics object at the start of the most recent do_physics. More... | |
virtual LMatrix4 | get_lcs () const |
returns a transform matrix to this object's local coordinate system. More... | |
PN_stdfloat | get_mass () const |
Get the mass in slugs (or kilograms). More... | |
const std::string & | get_name () |
LOrientation | get_orientation () const |
get current orientation. More... | |
bool | get_oriented () const |
See set_oriented(). More... | |
LPoint3 | get_position () const |
Position Query. More... | |
LRotation | get_rotation () const |
get rotation per second. More... | |
PN_stdfloat | get_terminal_velocity () const |
tv query More... | |
virtual TypeHandle | get_type () const |
LVector3 | get_velocity () const |
Velocity Query per second. More... | |
const PhysicsObject & | operator= (const PhysicsObject &other) |
void | reset_orientation (const LOrientation &orientation) |
set the orientation while clearing the rotation velocity. More... | |
void | reset_position (const LPoint3 &pos) |
use this to place an object in a completely new position, that has nothing to do with its last position. More... | |
void | set_active (bool flag) |
Process Flag assignment. More... | |
void | set_last_position (const LPoint3 &pos) |
Last position assignment. More... | |
void | set_mass (PN_stdfloat) |
Set the mass in slugs (or kilograms). More... | |
void | set_name (const std::string &name) |
void | set_orientation (const LOrientation &orientation) |
void | set_oriented (bool flag) |
Set flag to determine whether this object should do any rotation or orientation calculations. More... | |
void | set_position (const LPoint3 &pos) |
Vector position assignment. More... | |
void | set_position (PN_stdfloat x, PN_stdfloat y, PN_stdfloat z) |
Piecewise position assignment. More... | |
void | set_rotation (const LRotation &rotation) |
set rotation as a quaternion delta per second. More... | |
void | set_terminal_velocity (PN_stdfloat tv) |
tv assignment More... | |
void | set_velocity (const LVector3 &vel) |
Vector velocity assignment. More... | |
void | set_velocity (PN_stdfloat x, PN_stdfloat y, PN_stdfloat z) |
Piecewise velocity assignment. More... | |
Public Member Functions inherited from TypedReferenceCount | |
TypedReferenceCount (const TypedReferenceCount ©) | |
void | operator= (const TypedReferenceCount ©) |
Public Member Functions inherited from TypedObject | |
TypedObject (const TypedObject ©)=default | |
TypedObject * | as_typed_object () |
Returns the object, upcast (if necessary) to a TypedObject pointer. More... | |
const TypedObject * | as_typed_object () const |
Returns the object, upcast (if necessary) to a TypedObject pointer. More... | |
int | get_best_parent_from_Set (const std::set< int > &) const |
int | get_type_index () const |
Returns the internal index number associated with this object's TypeHandle, a unique number for each different type. More... | |
bool | is_exact_type (TypeHandle handle) const |
Returns true if the current object is the indicated type exactly. More... | |
bool | is_of_type (TypeHandle handle) const |
Returns true if the current object is or derives from the indicated type. More... | |
TypedObject & | operator= (const TypedObject ©)=default |
Public Member Functions inherited from ReferenceCount | |
int | get_ref_count () const |
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 | ref_if_nonzero () const |
Atomically increases the reference count of this object if it is not zero. 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... | |
WeakReferenceList * | weak_ref () |
Adds the indicated PointerToVoid as a weak reference to this object. More... | |
void | weak_unref () |
Removes the indicated PointerToVoid as a weak reference to this object. More... | |
Additional Inherited Members | |
Public Types inherited from PhysicsObject | |
typedef pvector< PT(PhysicsObject)> | Vector |
Static Public Member Functions inherited from PhysicsObject | |
static TypeHandle | get_class_type () |
static void | init_type () |
Static Public Member Functions inherited from TypedReferenceCount | |
static TypeHandle | get_class_type () |
static void | init_type () |
Static Public Member Functions inherited from TypedObject | |
static TypeHandle | get_class_type () |
static void | init_type () |
This function is declared non-inline to work around a compiler bug in g++ 2.96. More... | |
Static Public Member Functions inherited from ReferenceCount | |
static TypeHandle | get_class_type () |
static void | init_type () |
Public Attributes inherited from TypedObject | |
get_type | |
Public Attributes inherited from ReferenceCount | |
get_ref_count | |
Returns the current reference count. More... | |
Static Public Attributes inherited from PhysicsObject | |
static ConfigVariableDouble | _default_terminal_velocity |
An individual, physically-modelable particle abstract base class.
Definition at line 23 of file baseParticle.h.
|
virtual |
for spriteParticleRenderer
Reimplemented in ZSpinParticle.
Definition at line 46 of file baseParticle.cxx.
|
pure virtual |
dynamic copy.
Reimplemented from PhysicsObject.
Implemented in PointParticle, ZSpinParticle, and OrientedParticle.
|
virtual |
Write a string representation of this instance to <out>.
Reimplemented from PhysicsObject.
Reimplemented in ZSpinParticle, OrientedParticle, and PointParticle.
Definition at line 54 of file baseParticle.cxx.
|
virtual |
Write a string representation of this instance to <out>.
Reimplemented from PhysicsObject.
Reimplemented in ZSpinParticle, OrientedParticle, and PointParticle.
Definition at line 64 of file baseParticle.cxx.
References indent(), and PhysicsObject::write().
Referenced by PointParticle::write(), OrientedParticle::write(), and ZSpinParticle::write().