Public Member Functions | Protected Member Functions | Private Attributes | List of all members
lvr2::KDNode Class Reference
Inheritance diagram for lvr2::KDNode:
Inheritance graph
[legend]

Public Member Functions

 KDNode (int axis, double split, KDTreePtr &lesser, KDTreePtr &greater)
 
- Public Member Functions inherited from lvr2::KDTree
template<typename T >
bool nearestNeighbor (const Vector3< T > &point, Neighbor &neighbor, double &distance, double maxDistance=std::numeric_limits< double >::infinity()) const
 Finds the nearest neighbor of 'point' that is within 'maxDistance' (defaults to infinity). The resulting neighbor is written into 'neighbor' (or nullptr if none is found). More...
 
virtual ~KDTree ()=default
 

Protected Member Functions

virtual void nnInternal (const Point &point, Neighbor &neighbor, double &maxDist) const override
 
- Protected Member Functions inherited from lvr2::KDTree
 KDTree ()=default
 
 KDTree (const KDTree &&)=delete
 

Private Attributes

int axis
 
KDTreePtr greater
 
KDTreePtr lesser
 
double split
 

Additional Inherited Members

- Public Types inherited from lvr2::KDTree
using KDTreePtr = std::shared_ptr< KDTree >
 
using Neighbor = Point *
 
using Point = Vector3< PointT >
 
using PointT = float
 
- Static Public Member Functions inherited from lvr2::KDTree
static std::shared_ptr< KDTreecreate (SLAMScanPtr scan, int maxLeafSize=20)
 Creates a new KDTree from the given Scan. More...
 
static size_t nearestNeighbors (KDTreePtr tree, SLAMScanPtr scan, KDTree::Neighbor *neighbors, double maxDistance)
 Finds the nearest neighbors of all points in a Scan using a pre-generated KDTree. More...
 
static size_t nearestNeighbors (KDTreePtr tree, SLAMScanPtr scan, Neighbor *neighbors, double maxDistance, Vector3d &centroid_m, Vector3d &centroid_d)
 Finds the nearest neighbors of all points in a Scan using a pre-generated KDTree. More...
 
- Protected Attributes inherited from lvr2::KDTree
boost::shared_array< Pointpoints
 

Detailed Description

Definition at line 40 of file KDTree.cpp.

Constructor & Destructor Documentation

◆ KDNode()

lvr2::KDNode::KDNode ( int  axis,
double  split,
KDTreePtr lesser,
KDTreePtr greater 
)
inline

Definition at line 43 of file KDTree.cpp.

Member Function Documentation

◆ nnInternal()

virtual void lvr2::KDNode::nnInternal ( const Point point,
Neighbor neighbor,
double &  maxDist 
) const
inlineoverrideprotectedvirtual

Implements lvr2::KDTree.

Definition at line 48 of file KDTree.cpp.

Member Data Documentation

◆ axis

int lvr2::KDNode::axis
private

Definition at line 70 of file KDTree.cpp.

◆ greater

KDTreePtr lvr2::KDNode::greater
private

Definition at line 73 of file KDTree.cpp.

◆ lesser

KDTreePtr lvr2::KDNode::lesser
private

Definition at line 72 of file KDTree.cpp.

◆ split

double lvr2::KDNode::split
private

Definition at line 71 of file KDTree.cpp.


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 Wed Mar 2 2022 00:37:27