Developer Documentation
|
Public Types | |
typedef BSPTraits | Traits |
typedef BSPTraits::Point | Point |
typedef BSPTraits::Handle | Handle |
typedef BSPTraits::Node | Node |
typedef Point::value_type | Scalar |
typedef ACG::Geometry::PlaneT< Scalar > | Plane |
typedef std::vector< Handle > | Handles |
typedef Handles::iterator | HandleIter |
Public Member Functions | |
TriangleBSPCoreT (const BSPTraits &_traits) | |
~TriangleBSPCoreT () | |
Destructor. More... | |
void | reserve (size_t _n) |
Reserve memory for _n entries. More... | |
void | push_back (Handle _h) |
Add a handle to the BSP. More... | |
bool | empty () |
size_t | size () |
void | build (unsigned int _max_handles, unsigned int _max_depth) |
template<typename MeshT > | |
void | visualizeTree (MeshT *_object, int _max_depth) |
Create a PolyMesh object that visualizes the bounding boxes of the BSP tree. More... | |
Protected Attributes | |
BSPTraits | traits_ |
Handles | handles_ |
Node * | root_ |
int | nodes |
int | n_triangles |
Private Member Functions | |
TriangleBSPCoreT (const TriangleBSPCoreT &rhs) | |
TriangleBSPCoreT & | operator= (const TriangleBSPCoreT &rhs) |
void | _build (Node *_node, unsigned int _max_handles, unsigned int _depth) |
Definition at line 67 of file TriangleBSPCoreT.hh.
typedef BSPTraits::Handle TriangleBSPCoreT< BSPTraits >::Handle |
Definition at line 73 of file TriangleBSPCoreT.hh.
typedef Handles::iterator TriangleBSPCoreT< BSPTraits >::HandleIter |
Definition at line 78 of file TriangleBSPCoreT.hh.
typedef std::vector<Handle> TriangleBSPCoreT< BSPTraits >::Handles |
Definition at line 77 of file TriangleBSPCoreT.hh.
typedef BSPTraits::Node TriangleBSPCoreT< BSPTraits >::Node |
Definition at line 74 of file TriangleBSPCoreT.hh.
typedef ACG::Geometry::PlaneT<Scalar> TriangleBSPCoreT< BSPTraits >::Plane |
Definition at line 76 of file TriangleBSPCoreT.hh.
typedef BSPTraits::Point TriangleBSPCoreT< BSPTraits >::Point |
Definition at line 72 of file TriangleBSPCoreT.hh.
typedef Point::value_type TriangleBSPCoreT< BSPTraits >::Scalar |
Definition at line 75 of file TriangleBSPCoreT.hh.
typedef BSPTraits TriangleBSPCoreT< BSPTraits >::Traits |
Definition at line 71 of file TriangleBSPCoreT.hh.
|
inlineexplicit |
Constructor: need traits that define the types and give us the points by traits_.point(PointHandle)
Definition at line 86 of file TriangleBSPCoreT.hh.
|
inline |
Destructor.
Definition at line 89 of file TriangleBSPCoreT.hh.
|
private |
Definition at line 85 of file TriangleBSPCoreT_impl.hh.
void TriangleBSPCoreT< BSPTraits >::build | ( | unsigned int | _max_handles, |
unsigned int | _max_depth | ||
) |
Build the tree.
_max_handles | Maximum number of vertices per leaf. |
_max_depth | Maximum depth. |
Definition at line 62 of file TriangleBSPCoreT_impl.hh.
|
inline |
Definition at line 102 of file TriangleBSPCoreT.hh.
|
inline |
Add a handle to the BSP.
Definition at line 97 of file TriangleBSPCoreT.hh.
|
inline |
Reserve memory for _n entries.
Definition at line 95 of file TriangleBSPCoreT.hh.
|
inline |
Definition at line 107 of file TriangleBSPCoreT.hh.
|
inline |
Create a PolyMesh object that visualizes the bounding boxes of the BSP tree.
_object | The output mesh which the tree will be written into |
_max_depth | The maximal depth that will be visualized |
Definition at line 122 of file TriangleBSPCoreT.hh.
|
protected |
Definition at line 151 of file TriangleBSPCoreT.hh.
|
protected |
Definition at line 153 of file TriangleBSPCoreT.hh.
|
protected |
Definition at line 153 of file TriangleBSPCoreT.hh.
|
protected |
Definition at line 152 of file TriangleBSPCoreT.hh.
|
protected |
Definition at line 150 of file TriangleBSPCoreT.hh.