Panda3D
|
Public Types | |
enum | GeomClass { GC_sphere = 0, GC_box, GC_capped_cylinder, GC_cylinder, GC_plane, GC_ray, GC_tri_mesh = 8, GC_simple_space = 10, GC_hash_space, GC_quad_tree_space } |
Public Member Functions | |
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. | |
void | clear_offset () |
int | compare_to (const OdeGeom &other) const |
OdeBoxGeom | convert_to_box () const |
OdeCappedCylinderGeom | convert_to_capped_cylinder () const |
OdeCylinderGeom | convert_to_cylinder () const |
OdeHashSpace | convert_to_hash_space () const |
OdePlaneGeom | convert_to_plane () const |
OdeQuadTreeSpace | convert_to_quad_tree_space () const |
OdeRayGeom | convert_to_ray () const |
OdeSimpleSpace | convert_to_simple_space () const |
OdeSphereGeom | convert_to_sphere () const |
OdeTriMeshGeom | convert_to_tri_mesh () const |
void | destroy () |
void | disable () |
void | enable () |
virtual TypeHandle | force_init_type () |
void | get_AABB (LVecBase3f &min, LVecBase3f &max) const |
int | get_best_parent_from_Set (const std::set< int > &) const |
OdeBody | get_body () const |
BitMask32 | get_category_bits () |
int | get_class () const |
BitMask32 | get_collide_bits () |
dGeomID | get_id () const |
Returns the underlying dGeomID. | |
LPoint3f | get_offset_position () const |
LQuaternionf | get_offset_quaternion () const |
LMatrix3f | get_offset_rotation () const |
LPoint3f | get_position () const |
LQuaternionf | get_quaternion () const |
LMatrix3f | get_rotation () const |
OdeSpace | get_space () 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 | has_body () const |
bool | is_empty () const |
Returns true if the ID is 0, meaning the OdeGeom does not point to a valid geom. | |
int | is_enabled () |
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. | |
int | is_offset () |
int | is_space () |
operator bool () const | |
void | operator delete (void *ptr, void *) |
void | operator delete (void *ptr) |
void | operator delete[] (void *ptr) |
void | operator delete[] (void *, void *) |
void * | operator new (size_t size, void *ptr) |
void * | operator new (size_t size) |
void * | operator new[] (size_t size, void *ptr) |
void * | operator new[] (size_t size) |
void | set_body (OdeBody &body) |
void | set_category_bits (const BitMask32 &bits) |
void | set_collide_bits (const BitMask32 &bits) |
void | set_offset_position (const LVecBase3f &pos) |
void | set_offset_position (dReal x, dReal y, dReal z) |
void | set_offset_quaternion (const LQuaternionf &q) |
void | set_offset_rotation (const LMatrix3f &r) |
void | set_offset_world_position (dReal x, dReal y, dReal z) |
void | set_offset_world_position (const LVecBase3f &pos) |
void | set_offset_world_quaternion (const LQuaternionf &q) |
void | set_offset_world_rotation (const LMatrix3f &r) |
void | set_position (const LVecBase3f &pos) |
void | set_position (dReal x, dReal y, dReal z) |
void | set_quaternion (const LQuaternionf &q) |
void | set_rotation (const LMatrix3f &r) |
virtual void | write (ostream &out=cout, unsigned int indent=0) const |
Static Public Member Functions | |
static TypeHandle | get_class_type () |
static int | get_geom_class () |
static void | init_type () |
This function is declared non-inline to work around a compiler bug in g++ 2.96. | |
Protected Member Functions | |
OdeGeom (dGeomID id) | |
Protected Attributes | |
dGeomID | _id |
Friends | |
class | OdeCollisionEntry |
class | OdeContactGeom |
class | OdeSpace |
class | OdeUtil |
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.
dGeomID OdeGeom::get_id | ( | ) | const [inline] |
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 OdeGeom::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.
Reimplemented in OdeBoxGeom, OdeCappedCylinderGeom, OdeConvexGeom, OdeCylinderGeom, OdeHeightfieldGeom, OdePlaneGeom, OdeRayGeom, OdeSphereGeom, and OdeTriMeshGeom.
Definition at line 153 of file odeGeom.h.
References OdeCollisionEntry::init_type().
Referenced by OdeTriMeshGeom::init_type(), OdeSphereGeom::init_type(), OdeSpace::init_type(), OdeSimpleSpace::init_type(), OdeRayGeom::init_type(), OdeQuadTreeSpace::init_type(), OdePlaneGeom::init_type(), OdeHeightfieldGeom::init_type(), OdeHashSpace::init_type(), OdeCylinderGeom::init_type(), OdeConvexGeom::init_type(), OdeCappedCylinderGeom::init_type(), and OdeBoxGeom::init_type().
bool OdeGeom::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().