18 #include "pandabase.h"
19 #include "typedObject.h"
22 #include "ode_includes.h"
50 INLINE dBodyID get_id()
const;
52 INLINE
void set_auto_disable_linear_threshold(dReal linear_threshold);
53 INLINE
void set_auto_disable_angular_threshold(dReal angular_threshold);
54 INLINE
void set_auto_disable_steps(
int steps);
55 INLINE
void set_auto_disable_time(dReal time);
56 INLINE
void set_auto_disable_flag(
int do_auto_disable);
57 INLINE
void set_auto_disable_defaults();
58 INLINE
void set_data(
void *data);
60 INLINE
void set_data(PyObject *data);
63 INLINE
void set_position(dReal x, dReal y, dReal z);
64 INLINE
void set_position(
const LVecBase3f &pos);
65 INLINE
void set_rotation(
const LMatrix3f &r);
67 INLINE
void set_linear_vel(dReal x, dReal y, dReal z);
68 INLINE
void set_linear_vel(
const LVecBase3f &vel);
69 INLINE
void set_angular_vel(dReal x, dReal y, dReal z);
70 INLINE
void set_angular_vel(
const LVecBase3f &vel);
71 INLINE
void set_mass(
OdeMass &mass);
74 INLINE dReal get_auto_disable_linear_threshold()
const;
75 INLINE dReal get_auto_disable_angular_threshold()
const;
76 INLINE
int get_auto_disable_steps()
const;
77 INLINE dReal get_auto_disable_time()
const;
78 INLINE
int get_auto_disable_flag()
const;
80 INLINE PyObject* get_data()
const;
82 INLINE
void* get_data()
const;
90 INLINE
OdeMass get_mass()
const;
92 INLINE
void add_force(dReal fx, dReal fy, dReal fz);
94 INLINE
void add_torque(dReal fx, dReal fy, dReal fz);
96 INLINE
void add_rel_force(dReal fx, dReal fy, dReal fz);
97 INLINE
void add_rel_force(
const LVecBase3f &f);
98 INLINE
void add_rel_torque(dReal fx, dReal fy, dReal fz);
99 INLINE
void add_rel_torque(
const LVecBase3f &f);
100 INLINE
void add_force_at_pos(dReal fx, dReal fy, dReal fz,
101 dReal px, dReal py, dReal pz);
102 INLINE
void add_force_at_pos(
const LVecBase3f &f,
104 INLINE
void add_force_at_rel_pos(dReal fx, dReal fy, dReal fz,
105 dReal px, dReal py, dReal pz);
106 INLINE
void add_force_at_rel_pos(
const LVecBase3f &f,
108 INLINE
void add_rel_force_at_pos(dReal fx, dReal fy, dReal fz,
109 dReal px, dReal py, dReal pz);
110 INLINE
void add_rel_force_at_pos(
const LVecBase3f &f,
112 INLINE
void add_rel_force_at_rel_pos(dReal fx, dReal fy, dReal fz,
113 dReal px, dReal py, dReal pz);
114 INLINE
void add_rel_force_at_rel_pos(
const LVecBase3f &f,
116 INLINE
void set_force(dReal x, dReal y, dReal z);
118 INLINE
void set_torque(dReal x, dReal y, dReal z);
121 INLINE
LPoint3f get_rel_point_pos(dReal px, dReal py, dReal pz)
const;
123 INLINE
LPoint3f get_rel_point_vel(dReal px, dReal py, dReal pz)
const;
125 INLINE
LPoint3f get_point_vel(dReal px, dReal py, dReal pz)
const;
127 INLINE
LPoint3f get_pos_rel_point(dReal px, dReal py, dReal pz)
const;
129 INLINE
LVecBase3f vector_to_world(dReal px, dReal py, dReal pz)
const;
131 INLINE
LVecBase3f vector_from_world(dReal px, dReal py, dReal pz)
const;
134 INLINE
void set_finite_rotation_mode(
int mode);
135 INLINE
void set_finite_rotation_axis(dReal x, dReal y, dReal z);
136 INLINE
void set_finite_rotation_axis(
const LVecBase3f &axis);
137 INLINE
int get_finite_rotation_mode()
const;
138 INLINE
LVecBase3f get_finite_rotation_axis()
const;
140 INLINE
int get_num_joints()
const;
141 OdeJoint get_joint(
int index)
const;
142 MAKE_SEQ(get_joints, get_num_joints, get_joint);
143 EXTENSION(INLINE PyObject *get_converted_joint(
int i)
const);
145 INLINE
void enable();
146 INLINE
void disable();
147 INLINE
int is_enabled()
const;
148 INLINE
void set_gravity_mode(
int mode);
149 INLINE
int get_gravity_mode()
const;
151 virtual void write(ostream &out = cout,
unsigned int indent=0)
const;
152 operator bool ()
const;
164 register_type(_type_handle,
"OdeBody",
165 TypedObject::get_class_type());
168 return get_class_type();
This is the base class for all three-component vectors and points.
static void init_type()
This function is declared non-inline to work around a compiler bug in g++ 2.96.
This is an abstract class that all classes which use TypeHandle, and also provide virtual functions t...
This is a three-component point in space (as opposed to a three-component vector, which represents a ...
A class used to hold information about a collision that has occurred.
This is the base class for all three-component vectors and points.
An STL function object class, this is intended to be used on any ordered collection of class objects ...
This is the base quaternion class.
bool is_empty() const
Returns true if the entry holds no contacts.
TypeHandle is the identifier used to differentiate C++ class types.
This is a 3-by-3 transform matrix.