37 #ifndef _PCL_GPU_OCTREE_
38 #define _PCL_GPU_OCTREE_
46 #include <pcl/gpu/containers/device_array.h>
47 #include <pcl/gpu/octree/device_format.hpp>
69 using Ptr = shared_ptr<Octree>;
111 int max_nn = std::numeric_limits<int>::max());
149 PCL_DEPRECATED(1, 14,
"use approxNearestSearch() which returns square distances instead")
PointCloud represents the base class in PCL for storing collections of 3D points.
Octree implementation on GPU.
bool isBuilt() const
Returns true if tree has been built.
void radiusSearchHost(const PointType ¢er, float radius, std::vector< int > &out, int max_nn=std::numeric_limits< int >::max())
Performs search of all points within given radius on CPU.
shared_ptr< Octree > Ptr
Types.
virtual ~Octree()
Denstructor.
void internalDownload()
Downloads Octree from GPU to search using CPU function.
void setCloud(const PointCloud &cloud_arg)
Sets cloud for which octree is built.
shared_ptr< const Octree > ConstPtr
void radiusSearch(const Queries ¢ers, const Indices &indices, float radius, int max_results, NeighborIndices &result) const
Performs batch radius search on GPU.
Octree()
Default constructor.
const PointCloud * cloud_
void approxNearestSearchHost(const PointType &query, int &out_index, float &sqr_dist)
Performs approximate nearest neighbor search on CPU.
void radiusSearch(const Queries ¢ers, const Radiuses &radiuses, int max_results, NeighborIndices &result) const
Performs batch radius search on GPU.
void build()
Performs parallel octree building.
void radiusSearch(const Queries ¢ers, float radius, int max_results, NeighborIndices &result) const
Performs batch radius search on GPU.
Defines all the PCL implemented PointT point type structures.
Defines functions, macros and traits for allocating and using memory.
PCL_EXPORTS void bruteForceRadiusSearchGPU(const Octree::PointCloud &cloud, const Octree::PointType &query, float radius, DeviceArray< int > &result, DeviceArray< int > &buffer)
Performs brute force radius search on GPU.
Defines all the PCL and non-PCL macros used.
#define PCL_DEPRECATED(Major, Minor, Message)
macro for compatibility across compilers and help remove old deprecated items for the Major....
A point structure representing Euclidean xyz coordinates.