This class represents a solid object that can be traced through collision worlds, models and shapes. More...
#include "TraceSolid.hpp"
Classes | |
struct | EdgeT |
This struct describes an edge of a TraceSolidT. More... | |
Public Member Functions | |
TraceSolidT () | |
The constructor. More... | |
virtual | ~TraceSolidT () |
The virtual destructor. More... | |
BoundingBox3dT | GetBB () const |
Returns the bounding-box of (the vertices of) this solid. More... | |
virtual unsigned int | GetNumVertices () const =0 |
Returns the number of vertices of this solid. More... | |
virtual const Vector3dT * | GetVertices () const =0 |
Returns the vertices of this solid. More... | |
virtual unsigned int | GetNumPlanes () const =0 |
Returns the number of planes of this solid. More... | |
virtual const Plane3dT * | GetPlanes () const =0 |
Returns the planes of this solid. More... | |
virtual unsigned int | GetNumEdges () const =0 |
Returns the number of edges of this solid. More... | |
virtual const EdgeT * | GetEdges () const =0 |
Returns the edges of this solid. More... | |
This class represents a solid object that can be traced through collision worlds, models and shapes.
The shape of the object is defined as a convex polyhedron of arbitrary complexity. However, polyhedrons of the least possible complexity (regarding the number of vertices, planes and edges) are strongly preferable regarding performance considerations.
Moreover, the solids must be "well defined" without degeneracies. In particular, this means:
|
inline |
The constructor.
|
inlinevirtual |
The virtual destructor.
|
inline |
Returns the bounding-box of (the vertices of) this solid.
|
pure virtual |
Returns the edges of this solid.
Implemented in cf::ClipSys::TraceGenericT, cf::ClipSys::TraceBoxT, and cf::ClipSys::TracePointT.
|
pure virtual |
Returns the number of edges of this solid.
Implemented in cf::ClipSys::TraceGenericT, cf::ClipSys::TraceBoxT, and cf::ClipSys::TracePointT.
|
pure virtual |
Returns the number of planes of this solid.
Implemented in cf::ClipSys::TraceGenericT, cf::ClipSys::TraceBoxT, and cf::ClipSys::TracePointT.
|
pure virtual |
Returns the number of vertices of this solid.
Implemented in cf::ClipSys::TraceGenericT, cf::ClipSys::TraceBoxT, and cf::ClipSys::TracePointT.
|
pure virtual |
Returns the planes of this solid.
Implemented in cf::ClipSys::TraceGenericT, cf::ClipSys::TraceBoxT, and cf::ClipSys::TracePointT.
|
pure virtual |
Returns the vertices of this solid.
Implemented in cf::ClipSys::TraceGenericT, cf::ClipSys::TraceBoxT, and cf::ClipSys::TracePointT.