Panda3D
|
Public Member Functions | |
CollisionPlane (const LPlane &plane) | |
CollisionPlane (const CollisionPlane ©) | |
PN_stdfloat | dist_to_plane (const LPoint3 &point) const |
void | flip () |
Convenience method to flip the plane in-place. | |
virtual TypeHandle | force_init_type () |
virtual LPoint3 | get_collision_origin () const |
Returns the point in space deemed to be the "origin" of the solid for collision purposes. | |
LVector3 | get_normal () const |
const LPlane & | get_plane () const |
virtual PStatCollector & | get_test_pcollector () |
Returns a PStatCollector that is used to count the number of intersection tests made against a solid of this type in a given frame. | |
virtual TypeHandle | get_type () const |
virtual PStatCollector & | get_volume_pcollector () |
Returns a PStatCollector that is used to count the number of bounding volume tests made against a solid of this type in a given frame. | |
virtual CollisionSolid * | make_copy () |
virtual void | output (ostream &out) const |
void | set_plane (const LPlane &plane) |
virtual void | write_datagram (BamWriter *manager, Datagram &me) |
Function to write the important information in the particular object to a Datagram. | |
virtual void | xform (const LMatrix4 &mat) |
Transforms the solid by the indicated matrix. | |
Static Public Member Functions | |
static void | flush_level () |
Flushes the PStatCollectors used during traversal. | |
static TypeHandle | get_class_type () |
static void | init_type () |
static TypedWritable * | make_CollisionPlane (const FactoryParams ¶ms) |
Factory method to generate a CollisionPlane object. | |
static void | register_with_read_factory () |
Factory method to generate a CollisionPlane object. | |
Protected Member Functions | |
CollisionPlane () | |
This is only for the convenience of CollisionPolygon. | |
virtual void | fill_viz_geom () |
Fills the _viz_geom GeomNode up with Geoms suitable for rendering this solid. | |
void | fillin (DatagramIterator &scan, BamReader *manager) |
Function that reads out of the datagram (or asks manager to read) all of the data that is needed to re-create this object and stores it in the appropiate place. | |
virtual | PT (BoundingVolume) compute_internal_bounds() const |
virtual | PT (CollisionEntry) test_intersection_from_sphere(const CollisionEntry &entry) const |
virtual | PT (CollisionEntry) test_intersection_from_line(const CollisionEntry &entry) const |
virtual | PT (CollisionEntry) test_intersection_from_ray(const CollisionEntry &entry) const |
virtual | PT (CollisionEntry) test_intersection_from_segment(const CollisionEntry &entry) const |
virtual | PT (CollisionEntry) test_intersection_from_parabola(const CollisionEntry &entry) const |
Definition at line 29 of file collisionPlane.h.
CollisionPlane::CollisionPlane | ( | ) | [inline, protected] |
This is only for the convenience of CollisionPolygon.
Normally, you should not attempt to create an uninitialized CollisionPlane.
Definition at line 24 of file collisionPlane.I.
Referenced by make_CollisionPlane().
void CollisionPlane::fill_viz_geom | ( | ) | [protected, virtual] |
Fills the _viz_geom GeomNode up with Geoms suitable for rendering this solid.
Reimplemented from CollisionSolid.
Reimplemented in CollisionPolygon.
Definition at line 399 of file collisionPlane.cxx.
References GeomVertexWriter::add_data3(), GeomVertexFormat::get_v3(), and LVecBase3f::normalize().
void CollisionPlane::fillin | ( | DatagramIterator & | scan, |
BamReader * | manager | ||
) | [protected, virtual] |
Function that reads out of the datagram (or asks manager to read) all of the data that is needed to re-create this object and stores it in the appropiate place.
Reimplemented from CollisionSolid.
Reimplemented in CollisionPolygon.
Definition at line 502 of file collisionPlane.cxx.
Referenced by make_CollisionPlane().
void CollisionPlane::flip | ( | ) | [inline] |
Convenience method to flip the plane in-place.
Definition at line 109 of file collisionPlane.I.
void CollisionPlane::flush_level | ( | ) | [inline, static] |
Flushes the PStatCollectors used during traversal.
Reimplemented in CollisionPolygon.
Definition at line 56 of file collisionPlane.I.
LPoint3 CollisionPlane::get_collision_origin | ( | ) | const [virtual] |
Returns the point in space deemed to be the "origin" of the solid for collision purposes.
The closest intersection point to this origin point is considered to be the most significant.
Implements CollisionSolid.
Reimplemented in CollisionPolygon.
Definition at line 71 of file collisionPlane.cxx.
References LPoint3f::origin().
PStatCollector & CollisionPlane::get_test_pcollector | ( | ) | [virtual] |
Returns a PStatCollector that is used to count the number of intersection tests made against a solid of this type in a given frame.
Reimplemented from CollisionSolid.
Reimplemented in CollisionPolygon, and CollisionGeom.
Definition at line 98 of file collisionPlane.cxx.
PStatCollector & CollisionPlane::get_volume_pcollector | ( | ) | [virtual] |
Returns a PStatCollector that is used to count the number of bounding volume tests made against a solid of this type in a given frame.
Reimplemented from CollisionSolid.
Reimplemented in CollisionPolygon, and CollisionGeom.
Definition at line 86 of file collisionPlane.cxx.
TypedWritable * CollisionPlane::make_CollisionPlane | ( | const FactoryParams & | params | ) | [static] |
Factory method to generate a CollisionPlane object.
Definition at line 514 of file collisionPlane.cxx.
References CollisionPlane(), and fillin().
Referenced by register_with_read_factory().
void CollisionPlane::register_with_read_factory | ( | ) | [static] |
Factory method to generate a CollisionPlane object.
Reimplemented in CollisionPolygon.
Definition at line 531 of file collisionPlane.cxx.
References BamReader::get_factory(), make_CollisionPlane(), and Factory< Type >::register_factory().
void CollisionPlane::write_datagram | ( | BamWriter * | manager, |
Datagram & | me | ||
) | [virtual] |
Function to write the important information in the particular object to a Datagram.
Reimplemented from CollisionSolid.
Reimplemented in CollisionPolygon.
Definition at line 487 of file collisionPlane.cxx.
void CollisionPlane::xform | ( | const LMatrix4 & | mat | ) | [virtual] |
Transforms the solid by the indicated matrix.
Reimplemented from CollisionSolid.
Reimplemented in CollisionPolygon.
Definition at line 57 of file collisionPlane.cxx.