Panda3D
|
Public Member Functions | |
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 (const LVecBase3f &f) |
void | add_torque (dReal fx, dReal fy, dReal fz) |
TypedObject * | as_typed_object () |
Returns the object, upcast (if necessary) to a TypedObject pointer. | |
const TypedObject * | as_typed_object () const |
Returns the object, upcast (if necessary) to a TypedObject pointer. | |
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 |
int | get_best_parent_from_Set (const std::set< int > &) 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. | |
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 (const LVecBase3f &pos) const |
LPoint3f | get_rel_point_vel (dReal px, dReal py, dReal pz) const |
LMatrix3f | get_rotation () const |
virtual TypeHandle | get_type () const |
int | get_type_index () const |
Returns the internal index number associated with this object's TypeHandle, a unique number for each different type. | |
bool | is_empty () const |
Returns true if the ID is 0, meaning the OdeBody does not point to a valid body. | |
int | is_enabled () const |
bool | is_exact_type (TypeHandle handle) const |
Returns true if the current object is the indicated type exactly. | |
bool | is_of_type (TypeHandle handle) const |
Returns true if the current object is or derives from the indicated type. | |
MAKE_SEQ (get_joints, get_num_joints, get_joint) | |
operator bool () const | |
void | operator delete (void *ptr) |
void | operator delete (void *ptr, void *) |
void | operator delete[] (void *, void *) |
void | operator delete[] (void *ptr) |
void * | operator new (size_t size, void *ptr) |
void * | operator new (size_t size) |
void * | operator new[] (size_t size) |
void * | operator new[] (size_t size, void *ptr) |
void | set_angular_vel (const LVecBase3f &vel) |
void | set_angular_vel (dReal x, dReal y, dReal z) |
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 (const LVecBase3f &f) |
void | set_force (dReal x, dReal y, dReal z) |
void | set_gravity_mode (int mode) |
void | set_linear_vel (const LVecBase3f &vel) |
void | set_linear_vel (dReal x, dReal y, dReal z) |
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 (const LVecBase3f &f) |
void | set_torque (dReal x, dReal y, dReal z) |
LVecBase3f | vector_from_world (dReal px, dReal py, dReal pz) const |
LVecBase3f | vector_from_world (const LVecBase3f &pos) const |
LVecBase3f | vector_to_world (const LVecBase3f &pos) const |
LVecBase3f | vector_to_world (dReal px, dReal py, dReal pz) const |
virtual void | write (ostream &out=cout, unsigned int indent=0) const |
Static Public Member Functions | |
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. | |
Protected Member Functions | |
OdeBody (dBodyID id) | |
Friends | |
class | OdeCollisionEntry |
class | OdeGeom |
class | OdeJoint |
TypedObject * TypedObject::as_typed_object | ( | ) | [inline, inherited] |
Returns the object, upcast (if necessary) to a TypedObject pointer.
Definition at line 99 of file typedObject.I.
const TypedObject * TypedObject::as_typed_object | ( | ) | const [inline, inherited] |
Returns the object, upcast (if necessary) to a TypedObject pointer.
Definition at line 110 of file typedObject.I.
dBodyID OdeBody::get_id | ( | ) | const [inline] |
Returns the underlying dBodyID.
Definition at line 34 of file odeBody.I.
Referenced by OdeUtil::are_connected(), OdeUtil::are_connected_excluding(), OdeJoint::attach_bodies(), OdeJoint::attach_body(), OdeUtil::get_connecting_joint(), and OdeUtil::get_connecting_joint_list().
int TypedObject::get_type_index | ( | ) | const [inline, inherited] |
Returns the internal index number associated with this object's TypeHandle, a unique number for each different type.
This is equivalent to get_type().get_index().
Definition at line 52 of file typedObject.I.
References TypeHandle::get_index().
static void OdeBody::init_type | ( | ) | [inline, static] |
This function is declared non-inline to work around a compiler bug in g++ 2.96.
Making it inline seems to cause problems in the optimizer.
Reimplemented from TypedObject.
Definition at line 160 of file odeBody.h.
References OdeCollisionEntry::init_type().
bool OdeBody::is_empty | ( | ) | const [inline] |
bool TypedObject::is_exact_type | ( | TypeHandle | handle | ) | const [inline, inherited] |
Returns true if the current object is the indicated type exactly.
Definition at line 74 of file typedObject.I.
References TypeHandle::get_name().
Referenced by GraphicsStateGuardian::async_reload_texture(), PortalNode::combine_with(), PandaNode::combine_with(), GeomNode::combine_with(), CollisionNode::combine_with(), Character::combine_with(), PGItem::cull_callback(), FactoryParams::get_param_of_type(), CollisionHandlerPusher::handle_entries(), SceneGraphReducer::r_flatten(), ConnectionWriter::send(), FltToEggLevelState::set_transform(), and VirtualFileSystem::unmount().
bool TypedObject::is_of_type | ( | TypeHandle | handle | ) | const [inline, inherited] |
Returns true if the current object is or derives from the indicated type.
Definition at line 63 of file typedObject.I.
References TypeHandle::is_derived_from().
Referenced by EggSliderData::add_back_pointer(), EggJointData::add_back_pointer(), CIntervalManager::add_c_interval(), XFileNode::add_child(), CollisionTraverser::add_collider(), CollisionHandlerPhysical::add_collider(), EggXfmSAnim::add_data(), CharacterJointBundle::add_node(), NonlinearImager::add_screen(), EggGroupNode::apply_first_attribute(), EggGroupNode::apply_last_attribute(), DeferredNodeProperty::apply_to_node(), RecorderController::begin_playback(), NodePath::clear_clip_plane(), EggGroupNode::clear_connected_shading(), NodePath::clear_light(), EggBase::convert_paths(), NodePath::decode_from_bam_stream(), VrpnClient::disconnect_device(), PhysicsManager::do_physics(), GraphicsStateGuardian::fetch_specified_part(), EggRenderState::fill_state(), AnimBundleNode::find_anim_bundle(), EggGroupNode::find_coordsys_entry(), XFile::find_data_object(), Character::find_joint(), EggGroupNode::find_materials(), Character::find_slider(), XFile::find_template(), EggGroupNode::find_textures(), EggMaterialCollection::find_used_materials(), EggTextureCollection::find_used_textures(), EggGroupNode::force_filenames(), EggJointData::force_initial_rest_frame(), WindowFramework::get_aspect_2d(), EggPoolUniquifier::get_category(), EggGroupUniquifier::get_category(), EggGroupNode::get_connected_shading(), PandaFramework::get_mouse(), FactoryParams::get_param_of_type(), EggGroupNode::has_absolute_pathnames(), NodePath::has_clip_plane(), NodePath::has_clip_plane_off(), NodePath::has_light(), PandaFramework::hide_collision_solids(), x11GraphicsWindow::open_window(), eglGraphicsWindow::open_window(), EggNode::parse_egg(), CharacterMaker::part_to_node(), EggGroupNode::post_apply_flat_attribute(), EggBinner::prepare_node(), PortalClipper::prepare_portal(), NodePath::project_texture(), EggMatrixTablePointer::quantize_channels(), ParametricCurveCollection::r_add_curves(), SceneGraphReducer::r_collect_vertex_data(), EggGroupNode::r_load_externals(), EggGroupNode::rebuild_vertex_pools(), EggGroupNode::recompute_polygon_normals(), EggGroupNode::remove_invalid_primitives(), EggGroupNode::remove_unused_vertices(), EggLoader::reparent_decals(), EggMaterialCollection::replace_materials(), EggTextureCollection::replace_textures(), EggGroupNode::resolve_filenames(), EggGroupNode::reverse_vertex_ordering(), NodePath::set_clip_plane(), NodePath::set_clip_plane_off(), NodePath::set_light(), ProjectionScreen::set_projector(), NonlinearImager::set_source_camera(), EggXfmSAnim::set_value(), NonlinearImager::set_viewer_camera(), PandaFramework::show_collision_solids(), BamCache::store(), XFileToEggConverter::strip_nodes(), EggGroupNode::strip_normals(), DataGraphTraverser::traverse(), DataGraphTraverser::traverse_below(), EggGroupNode::triangulate_polygons(), EggGroupNode::unify_attributes(), EggNameUniquifier::uniquify(), NodeCullCallbackData::upcall(), PhysicsCollisionHandler::validate_target(), EggXfmSAnim::write(), EggGroup::write(), EggToDXFLayer::write_3d_face(), and EggToDXFLayer::write_entities().