Commit Graph

52 Commits

Author SHA1 Message Date
Marc Glisse d1b461350b Incomplete renaming in last changes... 2016-11-25 15:29:47 +01:00
Marc Glisse 36af1c17f4 Let remove() take a functor as argument. 2016-10-27 23:17:42 +02:00
Marc Glisse df573404d0 Merge branch 'Spatial_searching-misc-glisse-old' into Spatial_searching-misc-glisse 2016-10-26 11:12:04 +02:00
Marc Glisse 3038832982 Handle insert-after-remove in Kd_tree.
Untested.
2016-10-26 11:02:41 +02:00
Marc Glisse a1c231737b Rewrite to handle points on the boundary that may be on either side. 2016-08-25 19:39:58 +02:00
Sébastien Loriot 849c097cfd A possible fix for further neighbor search
if we want to keep using tigh bbox we need more double per node
2016-06-03 16:40:13 +02:00
Marc Glisse 6815316c9f Let it compile... 2016-04-10 15:23:24 +02:00
Marc Glisse d9d1c79f28 Point removal in kd-tree. 2016-04-07 16:05:21 +02:00
Andreas Fabri 6b2c4dd7c6 Merge branch 'CGLAL-thread_local_storage-GF-old' into CGLAL-thread_local_storage-GF 2015-11-09 14:26:42 +01:00
Andreas Fabri 34099dfe3a replace pair<Point,bool> wiyh optional<Point> 2015-09-26 10:42:27 +02:00
Andreas Fabri 482ea27103 Add Kd_tree.search_any_point(Point_d,FuzzyQueryItem) 2015-09-23 11:17:58 +02:00
Andreas Fabri c3ad989c9f Use wrapper for the very basic mutex locking 2015-09-04 09:46:51 +02:00
Andreas Fabri 2694a6faf5 Do not #include Memory_size.h as it includes windows.h with nasty #defines
It was introduced for Kd_tree::statistics(0 by Markus
2015-01-16 08:48:13 +01:00
Andreas Fabri c2edcbc1ba Kd_tree::search now returns the correct iterator 2015-01-14 14:58:35 +01:00
Andreas Fabri 5adf8e388c Workaround for boost::container::deque; 1 bug fix 2015-01-09 10:23:32 +01:00
Sébastien Loriot d3fb97b74b factorise the checking for the nested type Dimension 2015-01-09 10:19:48 +01:00
Andreas Fabri 2dcecc137e remove extra ';' after a macro 2015-01-08 09:51:33 +01:00
Andreas Fabri 8d86f77cbc remove unused parameters; int -> ptrdiff_t 2015-01-07 12:05:53 +01:00
m.overtheil 61f642bde6 Changed order of nodes in deque
Fixed example with user defined point.
Fixed weighted minkowski distance.
2014-12-16 11:49:15 +01:00
m.overtheil df6cd26804 Replaced std::container with boost container
Also changed stored ints to uint32_t
2014-12-12 10:24:56 +01:00
m.overtheil ddf4b932b0 Replaced separator for better memory alignment 2014-12-11 15:56:26 +01:00
m.overtheil eecc4b480e Fixed deleted double indirection 2014-12-08 15:37:23 +01:00
m.overtheil 53aecd416f Deleted double indirection 2014-12-08 12:10:52 +01:00
m.overtheil af343d926e Added new traversal rule and dists vector to Orthogonal search
Functions min_dist_to_rectangle and max... have an overload with
std::vector<FT>& dists now. That is required for ortho searches, so
we have no backwards compatibility.
The values for extended internal nodes have also been changed.
2014-12-02 10:36:36 +01:00
m.overtheil 9da9cff768 Merge branch 'Spatial_searching-Rectangle_compiletimeD-gf' into Spatial_searching-final_acceleration-gf
Conflicts:
	Spatial_searching/benchmark/Spatial_searching/nn3cgal.cpp
	Spatial_searching/include/CGAL/Kd_tree.h
	Spatial_searching/include/CGAL/Kd_tree_node.h
2014-11-28 13:10:08 +01:00
m.overtheil d22d78a04f Reorder pts vector for spatial locality
IMPORTANT: This only works for point types with a
default constructor! Added that in the test.
2014-11-28 12:42:19 +01:00
m.overtheil 32877332ec Reorder pts vector
NO WORKING CODE! Just for my synchronisytion
2014-11-28 09:28:51 +01:00
m.overtheil cb4f9c3521 Divided Kd_tree_node into internal and leaf node
The Kd_tree_node now has two derived classes Kd_tree_internal_node
and Kd_tree_leaf_node. This commit is tested under Windows x64
2014-11-27 15:42:18 +01:00
m.overtheil afd47e07ee Started to divide Kd_tree_node in two types
NO WORKING CODE! Commit is just for my own synchronisation
2014-11-26 16:03:57 +01:00
m.overtheil 87aa5ad7c3 Moved to namespace internal,renamed HAS_DIMENSION to HAS_DIMENSION_TAG 2014-11-03 13:33:49 +01:00
m.overtheil 9a7660b6fa Added compatibility for traits without dimension_tag 2014-11-03 11:15:49 +01:00
m.overtheil 8f94bc329b Replaced all int dimension with dimension_tags 2014-10-31 15:02:04 +01:00
Eric Berberich 9d8a02aa46 rephrased documentation for capacity in Kd_tree 2014-03-28 14:50:18 +01:00
Waqar Khan 98e6007dd3 * Added the capacity() function to the Kd_tree.h and also added its documentation
* Added a test that checks the reserve() and capacity() function for Kd_tree
2014-03-26 18:02:04 +01:00
Eric Berberich 85894658ef fixed copyright headers 2014-03-10 00:03:24 +01:00
Waqar Khan 1c355ef42a 1. "Snap_rounding_traits_2.h" "Snap_rounding_kd_2.h" "Kd_tree.h" "snap_rounding_data.cpp", Changed the File header signature to match the templated signatures.
2. Made the required changes in the concepts i.e. in "Snap_rounding_2/doc/Snap_rounding_2/Concepts/SnapRoundingTraits_2.h"
 3. Added documentation for the reserve() method of Kd_tree
 4. Deleted the un maintained olk kd_tree package
2014-03-07 16:13:44 +01:00
Waqar Khan 0e14493632 1. "snap_rounding_data.cpp" Added Example usage in-code documentation. Removed the timer that recorded the amount of time taken by the snap_rounding. The timer was initally added to test the snap rounding running time difference using new Kd_trees
2. "Snap_rounding_kd_2.h" "Snap_rounding_traits_2.h" Added documentation and changed Copyright information and authors appropriately.
3. "kd_tree.h" Renamed the reserve_to_capacity() to reserve().
4. Snap_rounding_kd_new.h deleted
2014-03-01 18:58:40 +01:00
Waqar Khan b46b37e7b2 reserve_to_capacity() method for Kd_tree.h that pre-allocated memory for points added. New Snap_rounding example added where the input data is taken from a file. Snap_rounding_kd_2.h modified to use the reserve_to_capacity method before creating the kd_tree. This improves the running time. 2014-02-18 01:41:44 +01:00
Laurent Rineau 8f59fd9592 Turn QPL into LGPLv3+ 2012-01-13 16:33:35 +00:00
Andreas Fabri 28cac7eaaa Introduce size_type as return type for Kd_tree::size() 2011-11-21 12:47:57 +00:00
Sébastien Loriot 751f3ba08b the class Kd_tree is now read-only thread-safe using a mutex. 2011-09-08 16:12:51 +00:00
Sébastien Loriot 37b02012b6 fix const-correctness issue in the spatial searching package. In particular this
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.
2011-09-07 09:04:52 +00:00
Laurent Rineau 369498d1e5 Cancel revision 64607. There had been a problem with the branch.
| ------------------------------------------------------------------------
  | r64607 | efif | 2011-07-05 17:27:04 +0200 (Tue, 05 Jul 2011) | 1 line
  | 
  | Merged feature-branch Aos_2-new_functors-tau into next
  | ------------------------------------------------------------------------
2011-07-06 11:11:58 +00:00
Andreas Fabri 0c7b263dee avoid log N reallocation steps when inserting N objects in a std::vector and add typedef Traits 2010-09-23 13:52:01 +00:00
Sébastien Loriot 975843b44e add clear function that was documented but not implemented 2010-08-18 08:41:40 +00:00
Andreas Fabri 8f720d178f int -> size_t 2010-06-22 10:34:02 +00:00
Sébastien Loriot 961b9d8557 add empty() method to kdtree
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
2010-05-11 12:52:53 +00:00
Sylvain Pion ef264999b3 Renaming of Compact_container's construct_insert() to emplace() to match C++0x.
It breaks backward compat, but I doubt many people use Compact_container directly.
Make it use variadic templates, while at it.
2007-10-20 20:51:59 +00:00
Andreas Fabri 88d0413012 allow empty tree and fix search for empty tree 2007-05-02 08:28:37 +00:00
Laurent Saboret db6a8f948c Change CVS keywords to SVN style 2006-02-16 14:30:13 +00:00