35 #ifndef LVR2_RECONSTRUCTION_SEARCHTREEFLANN_HPP_ 36 #define LVR2_RECONSTRUCTION_SEARCHTREEFLANN_HPP_ 41 #include <flann/flann.hpp> 48 using std::unique_ptr;
59 template<
typename BaseVecT>
63 using CoordT =
typename BaseVecT::CoordType;
78 vector<size_t>& indices,
79 vector<CoordT>& distances
86 vector<size_t>& indices
90 const BaseVecT* query,
100 unique_ptr<flann::Index<flann::L2_Simple<CoordT>>>
m_tree;
107 #include "lvr2/reconstruction/SearchTreeFlann.tcc" SearchTreeFlann(PointBufferPtr buffer)
Takes the point-data and initializes the underlying searchtree.
boost::shared_array< CoordT > m_data
typename BaseVecT::CoordType CoordT
std::shared_ptr< PointBuffer > PointBufferPtr
SearchClass for point data.
virtual int kSearch(const BaseVecT &qp, int k, vector< size_t > &indices, vector< CoordT > &distances) const override
See interface documentation.
virtual void radiusSearch(const BaseVecT &qp, CoordT r, vector< size_t > &indices) const override
See interface documentation.
void kSearchMany(const BaseVecT *query, int n, int k, size_t *indices, CoordT *distances) const
Abstract interface for storing and searching through a set of points. Query functions for nearest nei...
unique_ptr< flann::Index< flann::L2_Simple< CoordT > > > m_tree
The FLANN search tree structure.