Panda3D
Public Types | Public Member Functions | Static Public Member Functions | Friends | List of all members
OdeJoint Class Reference
Inheritance diagram for OdeJoint:
TypedObject MemoryBase OdeAMotorJoint OdeBallJoint OdeContactJoint OdeFixedJoint OdeHinge2Joint OdeHingeJoint OdeLMotorJoint OdeNullJoint OdePlane2dJoint OdeSliderJoint OdeUniversalJoint

Public Types

enum  JointType {
  JT_none = 0, JT_ball, JT_hinge, JT_slider,
  JT_contact, JT_universal, JT_hinge2, JT_fixed,
  JT_null, JT_a_motor, JT_l_motor, JT_plane2d
}
 

Public Member Functions

 OdeJoint (dJointID id)
 
void attach_bodies (const OdeBody &body1, const OdeBody &body2)
 Attaches two OdeBody objects to this joint. More...
 
void attach_body (const OdeBody &body, int index)
 Attaches a single OdeBody to this joint at the specified index (0 or 1). More...
 
int compare_to (const OdeJoint &other) const
 
OdeAMotorJoint convert_to_a_motor () const
 
OdeBallJoint convert_to_ball () const
 
OdeContactJoint convert_to_contact () const
 
OdeFixedJoint convert_to_fixed () const
 
OdeHingeJoint convert_to_hinge () const
 
OdeHinge2Joint convert_to_hinge2 () const
 
OdeLMotorJoint convert_to_l_motor () const
 
OdeNullJoint convert_to_null () const
 
OdePlane2dJoint convert_to_plane2d () const
 
OdeSliderJoint convert_to_slider () const
 
OdeUniversalJoint convert_to_universal () const
 
void destroy ()
 
void detach ()
 
virtual TypeHandle force_init_type ()
 
OdeBody get_body (int index) const
 
OdeJointFeedbackget_feedback ()
 
dJointID get_id () const
 Returns the underlying dJointID. More...
 
int get_joint_type () const
 
virtual TypeHandle get_type () const
 
bool is_empty () const
 Returns true if the ID is 0, meaning the OdeJoint does not point to a valid joint. More...
 
 operator bool () const
 
bool operator== (const OdeJoint &other) const
 
void set_feedback (OdeJointFeedback *)
 
void set_feedback (bool flag=true)
 
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...
 

Friends

class OdeBody
 
class OdeUtil
 

Additional Inherited Members

- Public Attributes inherited from TypedObject
 get_type
 

Detailed Description

Definition at line 51 of file odeJoint.h.

Member Function Documentation

◆ attach_bodies()

void OdeJoint::attach_bodies ( const OdeBody body1,
const OdeBody body2 
)

Attaches two OdeBody objects to this joint.

Order is important. Consider using the OdeJoint::attach extension function if you're using the Python interface.

Definition at line 61 of file odeJoint.cxx.

◆ attach_body()

void OdeJoint::attach_body ( const OdeBody body,
int  index 
)

Attaches a single OdeBody to this joint at the specified index (0 or 1).

The other index will be set to the environment (null). Consider using the OdeJoint::attach extension function if you're using the Python interface.

Definition at line 73 of file odeJoint.cxx.

◆ get_id()

dJointID OdeJoint::get_id ( ) const
inline

Returns the underlying dJointID.

Definition at line 28 of file odeJoint.I.

◆ is_empty()

bool OdeJoint::is_empty ( ) const
inline

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

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

Definition at line 20 of file odeJoint.I.


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