44 INLINE
bool is_empty()
const;
45 INLINE dBodyID get_id()
const;
47 INLINE
void set_auto_disable_linear_threshold(dReal linear_threshold);
48 INLINE
void set_auto_disable_angular_threshold(dReal angular_threshold);
49 INLINE
void set_auto_disable_steps(
int steps);
50 INLINE
void set_auto_disable_time(dReal time);
51 INLINE
void set_auto_disable_flag(
int do_auto_disable);
52 INLINE
void set_auto_disable_defaults();
53 INLINE
void set_data(
void *data);
54 EXTENSION(
void set_data(PyObject *data));
56 INLINE
void set_position(dReal x, dReal y, dReal z);
57 INLINE
void set_position(
const LVecBase3f &pos);
58 INLINE
void set_rotation(
const LMatrix3f &r);
59 INLINE
void set_quaternion(
const LQuaternionf &q);
60 INLINE
void set_linear_vel(dReal x, dReal y, dReal z);
61 INLINE
void set_linear_vel(
const LVecBase3f &vel);
62 INLINE
void set_angular_vel(dReal x, dReal y, dReal z);
63 INLINE
void set_angular_vel(
const LVecBase3f &vel);
64 INLINE
void set_mass(
OdeMass &mass);
67 INLINE dReal get_auto_disable_linear_threshold()
const;
68 INLINE dReal get_auto_disable_angular_threshold()
const;
69 INLINE
int get_auto_disable_steps()
const;
70 INLINE dReal get_auto_disable_time()
const;
71 INLINE
int get_auto_disable_flag()
const;
73 INLINE
void *get_data()
const;
75 EXTENSION(PyObject *get_data()
const);
77 INLINE LVecBase3f get_position()
const;
78 INLINE LMatrix3f get_rotation()
const;
79 INLINE LVecBase4f get_quaternion()
const;
80 INLINE LVecBase3f get_linear_vel()
const;
81 INLINE LVecBase3f get_angular_vel()
const;
82 INLINE
OdeMass get_mass()
const;
84 INLINE
void add_force(dReal fx, dReal fy, dReal fz);
85 INLINE
void add_force(
const LVecBase3f &f);
86 INLINE
void add_torque(dReal fx, dReal fy, dReal fz);
87 INLINE
void add_torque(
const LVecBase3f &f);
88 INLINE
void add_rel_force(dReal fx, dReal fy, dReal fz);
89 INLINE
void add_rel_force(
const LVecBase3f &f);
90 INLINE
void add_rel_torque(dReal fx, dReal fy, dReal fz);
91 INLINE
void add_rel_torque(
const LVecBase3f &f);
92 INLINE
void add_force_at_pos(dReal fx, dReal fy, dReal fz,
93 dReal px, dReal py, dReal pz);
94 INLINE
void add_force_at_pos(
const LVecBase3f &f,
95 const LVecBase3f &pos);
96 INLINE
void add_force_at_rel_pos(dReal fx, dReal fy, dReal fz,
97 dReal px, dReal py, dReal pz);
98 INLINE
void add_force_at_rel_pos(
const LVecBase3f &f,
99 const LVecBase3f &pos);
100 INLINE
void add_rel_force_at_pos(dReal fx, dReal fy, dReal fz,
101 dReal px, dReal py, dReal pz);
102 INLINE
void add_rel_force_at_pos(
const LVecBase3f &f,
103 const LVecBase3f &pos);
104 INLINE
void add_rel_force_at_rel_pos(dReal fx, dReal fy, dReal fz,
105 dReal px, dReal py, dReal pz);
106 INLINE
void add_rel_force_at_rel_pos(
const LVecBase3f &f,
107 const LVecBase3f &pos);
108 INLINE
void set_force(dReal x, dReal y, dReal z);
109 INLINE
void set_force(
const LVecBase3f &f);
110 INLINE
void set_torque(dReal x, dReal y, dReal z);
111 INLINE
void set_torque(
const LVecBase3f &f);
113 INLINE LPoint3f get_rel_point_pos(dReal px, dReal py, dReal pz)
const;
114 INLINE LPoint3f get_rel_point_pos(
const LVecBase3f &pos)
const;
115 INLINE LPoint3f get_rel_point_vel(dReal px, dReal py, dReal pz)
const;
116 INLINE LPoint3f get_rel_point_vel(
const LVecBase3f &pos)
const;
117 INLINE LPoint3f get_point_vel(dReal px, dReal py, dReal pz)
const;
118 INLINE LPoint3f get_point_vel(
const LVecBase3f &pos)
const;
119 INLINE LPoint3f get_pos_rel_point(dReal px, dReal py, dReal pz)
const;
120 INLINE LPoint3f get_pos_rel_point(
const LVecBase3f &pos)
const;
121 INLINE LVecBase3f vector_to_world(dReal px, dReal py, dReal pz)
const;
122 INLINE LVecBase3f vector_to_world(
const LVecBase3f &pos)
const;
123 INLINE LVecBase3f vector_from_world(dReal px, dReal py, dReal pz)
const;
124 INLINE LVecBase3f vector_from_world(
const LVecBase3f &pos)
const;
126 INLINE
void set_finite_rotation_mode(
int mode);
127 INLINE
void set_finite_rotation_axis(dReal x, dReal y, dReal z);
128 INLINE
void set_finite_rotation_axis(
const LVecBase3f &axis);
129 INLINE
int get_finite_rotation_mode()
const;
130 INLINE LVecBase3f get_finite_rotation_axis()
const;
132 INLINE
int get_num_joints()
const;
133 OdeJoint get_joint(
int index)
const;
134 MAKE_SEQ(get_joints, get_num_joints, get_joint);
135 EXTENSION(INLINE PyObject *get_converted_joint(
int i)
const);
136 MAKE_SEQ_PROPERTY(joints, get_num_joints, get_converted_joint);
138 INLINE
void enable();
139 INLINE
void disable();
140 INLINE
int is_enabled()
const;
141 INLINE
void set_gravity_mode(
int mode);
142 INLINE
int get_gravity_mode()
const;
144 virtual void write(std::ostream &out = std::cout,
unsigned int indent=0)
const;
145 operator bool ()
const;
152 typedef void (*DestroyCallback)(
OdeBody &body);
153 DestroyCallback _destroy_callback =
nullptr;
162 TypedObject::get_class_type());
165 return get_class_type();
A class used to hold information about a collision that has occurred.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.