27#ifndef EASY3D_KD_TREE_SEARCH_ETH_H
28#define EASY3D_KD_TREE_SEARCH_ETH_H
30#include <easy3d/kdtree/kdtree_search.h>
92 std::vector<int> &neighbors, std::vector<float> &squared_distances
102 const vec3 &p,
int k,
103 std::vector<int> &neighbors
120 const vec3 &p,
float squared_radius,
121 std::vector<int> &neighbors, std::vector<float> &squared_distances
131 const vec3 &p,
float squared_radius,
132 std::vector<int> &neighbors
155 const vec3 &p1,
const vec3 &p2,
float radius,
156 std::vector<int> &neighbors, std::vector<float> &squared_distances,
173 const vec3 &p1,
const vec3 &p2,
float radius,
174 std::vector<int> &neighbors,
199 const vec3 &eye,
const vec3 &p1,
const vec3 &p2,
float angle_range,
200 std::vector<int> &neighbors, std::vector<float> &squared_distances,
218 const vec3 &eye,
const vec3 &p1,
const vec3 &p2,
float angle_range,
219 std::vector<int> &neighbors,
bool bToLine =
true
224 unsigned int points_num_;
KdTree implementation based on Richard Keiser's KdTree code.
Definition: kdtree_search_eth.h:42
KdTreeSearch_ETH(const PointCloud *cloud)
Constructor.
Definition: kdtree_search_eth.cpp:38
void find_points_in_range(const vec3 &p, float squared_radius, std::vector< int > &neighbors, std::vector< float > &squared_distances) const override
Queries the nearest neighbors within a fixed range.
Definition: kdtree_search_eth.cpp:150
int find_points_in_cylinder(const vec3 &p1, const vec3 &p2, float radius, std::vector< int > &neighbors, std::vector< float > &squared_distances, bool bToLine=true) const
Queries the nearest neighbors within a cylinder range.
Definition: kdtree_search_eth.cpp:166
int find_points_in_cone(const vec3 &eye, const vec3 &p1, const vec3 &p2, float angle_range, std::vector< int > &neighbors, std::vector< float > &squared_distances, bool bToLine=true) const
Queries the nearest neighbors within a cone.
Definition: kdtree_search_eth.cpp:207
void find_closest_k_points(const vec3 &p, int k, std::vector< int > &neighbors, std::vector< float > &squared_distances) const override
Queries the K nearest neighbors for a given point.
Definition: kdtree_search_eth.cpp:115
int find_closest_point(const vec3 &p, float &squared_distance) const override
Queries the closest point for a given point.
Definition: kdtree_search_eth.cpp:80
Base class for nearest neighbor search using KdTree.
Definition: kdtree_search.h:80
A data structure for point clouds.
Definition: point_cloud.h:45
Definition: collider.cpp:182