Public Member Functions | Private Member Functions | Private Attributes | List of all members
lvr2::DynamicKDTree< BaseVecT > Class Template Reference

#include <DynamicKDTree.hpp>

Public Member Functions

void deleteNode (BaseVecT point)
 
 DynamicKDTree (int k)
 
Index findNearest (BaseVecT point)
 
void insert (BaseVecT point, VertexHandle vH)
 
int size ()
 
 ~DynamicKDTree ()=default
 

Private Member Functions

bool arePointsSame (BaseVecT point1, BaseVecT point2)
 
void copyPoint (BaseVecT &p1, BaseVecT &p2)
 
Node< BaseVecT > * deleteNodeRec (Node< BaseVecT > *node, BaseVecT point, int depth)
 
Node< BaseVecT > * findMin (Node< BaseVecT > *node, int d)
 
Node< BaseVecT > * findMinRec (Node< BaseVecT > *node, int d, unsigned depth)
 
std::pair< Index, float > findNearestRec (Node< BaseVecT > *node, BaseVecT point, int depth, Index minDist, float minDistSq, BaseVecT currentBest)
 
Node< BaseVecT > * insertRec (Node< BaseVecT > *node, BaseVecT point, VertexHandle vH, unsigned int depth)
 
Node< BaseVecT > * minNode (Node< BaseVecT > *x, Node< BaseVecT > *y, Node< BaseVecT > *z, int d)
 
struct Node< BaseVecT > * newNode (BaseVecT point, VertexHandle vH)
 
int sizeRec (Node< BaseVecT > *node)
 

Private Attributes

int k
 
Node< BaseVecT > * root
 

Detailed Description

template<typename BaseVecT>
class lvr2::DynamicKDTree< BaseVecT >

Definition at line 19 of file DynamicKDTree.hpp.

Constructor & Destructor Documentation

◆ DynamicKDTree()

template<typename BaseVecT>
lvr2::DynamicKDTree< BaseVecT >::DynamicKDTree ( int  k)
inlineexplicit

Definition at line 60 of file DynamicKDTree.hpp.

◆ ~DynamicKDTree()

template<typename BaseVecT>
lvr2::DynamicKDTree< BaseVecT >::~DynamicKDTree ( )
default

Member Function Documentation

◆ arePointsSame()

template<typename BaseVecT>
bool lvr2::DynamicKDTree< BaseVecT >::arePointsSame ( BaseVecT  point1,
BaseVecT  point2 
)
inlineprivate

Definition at line 35 of file DynamicKDTree.hpp.

◆ copyPoint()

template<typename BaseVecT>
void lvr2::DynamicKDTree< BaseVecT >::copyPoint ( BaseVecT &  p1,
BaseVecT &  p2 
)
inlineprivate

Definition at line 40 of file DynamicKDTree.hpp.

◆ deleteNode()

template<typename BaseVecT>
void lvr2::DynamicKDTree< BaseVecT >::deleteNode ( BaseVecT  point)

◆ deleteNodeRec()

template<typename BaseVecT>
Node<BaseVecT>* lvr2::DynamicKDTree< BaseVecT >::deleteNodeRec ( Node< BaseVecT > *  node,
BaseVecT  point,
int  depth 
)
private

◆ findMin()

template<typename BaseVecT>
Node<BaseVecT>* lvr2::DynamicKDTree< BaseVecT >::findMin ( Node< BaseVecT > *  node,
int  d 
)
private

◆ findMinRec()

template<typename BaseVecT>
Node<BaseVecT>* lvr2::DynamicKDTree< BaseVecT >::findMinRec ( Node< BaseVecT > *  node,
int  d,
unsigned  depth 
)
private

◆ findNearest()

template<typename BaseVecT>
Index lvr2::DynamicKDTree< BaseVecT >::findNearest ( BaseVecT  point)

◆ findNearestRec()

template<typename BaseVecT>
std::pair<Index, float> lvr2::DynamicKDTree< BaseVecT >::findNearestRec ( Node< BaseVecT > *  node,
BaseVecT  point,
int  depth,
Index  minDist,
float  minDistSq,
BaseVecT  currentBest 
)
private

◆ insert()

template<typename BaseVecT>
void lvr2::DynamicKDTree< BaseVecT >::insert ( BaseVecT  point,
VertexHandle  vH 
)

◆ insertRec()

template<typename BaseVecT>
Node<BaseVecT>* lvr2::DynamicKDTree< BaseVecT >::insertRec ( Node< BaseVecT > *  node,
BaseVecT  point,
VertexHandle  vH,
unsigned int  depth 
)
private

◆ minNode()

template<typename BaseVecT>
Node<BaseVecT>* lvr2::DynamicKDTree< BaseVecT >::minNode ( Node< BaseVecT > *  x,
Node< BaseVecT > *  y,
Node< BaseVecT > *  z,
int  d 
)
private

◆ newNode()

template<typename BaseVecT>
struct Node< BaseVecT >* lvr2::DynamicKDTree< BaseVecT >::newNode ( BaseVecT  point,
VertexHandle  vH 
)
private

◆ size()

template<typename BaseVecT>
int lvr2::DynamicKDTree< BaseVecT >::size ( )

◆ sizeRec()

template<typename BaseVecT>
int lvr2::DynamicKDTree< BaseVecT >::sizeRec ( Node< BaseVecT > *  node)
private

Member Data Documentation

◆ k

template<typename BaseVecT>
int lvr2::DynamicKDTree< BaseVecT >::k
private

Definition at line 23 of file DynamicKDTree.hpp.

◆ root

template<typename BaseVecT>
Node<BaseVecT>* lvr2::DynamicKDTree< BaseVecT >::root
private

Definition at line 22 of file DynamicKDTree.hpp.


The documentation for this class was generated from the following file:


lvr2
Author(s): Thomas Wiemann , Sebastian Pütz , Alexander Mock , Lars Kiesow , Lukas Kalbertodt , Tristan Igelbrink , Johan M. von Behren , Dominik Feldschnieders , Alexander Löhr
autogenerated on Mon Feb 28 2022 22:46:11