|
Alexandria 2.31.2
SDC-CH common library for the Euclid project
|


Public Types | |
| using | Traits |
Public Types inherited from KdTree::KdTree< T, DistanceMethod >::Node< T, DistanceMethod > | |
| using | Traits |
Public Member Functions | |
| virtual | ~Split ()=default |
| Split (std::size_t dimensionality, std::size_t leaf_size, std::vector< T > data, size_t axis) | |
| void | findPointsWithinRadius (const T &coord, double radius, std::vector< T > &selection) const override |
| std::size_t | countPointsWithinRadius (const T &coord, double radius) const override |
| KdTree (const std::vector< T > &data, std::size_t leaf_size=100) | |
| std::vector< T > | findPointsWithinRadius (const T &coord, double radius) const |
| std::size_t | countPointsWithinRadius (const T &coord, double radius) const |
Public Member Functions inherited from KdTree::KdTree< T, DistanceMethod >::Node< T, DistanceMethod > | |
| virtual | ~Node ()=default |
| KdTree (const std::vector< T > &data, std::size_t leaf_size=100) | |
| std::vector< T > | findPointsWithinRadius (const T &coord, double radius) const |
| std::size_t | countPointsWithinRadius (const T &coord, double radius) const |
Private Attributes | |
| size_t | m_axis |
| double | m_split_value |
| std::shared_ptr< Node > | m_left_child |
| std::shared_ptr< Node > | m_right_child |
| std::size_t | m_dimensionality |
| std::shared_ptr< Node > | m_root |
Definition at line 60 of file KdTree.icpp.
| using KdTree::KdTree< T, DistanceMethod >::Traits |
|
virtualdefault |
|
inlineexplicit |
Definition at line 63 of file KdTree.icpp.
References std::vector< T >::at(), std::vector< T >::begin(), std::vector< T >::end(), KdTree::KdTreeTraits< T >::getCoord(), m_axis, std::vector< T >::size(), and std::sort().

|
virtual |
Count how many points are within the given radius from the coordonate coord
| coord | |
| radius |
Implements KdTree::KdTree< T, DistanceMethod >::Node< T, DistanceMethod >.
Definition at line 88 of file KdTree.icpp.
|
inlineoverridevirtual |
Implements KdTree::KdTree< T, DistanceMethod >::Node< T, DistanceMethod >.
Definition at line 103 of file KdTree.icpp.
References KdTree::KdTreeTraits< T >::getCoord(), m_axis, m_left_child, m_right_child, and m_split_value.

| std::vector< T > KdTree::KdTree< T, DistanceMethod >::findPointsWithinRadius | ( | const T & | coord, |
| double | radius ) const |
Return the points that are within the given radius from the coordinate coord
| coord | |
| radius |
Definition at line 80 of file KdTree.icpp.
|
inlineoverridevirtual |
Implements KdTree::KdTree< T, DistanceMethod >::Node< T, DistanceMethod >.
Definition at line 92 of file KdTree.icpp.
References KdTree::KdTreeTraits< T >::getCoord(), m_axis, m_left_child, m_right_child, and m_split_value.

|
explicit |
Definition at line 72 of file KdTree.icpp.
|
private |
Definition at line 115 of file KdTree.icpp.
Referenced by countPointsWithinRadius(), findPointsWithinRadius(), and Split().
|
private |
|
private |
Definition at line 118 of file KdTree.icpp.
Referenced by countPointsWithinRadius(), and findPointsWithinRadius().
|
private |
Definition at line 119 of file KdTree.icpp.
Referenced by countPointsWithinRadius(), and findPointsWithinRadius().
|
private |
|
private |
Definition at line 116 of file KdTree.icpp.
Referenced by countPointsWithinRadius(), and findPointsWithinRadius().