#include <kdtree_d.h>
Classes | |
class | Box |
class | ExtPoint |
class | Node |
Public Types | |
typedef Traits::Point | Point |
typedef std::vector< Point > | List_points |
typedef std::vector< Point > | list_points |
Public Member Functions | |
Kdtree_d (int k=2) | |
~Kdtree_d () | |
bool | is_valid (bool verbose=false, int level=0) const |
void | dump () |
void | delete_all () |
void | search (std::back_insert_iterator< list_points > result, Box &rect) |
void | build (std::vector< Point > &v) |
Private Types | |
typedef Point * | Point_ptr |
Private Member Functions | |
Node * | malloc_node (void) |
Node * | build_r (Point_ptr *arr, int left, int right, int d) |
Static Private Member Functions | |
static int | comp (const Point &a, const Point &b, int dim) |
static int | partition (Point_ptr *arr, int left, int right, Point *p_pivot, int dim) |
static void | split_arr (Point_ptr *arr, int left, int right, int pos_mid, int dim) |
static Point_ptr | get_max_element (Point_ptr *arr, int left, int right, int d) |
Private Attributes | |
int | size |
Point * | p_arr_pt |
Node * | root |
int | dim |
Node * | p_node_arr |
int | node_count |
Definition at line 138 of file kdtree_d.h.
typedef std::vector<Point> List_points |
Definition at line 143 of file kdtree_d.h.
typedef std::vector<Point> list_points |
Definition at line 933 of file kdtree_d.h.
typedef Traits::Point Point |
Definition at line 142 of file kdtree_d.h.
Definition at line 782 of file kdtree_d.h.
|
inlineexplicit |
Definition at line 935 of file kdtree_d.h.
References Kdtree_d< Traits >::dim, k, Kdtree_d< Traits >::p_arr_pt, Kdtree_d< Traits >::p_node_arr, and Kdtree_d< Traits >::root.
|
inline |
Definition at line 943 of file kdtree_d.h.
References Kdtree_d< Traits >::delete_all().
|
inline |
Definition at line 989 of file kdtree_d.h.
References Kdtree_d< Traits >::build_r(), i, j, Kdtree_d< Traits >::node_count, Kdtree_d< Traits >::p_arr_pt, Kdtree_d< Traits >::p_node_arr, Kdtree_d< Traits >::root, and Kdtree_d< Traits >::size.
Referenced by buildversionstring().
Definition at line 883 of file kdtree_d.h.
References Kdtree_d< Traits >::dim, Kdtree_d< Traits >::get_max_element(), Kdtree_d< Traits >::Node::left, Kdtree_d< Traits >::malloc_node(), n, Kdtree_d< Traits >::Node::plane, Kdtree_d< Traits >::Node::pnt, Kdtree_d< Traits >::Node::right, and Kdtree_d< Traits >::split_arr().
Referenced by Kdtree_d< Traits >::build().
Definition at line 807 of file kdtree_d.h.
References CGAL::compare().
Referenced by Kdtree_d< Traits >::get_max_element(), and Kdtree_d< Traits >::partition().
|
inline |
Definition at line 966 of file kdtree_d.h.
References Kdtree_d< Traits >::p_arr_pt, Kdtree_d< Traits >::p_node_arr, and Kdtree_d< Traits >::root.
Referenced by Kdtree_d< Traits >::~Kdtree_d().
|
inline |
Definition at line 961 of file kdtree_d.h.
References Kdtree_d< Traits >::Node::dump(), and Kdtree_d< Traits >::root.
|
inlinestaticprivate |
Definition at line 868 of file kdtree_d.h.
References Kdtree_d< Traits >::comp().
Referenced by Kdtree_d< Traits >::build_r().
|
inline |
Definition at line 949 of file kdtree_d.h.
References Kdtree_d< Traits >::Node::is_valid(), and Kdtree_d< Traits >::root.
|
inlineprivate |
Definition at line 792 of file kdtree_d.h.
References n, Kdtree_d< Traits >::node_count, Kdtree_d< Traits >::p_node_arr, and Kdtree_d< Traits >::size.
Referenced by Kdtree_d< Traits >::build_r().
|
inlinestaticprivate |
Definition at line 812 of file kdtree_d.h.
References Kdtree_d< Traits >::comp(), i, and j.
Referenced by Kdtree_d< Traits >::split_arr().
|
inline |
Definition at line 978 of file kdtree_d.h.
References Kdtree_d< Traits >::dim, Kdtree_d< Traits >::root, and Kdtree_d< Traits >::Node::search().
|
inlinestaticprivate |
Definition at line 845 of file kdtree_d.h.
References Kdtree_d< Traits >::partition().
Referenced by Kdtree_d< Traits >::build_r().
|
private |
Definition at line 787 of file kdtree_d.h.
Referenced by Kdtree_d< Traits >::build_r(), Kdtree_d< Traits >::Kdtree_d(), and Kdtree_d< Traits >::search().
|
private |
Definition at line 790 of file kdtree_d.h.
Referenced by Kdtree_d< Traits >::build(), and Kdtree_d< Traits >::malloc_node().
|
private |
Definition at line 785 of file kdtree_d.h.
Referenced by Kdtree_d< Traits >::build(), Kdtree_d< Traits >::delete_all(), and Kdtree_d< Traits >::Kdtree_d().
|
private |
Definition at line 789 of file kdtree_d.h.
Referenced by Kdtree_d< Traits >::build(), Kdtree_d< Traits >::delete_all(), Kdtree_d< Traits >::Kdtree_d(), and Kdtree_d< Traits >::malloc_node().
|
private |
Definition at line 786 of file kdtree_d.h.
Referenced by Kdtree_d< Traits >::build(), Kdtree_d< Traits >::delete_all(), Kdtree_d< Traits >::dump(), Kdtree_d< Traits >::is_valid(), Kdtree_d< Traits >::Kdtree_d(), and Kdtree_d< Traits >::search().
|
private |
Definition at line 784 of file kdtree_d.h.
Referenced by Kdtree_d< Traits >::build(), and Kdtree_d< Traits >::malloc_node().