#include <base.h>
Classes | |
| class | AABBBinaryTreeNode |
Public Types | |
| typedef AABBBinaryTree < OBJTYPE, SCALARTYPE, NODEAUXDATATYPE > | ClassType |
| typedef Point3< ScalarType > | CoordType |
| typedef NODEAUXDATATYPE | NodeAuxDataType |
| typedef AABBBinaryTreeNode | NodeType |
| typedef ObjType * | ObjPtr |
| typedef std::vector< ObjPtr > | ObjPtrVector |
| typedef ObjPtrVector::const_iterator | ObjPtrVectorConstIterator |
| typedef ObjPtrVector::iterator | ObjPtrVectorIterator |
| typedef OBJTYPE | ObjType |
| typedef SCALARTYPE | ScalarType |
Public Member Functions | |
| AABBBinaryTree (void) | |
| void | Clear (void) |
| template<class OBJITERATOR , class OBJITERATORPTRFUNCT , class OBJBOXFUNCT , class OBJBARYCENTERFUNCT > | |
| bool | Set (const OBJITERATOR &oBegin, const OBJITERATOR &oEnd, OBJITERATORPTRFUNCT &objPtr, OBJBOXFUNCT &objBox, OBJBARYCENTERFUNCT &objBarycenter, const unsigned int maxElemsPerLeaf=1, const ScalarType &leafBoxMaxVolume=((ScalarType) 0), const bool useVariance=true) |
| ~AABBBinaryTree (void) | |
Public Attributes | |
| ObjPtrVector | pObjects |
| NodeType * | pRoot |
Static Protected Member Functions | |
| template<class OBJBARYCENTERFUNCT > | |
| static int | BalanceMedian (const ObjPtrVectorIterator &oBegin, const ObjPtrVectorIterator &oEnd, const int size, const int splitAxis, OBJBARYCENTERFUNCT &getBarycenter, ObjPtrVectorIterator &medianIter) |
| template<class OBJBOXFUNCT , class OBJBARYCENTERFUNCT > | |
| static NodeType * | BoundObjects (const ObjPtrVectorIterator &oBegin, const ObjPtrVectorIterator &oEnd, const unsigned int size, const unsigned int maxElemsPerLeaf, const ScalarType &leafBoxMaxVolume, const bool useVariance, OBJBOXFUNCT &getBox, OBJBARYCENTERFUNCT &getBarycenter) |
Definition at line 55 of file vcg/space/index/aabb_binary_tree/base.h.
| typedef AABBBinaryTree<OBJTYPE, SCALARTYPE, NODEAUXDATATYPE> vcg::AABBBinaryTree< OBJTYPE, SCALARTYPE, NODEAUXDATATYPE >::ClassType |
Definition at line 57 of file vcg/space/index/aabb_binary_tree/base.h.
| typedef Point3<ScalarType> vcg::AABBBinaryTree< OBJTYPE, SCALARTYPE, NODEAUXDATATYPE >::CoordType |
Definition at line 62 of file vcg/space/index/aabb_binary_tree/base.h.
| typedef NODEAUXDATATYPE vcg::AABBBinaryTree< OBJTYPE, SCALARTYPE, NODEAUXDATATYPE >::NodeAuxDataType |
Definition at line 61 of file vcg/space/index/aabb_binary_tree/base.h.
| typedef AABBBinaryTreeNode vcg::AABBBinaryTree< OBJTYPE, SCALARTYPE, NODEAUXDATATYPE >::NodeType |
Definition at line 113 of file vcg/space/index/aabb_binary_tree/base.h.
| typedef ObjType* vcg::AABBBinaryTree< OBJTYPE, SCALARTYPE, NODEAUXDATATYPE >::ObjPtr |
Definition at line 59 of file vcg/space/index/aabb_binary_tree/base.h.
| typedef std::vector<ObjPtr> vcg::AABBBinaryTree< OBJTYPE, SCALARTYPE, NODEAUXDATATYPE >::ObjPtrVector |
Definition at line 64 of file vcg/space/index/aabb_binary_tree/base.h.
| typedef ObjPtrVector::const_iterator vcg::AABBBinaryTree< OBJTYPE, SCALARTYPE, NODEAUXDATATYPE >::ObjPtrVectorConstIterator |
Definition at line 66 of file vcg/space/index/aabb_binary_tree/base.h.
| typedef ObjPtrVector::iterator vcg::AABBBinaryTree< OBJTYPE, SCALARTYPE, NODEAUXDATATYPE >::ObjPtrVectorIterator |
Definition at line 65 of file vcg/space/index/aabb_binary_tree/base.h.
| typedef OBJTYPE vcg::AABBBinaryTree< OBJTYPE, SCALARTYPE, NODEAUXDATATYPE >::ObjType |
Definition at line 58 of file vcg/space/index/aabb_binary_tree/base.h.
| typedef SCALARTYPE vcg::AABBBinaryTree< OBJTYPE, SCALARTYPE, NODEAUXDATATYPE >::ScalarType |
Definition at line 60 of file vcg/space/index/aabb_binary_tree/base.h.
| vcg::AABBBinaryTree< OBJTYPE, SCALARTYPE, NODEAUXDATATYPE >::AABBBinaryTree | ( | void | ) | [inline] |
Definition at line 137 of file vcg/space/index/aabb_binary_tree/base.h.
| vcg::AABBBinaryTree< OBJTYPE, SCALARTYPE, NODEAUXDATATYPE >::~AABBBinaryTree | ( | void | ) | [inline] |
Definition at line 143 of file vcg/space/index/aabb_binary_tree/base.h.
| int vcg::AABBBinaryTree< OBJTYPE, SCALARTYPE, NODEAUXDATATYPE >::BalanceMedian | ( | const ObjPtrVectorIterator & | oBegin, |
| const ObjPtrVectorIterator & | oEnd, | ||
| const int | size, | ||
| const int | splitAxis, | ||
| OBJBARYCENTERFUNCT & | getBarycenter, | ||
| ObjPtrVectorIterator & | medianIter | ||
| ) | [inline, static, protected] |
Definition at line 274 of file vcg/space/index/aabb_binary_tree/base.h.
| AABBBinaryTree< OBJTYPE, SCALARTYPE, NODEAUXDATATYPE >::NodeType * vcg::AABBBinaryTree< OBJTYPE, SCALARTYPE, NODEAUXDATATYPE >::BoundObjects | ( | const ObjPtrVectorIterator & | oBegin, |
| const ObjPtrVectorIterator & | oEnd, | ||
| const unsigned int | size, | ||
| const unsigned int | maxElemsPerLeaf, | ||
| const ScalarType & | leafBoxMaxVolume, | ||
| const bool | useVariance, | ||
| OBJBOXFUNCT & | getBox, | ||
| OBJBARYCENTERFUNCT & | getBarycenter | ||
| ) | [inline, static, protected] |
Definition at line 178 of file vcg/space/index/aabb_binary_tree/base.h.
| void vcg::AABBBinaryTree< OBJTYPE, SCALARTYPE, NODEAUXDATATYPE >::Clear | ( | void | ) | [inline] |
Definition at line 149 of file vcg/space/index/aabb_binary_tree/base.h.
| bool vcg::AABBBinaryTree< OBJTYPE, SCALARTYPE, NODEAUXDATATYPE >::Set | ( | const OBJITERATOR & | oBegin, |
| const OBJITERATOR & | oEnd, | ||
| OBJITERATORPTRFUNCT & | objPtr, | ||
| OBJBOXFUNCT & | objBox, | ||
| OBJBARYCENTERFUNCT & | objBarycenter, | ||
| const unsigned int | maxElemsPerLeaf = 1, |
||
| const ScalarType & | leafBoxMaxVolume = ((ScalarType)0), |
||
| const bool | useVariance = true |
||
| ) | [inline] |
Definition at line 157 of file vcg/space/index/aabb_binary_tree/base.h.
| ObjPtrVector vcg::AABBBinaryTree< OBJTYPE, SCALARTYPE, NODEAUXDATATYPE >::pObjects |
Definition at line 115 of file vcg/space/index/aabb_binary_tree/base.h.
| NodeType* vcg::AABBBinaryTree< OBJTYPE, SCALARTYPE, NODEAUXDATATYPE >::pRoot |
Definition at line 116 of file vcg/space/index/aabb_binary_tree/base.h.