#include <KdTree.hpp>
Public Types | |
using | Base = NodeBase< typename details::select< PD, NodeSimple< TTraits, PD > >::type, TTraits::Dimension > |
using | DerivedType = typename details::select< PD, NodeSimple< TTraits, PD > >::type |
using | Traits = TTraits |
Public Types inherited from ApproxMVBB::KdTree::NodeBase< details::select< PD, NodeSimple< TTraits, PD > >::type, TTraits::Dimension > | |
using | BoundaryInfoType = BoundaryInformation |
using | DerivedNode = details::select< PD, NodeSimple< TTraits, PD > >::type |
using | SplitAxisType = char |
Public Member Functions | |
const BoundaryInfoType & | getBoundaries () const |
BoundaryInfoType & | getBoundaries () |
NodeSimple () | |
NodeSimple (std::size_t idx, const AABB< Dimension > &aabb) | |
NodeSimple (NodeSimple &&t) | |
NodeSimple (const NodeSimple &t) | |
template<typename T > | |
NodeSimple (const Node< T > &t) | |
template<typename T , typename NodeVector > | |
void | setup (const Node< T > *t, const NodeVector &nodes) |
Public Member Functions inherited from ApproxMVBB::KdTree::NodeBase< details::select< PD, NodeSimple< TTraits, PD > >::type, TTraits::Dimension > | |
AABB< Dimension > & | aabb () |
const AABB< Dimension > & | aabb () const |
std::size_t | getIdx () const |
unsigned int | getLevel () const |
SplitAxisType | getSplitAxis () const |
PREC | getSplitPosition () const |
PREC | getSplitRatio () const |
bool | hasChildren () const |
bool | hasLeftChildren () const |
bool | isLeaf () const |
DerivedNode * | leftNode () |
const DerivedNode * | leftNode () const |
NodeBase () | |
NodeBase (std::size_t idx, const AABB< Dimension > &aabb, unsigned int treeLevel=0) | |
NodeBase (const NodeBase< Derived, Dimension > &n) | |
NodeBase (NodeBase< Derived, Dimension > &&n) | |
DerivedNode * | parent () |
const DerivedNode * | parent () const |
DerivedNode * | rightNode () |
const DerivedNode * | rightNode () const |
void | setChilds (DerivedNode *r, DerivedNode *l) |
void | setIdx (std::size_t i) |
void | setLevel (unsigned int l) const |
void | setSplitAxis (SplitAxisType splitAxis) |
void | setSplitPosition (PREC splitPos) |
~NodeBase () | |
Protected Attributes | |
Base::BoundaryInfoType | m_bound |
Protected Attributes inherited from ApproxMVBB::KdTree::NodeBase< details::select< PD, NodeSimple< TTraits, PD > >::type, TTraits::Dimension > | |
AABB< Dimension > | m_aabb |
std::array< DerivedNode *, 2 > | m_child |
std::size_t | m_idx |
node index More... | |
DerivedNode * | m_parent |
SplitAxisType | m_splitAxis |
-1 indicates leaf node More... | |
PREC | m_splitPosition |
unsigned int | m_treeLevel |
Friends | |
template<typename T > | |
class | TreeBase |
Additional Inherited Members | |
Protected Member Functions inherited from ApproxMVBB::KdTree::NodeBase< details::select< PD, NodeSimple< TTraits, PD > >::type, TTraits::Dimension > | |
NodeBase (std::size_t idx, const AABB< Dimension > &aabb, SplitAxisType axis, PREC splitPos) | |
Definition at line 918 of file KdTree.hpp.
using ApproxMVBB::KdTree::NodeSimple< TTraits, PD >::Base = NodeBase< typename details::select<PD, NodeSimple<TTraits,PD> >::type , TTraits::Dimension> |
Definition at line 924 of file KdTree.hpp.
using ApproxMVBB::KdTree::NodeSimple< TTraits, PD >::DerivedType = typename details::select<PD, NodeSimple<TTraits,PD> >::type |
Definition at line 925 of file KdTree.hpp.
using ApproxMVBB::KdTree::NodeSimple< TTraits, PD >::Traits = TTraits |
Definition at line 922 of file KdTree.hpp.
|
inline |
Definition at line 948 of file KdTree.hpp.
|
inline |
Definition at line 949 of file KdTree.hpp.
|
inline |
Definition at line 950 of file KdTree.hpp.
|
inline |
Definition at line 951 of file KdTree.hpp.
|
inlineexplicit |
Copy values from TreeNode<T>, only Base class does copy
Definition at line 955 of file KdTree.hpp.
|
inline |
Definition at line 1005 of file KdTree.hpp.
|
inline |
Definition at line 1006 of file KdTree.hpp.
|
inline |
Setup node from some other node t
, with a node pointer list nodes
(continous index ordered)!
Definition at line 963 of file KdTree.hpp.
Definition at line 935 of file KdTree.hpp.
|
protected |
Boundary information which is empty for non-leaf nodes Pointer which point to the subtrees min/max for each dimension
Definition at line 941 of file KdTree.hpp.