cheshirekow
v0.1.0
|
performs search for k-NN within a ball at a specified center and radius More...
#include <mpblocks/kd_tree/euclidean/KNearestBallCenter.h>
Public Types | |
typedef Allocator< Key_t > | Allocator_t |
typedef Distance< Traits > | Distance_t |
typedef Traits::Format_t | Format_t |
typedef HyperRect< Traits > | HyperRect_t |
typedef Key< Traits > | Key_t |
typedef Key_t::Compare | KeyCompare_t |
typedef Traits::Node | Node_t |
typedef Eigen::Matrix < Format_t, Traits::NDim, 1 > | Point_t |
typedef std::set< Key_t, KeyCompare_t, Allocator_t > | PQueue_t |
Public Types inherited from mpblocks::kd_tree::NearestSearchIface< Traits > | |
typedef Traits::Format_t | Format_t |
typedef Traits::HyperRect | HyperRect_t |
typedef Traits::Node | Node_t |
typedef Vector_t | Point_t |
typedef Eigen::Matrix < Format_t, Traits::NDim, 1 > | Vector_t |
Public Member Functions | |
virtual void | evaluate (const Point_t &q, const Point_t &p, Node_t *n) |
calculates Euclidean distance from q to p , and if its less than the current best replaces the current best node with n More... | |
KNearestBallCenter (const Point_t ¢er=Point_t::Zero(), Format_t radius=1, unsigned int k=1) | |
void | reset (const Point_t ¢er, Format_t radius, unsigned int k) |
resets the search for the specified point More... | |
void | reset () |
resets the queue but leaves active center and radius More... | |
const PQueue_t & | result () |
virtual bool | shouldRecurse (const Point_t &q, const HyperRect_t &r) |
evaluate the Euclidean distance from q to it's closest point in r and if that distance is less than the current best distance, return true More... | |
virtual | ~KNearestBallCenter () |
Public Member Functions inherited from mpblocks::kd_tree::NearestSearchIface< Traits > | |
virtual | ~NearestSearchIface () |
just ensure virtualness More... | |
Protected Attributes | |
Point_t | m_center |
the center of the ball More... | |
Distance_t | m_dist2 |
distance computation More... | |
unsigned int | m_k |
number of nearest nodes to find More... | |
PQueue_t | m_queue |
k nearest nodes More... | |
Format_t | m_radius |
max radius to search More... | |
performs search for k-NN within a ball at a specified center and radius
Definition at line 39 of file KNearestBallCenter.h.
typedef Allocator<Key_t> mpblocks::kd_tree::euclidean::KNearestBallCenter< Traits, Allocator >::Allocator_t |
Definition at line 50 of file KNearestBallCenter.h.
typedef Distance<Traits> mpblocks::kd_tree::euclidean::KNearestBallCenter< Traits, Allocator >::Distance_t |
Definition at line 46 of file KNearestBallCenter.h.
typedef Traits::Format_t mpblocks::kd_tree::euclidean::KNearestBallCenter< Traits, Allocator >::Format_t |
Definition at line 43 of file KNearestBallCenter.h.
typedef HyperRect<Traits> mpblocks::kd_tree::euclidean::KNearestBallCenter< Traits, Allocator >::HyperRect_t |
Definition at line 47 of file KNearestBallCenter.h.
typedef Key<Traits> mpblocks::kd_tree::euclidean::KNearestBallCenter< Traits, Allocator >::Key_t |
Definition at line 48 of file KNearestBallCenter.h.
typedef Key_t::Compare mpblocks::kd_tree::euclidean::KNearestBallCenter< Traits, Allocator >::KeyCompare_t |
Definition at line 49 of file KNearestBallCenter.h.
typedef Traits::Node mpblocks::kd_tree::euclidean::KNearestBallCenter< Traits, Allocator >::Node_t |
Definition at line 44 of file KNearestBallCenter.h.
typedef Eigen::Matrix<Format_t,Traits::NDim,1> mpblocks::kd_tree::euclidean::KNearestBallCenter< Traits, Allocator >::Point_t |
Definition at line 52 of file KNearestBallCenter.h.
typedef std::set<Key_t,KeyCompare_t,Allocator_t> mpblocks::kd_tree::euclidean::KNearestBallCenter< Traits, Allocator >::PQueue_t |
Definition at line 53 of file KNearestBallCenter.h.
mpblocks::kd_tree::euclidean::KNearestBallCenter< Traits, Allocator >::KNearestBallCenter | ( | const Point_t & | center = Point_t::Zero() , |
Format_t | radius = 1 , |
||
unsigned int | k = 1 |
||
) |
Definition at line 38 of file KNearestBallCenter.hpp.
|
inlinevirtual |
Definition at line 68 of file KNearestBallCenter.h.
|
virtual |
calculates Euclidean distance from q
to p
, and if its less than the current best replaces the current best node with n
Implements mpblocks::kd_tree::NearestSearchIface< Traits >.
Definition at line 83 of file KNearestBallCenter.hpp.
void mpblocks::kd_tree::euclidean::KNearestBallCenter< Traits, Allocator >::reset | ( | const Point_t & | center, |
Format_t | radius, | ||
unsigned int | k | ||
) |
resets the search for the specified point
Definition at line 50 of file KNearestBallCenter.hpp.
void mpblocks::kd_tree::euclidean::KNearestBallCenter< Traits, Allocator >::reset | ( | ) |
resets the queue but leaves active center and radius
Definition at line 65 of file KNearestBallCenter.hpp.
const KNearestBallCenter< Traits, Allocator >::PQueue_t & mpblocks::kd_tree::euclidean::KNearestBallCenter< Traits, Allocator >::result | ( | ) |
Definition at line 75 of file KNearestBallCenter.hpp.
|
virtual |
evaluate the Euclidean distance from q
to it's closest point in r
and if that distance is less than the current best distance, return true
Implements mpblocks::kd_tree::NearestSearchIface< Traits >.
Definition at line 108 of file KNearestBallCenter.hpp.
|
protected |
the center of the ball
Definition at line 57 of file KNearestBallCenter.h.
|
protected |
distance computation
Definition at line 60 of file KNearestBallCenter.h.
|
protected |
number of nearest nodes to find
Definition at line 56 of file KNearestBallCenter.h.
|
protected |
k nearest nodes
Definition at line 59 of file KNearestBallCenter.h.
|
protected |
max radius to search
Definition at line 58 of file KNearestBallCenter.h.