KrisLibrary  1.0.0
Public Member Functions | Public Attributes | List of all members
RandomBestPointLocation Class Reference

The approximate O(k) point location algorithm that returns the closest of k randomly chosen points. More...

#include <PointLocation.h>

Inheritance diagram for RandomBestPointLocation:
PointLocationBase

Public Member Functions

 RandomBestPointLocation (std::vector< Vector > &points, CSpace *_space, int k=1)
 
virtual void OnBuild ()
 Call this when the point list is completely changed.
 
virtual void OnAppend ()
 Call this when something is appended to the point list.
 
virtual bool OnDelete (int id)
 
virtual bool OnClear ()
 Call this when the point list is cleared.
 
virtual bool Exact ()
 Subclass returns true if this is exact nearest neighbors.
 
virtual bool NN (const Vector &p, int &nn, Real &distance)
 
virtual bool KNN (const Vector &p, int k, std::vector< int > &nn, std::vector< Real > &distances)
 
virtual bool FilteredNN (const Vector &p, bool(*filter)(int), int &nn, Real &distance)
 Same as NN, but with a filter.
 
virtual bool FilteredKNN (const Vector &p, int k, bool(*filter)(int), std::vector< int > &nn, std::vector< Real > &distances)
 Same as KNN, but with a filter.
 
- Public Member Functions inherited from PointLocationBase
 PointLocationBase (std::vector< Vector > &_points)
 
virtual bool Close (const Vector &p, Real r, std::vector< int > &neighbors, std::vector< Real > &distances)
 
virtual bool FilteredClose (const Vector &p, Real r, bool(*filter)(int), std::vector< int > &neighbors, std::vector< Real > &distances)
 Same as close, but with a filter.
 

Public Attributes

CSpacespace
 
int k
 
- Public Attributes inherited from PointLocationBase
std::vector< Vector > & points
 

Detailed Description

The approximate O(k) point location algorithm that returns the closest of k randomly chosen points.

Member Function Documentation

bool RandomBestPointLocation::KNN ( const Vector p,
int  k,
std::vector< int > &  nn,
std::vector< Real > &  distances 
)
virtual

Call this to retrieve the indices of the k-nearest neighbors and their distances. Subclasses should return false if KNN queries are not supported.

Reimplemented from PointLocationBase.

References Math::RandInt().

bool RandomBestPointLocation::NN ( const Vector p,
int &  nn,
Real &  distance 
)
virtual

Call this to retrieve the index of the nearest neighbor and its distance. Subclasses should return false if NN queries are not supported.

Reimplemented from PointLocationBase.

References Math::RandInt().

virtual bool RandomBestPointLocation::OnDelete ( int  id)
inlinevirtual

Call this when an index is deleted from the point list. Subclasses should return false if deletion is not supported

Reimplemented from PointLocationBase.


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