Panda3D
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Friends | List of all members
OdeBody Class Reference
Inheritance diagram for OdeBody:
TypedObject MemoryBase

Public Types

typedef void(* DestroyCallback) (OdeBody &body)
 

Public Member Functions

 OdeBody (dBodyID id)
 
 OdeBody (OdeWorld &world)
 
void add_force (dReal fx, dReal fy, dReal fz)
 
void add_force (const LVecBase3f &f)
 
void add_force_at_pos (dReal fx, dReal fy, dReal fz, dReal px, dReal py, dReal pz)
 
void add_force_at_pos (const LVecBase3f &f, const LVecBase3f &pos)
 
void add_force_at_rel_pos (dReal fx, dReal fy, dReal fz, dReal px, dReal py, dReal pz)
 
void add_force_at_rel_pos (const LVecBase3f &f, const LVecBase3f &pos)
 
void add_rel_force (dReal fx, dReal fy, dReal fz)
 
void add_rel_force (const LVecBase3f &f)
 
void add_rel_force_at_pos (dReal fx, dReal fy, dReal fz, dReal px, dReal py, dReal pz)
 
void add_rel_force_at_pos (const LVecBase3f &f, const LVecBase3f &pos)
 
void add_rel_force_at_rel_pos (dReal fx, dReal fy, dReal fz, dReal px, dReal py, dReal pz)
 
void add_rel_force_at_rel_pos (const LVecBase3f &f, const LVecBase3f &pos)
 
void add_rel_torque (dReal fx, dReal fy, dReal fz)
 
void add_rel_torque (const LVecBase3f &f)
 
void add_torque (dReal fx, dReal fy, dReal fz)
 
void add_torque (const LVecBase3f &f)
 
int compare_to (const OdeBody &other) const
 
void destroy ()
 
void disable ()
 
void enable ()
 
virtual TypeHandle force_init_type ()
 
LVecBase3f get_angular_vel () const
 
dReal get_auto_disable_angular_threshold () const
 
int get_auto_disable_flag () const
 
dReal get_auto_disable_linear_threshold () const
 
int get_auto_disable_steps () const
 
dReal get_auto_disable_time () const
 
void * get_data () const
 
LVecBase3f get_finite_rotation_axis () const
 
int get_finite_rotation_mode () const
 
int get_gravity_mode () const
 
dBodyID get_id () const
 Returns the underlying dBodyID. More...
 
OdeJoint get_joint (int index) const
 
LVecBase3f get_linear_vel () const
 
OdeMass get_mass () const
 
int get_num_joints () const
 
LPoint3f get_point_vel (dReal px, dReal py, dReal pz) const
 
LPoint3f get_point_vel (const LVecBase3f &pos) const
 
LPoint3f get_pos_rel_point (dReal px, dReal py, dReal pz) const
 
LPoint3f get_pos_rel_point (const LVecBase3f &pos) const
 
LVecBase3f get_position () const
 
LVecBase4f get_quaternion () const
 
LPoint3f get_rel_point_pos (dReal px, dReal py, dReal pz) const
 
LPoint3f get_rel_point_pos (const LVecBase3f &pos) const
 
LPoint3f get_rel_point_vel (dReal px, dReal py, dReal pz) const
 
LPoint3f get_rel_point_vel (const LVecBase3f &pos) const
 
LMatrix3f get_rotation () const
 
virtual TypeHandle get_type () const
 
bool is_empty () const
 Returns true if the ID is 0, meaning the OdeBody does not point to a valid body. More...
 
int is_enabled () const
 
 operator bool () const
 
void set_angular_vel (dReal x, dReal y, dReal z)
 
void set_angular_vel (const LVecBase3f &vel)
 
void set_auto_disable_angular_threshold (dReal angular_threshold)
 
void set_auto_disable_defaults ()
 
void set_auto_disable_flag (int do_auto_disable)
 
void set_auto_disable_linear_threshold (dReal linear_threshold)
 
void set_auto_disable_steps (int steps)
 
void set_auto_disable_time (dReal time)
 
void set_data (void *data)
 
void set_finite_rotation_axis (dReal x, dReal y, dReal z)
 
void set_finite_rotation_axis (const LVecBase3f &axis)
 
void set_finite_rotation_mode (int mode)
 
void set_force (dReal x, dReal y, dReal z)
 
void set_force (const LVecBase3f &f)
 
void set_gravity_mode (int mode)
 
void set_linear_vel (dReal x, dReal y, dReal z)
 
void set_linear_vel (const LVecBase3f &vel)
 
void set_mass (OdeMass &mass)
 
void set_position (dReal x, dReal y, dReal z)
 
void set_position (const LVecBase3f &pos)
 
void set_quaternion (const LQuaternionf &q)
 
void set_rotation (const LMatrix3f &r)
 
void set_torque (dReal x, dReal y, dReal z)
 
void set_torque (const LVecBase3f &f)
 
LVecBase3f vector_from_world (dReal px, dReal py, dReal pz) const
 
LVecBase3f vector_from_world (const LVecBase3f &pos) const
 
LVecBase3f vector_to_world (dReal px, dReal py, dReal pz) const
 
LVecBase3f vector_to_world (const LVecBase3f &pos) const
 
virtual void write (std::ostream &out=std::cout, unsigned int indent=0) const
 
- Public Member Functions inherited from TypedObject
 TypedObject (const TypedObject &copy)=default
 
TypedObjectas_typed_object ()
 Returns the object, upcast (if necessary) to a TypedObject pointer. More...
 
const TypedObjectas_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...
 
TypedObjectoperator= (const TypedObject &copy)=default
 

Static Public Member Functions

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...
 

Public Attributes

DestroyCallback _destroy_callback = nullptr
 
 get_joint
 
 get_num_joints
 
- Public Attributes inherited from TypedObject
 get_type
 

Friends

class OdeCollisionEntry
 
class OdeGeom
 
class OdeJoint
 

Detailed Description

Definition at line 32 of file odeBody.h.

Member Function Documentation

◆ get_id()

dBodyID OdeBody::get_id ( ) const
inline

◆ is_empty()

bool OdeBody::is_empty ( ) const
inline

Returns true if the ID is 0, meaning the OdeBody does not point to a valid body.

It is an error to call a method on an empty body. Note that an empty OdeBody also evaluates to False.

Definition at line 20 of file odeBody.I.


The documentation for this class was generated from the following files: