- use the Has_timestamp operator in Compact_container
- add partial specialization to classes that need the time stamp (i.e.
Mesh_vertex_base, Compact_mesh_cell_base_3 and Mesh_cell_base_3)
- remove "ts" from classes where they were actually needed for compilation
purpose only (i.e. Kd_tree_node and Triangulation_ds_cell_base_3)
- rename "ts" to time_stamp_
incremental neighbor search classes were storing a nested ref_counted iterator
for begin() which implies that a call to operator++ on a copy of an iterator
increment the internal copy of the class (cannot make several pass).
There is still a problem in case of copy outside of the class but this is
a first step (a deep_copy method should be provided for iterators which would
need a small feature).
remove all mutable member variable and leave only one const_cast in the kd-kdtree private function
const_build. This function is called in const predicates when the tree is not already internally built.
The documentation has been update and a few typos fixed at the same time.
Fuzzy_sphere_3<Search_traits> tried to use Point_d::dimension(), instead of
using Search_traits::Construct_cartesian_const_iterator_d. With a custom
Point_d, there was a compilation error.
This was done so that an assertion of Orthogonal_incremental_nearest_neighbor does
not fail in case new_off == old_off (when using floating point arithmetic).
handle case when kdtree is empty for all 4 nearest neighbor search method
correct sort method of bounded_priority_queue (was sorting the complete vector even if not full)
==> fix the crash when k > nb input points
Modify test suite to handle these particular cases
Use the bounded_priority_queue inside Orthogonal_k_neighbor search
and K_neighbor_search, a maximum of code is now shared by these two classes.
This reduces computation time and memory needed.
Extend the interface: to save time the sequence k-nearest neighbors
can be sorted (default) or not.
Add a new test that ensures all methods find the same kth closest neighbor.
Update manual.