diff --git a/AABB_tree/include/CGAL/AABB_tree.h b/AABB_tree/include/CGAL/AABB_tree.h index 0e6ca291047..8e977c76f57 100644 --- a/AABB_tree/include/CGAL/AABB_tree.h +++ b/AABB_tree/include/CGAL/AABB_tree.h @@ -185,7 +185,7 @@ namespace CGAL { clear_nodes(); m_primitives.clear(); clear_search_tree(); - m_default_search_tree_constructed = m_use_lazy_kd_tree; + m_default_search_tree_constructed = true; } /// Returns the axis-aligned bounding box of the whole tree. @@ -440,7 +440,6 @@ public: /// returns `true` iff successful memory allocation bool accelerate_distance_queries() const; ///Turns off the lazy construction of the internal search tree. - /// Must be called before the first distance query. void do_not_accelerate_distance_queries() const; /// Constructs an internal KD-tree containing the specified point @@ -593,7 +592,6 @@ public: // search KD-tree mutable const Search_tree* m_p_search_tree; mutable bool m_search_tree_constructed; - mutable bool m_use_lazy_kd_tree; mutable bool m_default_search_tree_constructed; // indicates whether the internal kd-tree should be built bool m_need_build; @@ -614,7 +612,6 @@ public: , m_p_root_node(nullptr) , m_p_search_tree(nullptr) , m_search_tree_constructed(false) - , m_use_lazy_kd_tree(true) , m_default_search_tree_constructed(true) , m_need_build(false) {} @@ -629,7 +626,6 @@ public: , m_p_root_node(nullptr) , m_p_search_tree(nullptr) , m_search_tree_constructed(false) - , m_use_lazy_kd_tree(true) , m_default_search_tree_constructed(true) , m_need_build(false) { @@ -760,7 +756,6 @@ public: void AABB_tree::do_not_accelerate_distance_queries()const { clear_search_tree(); - m_use_lazy_kd_tree = false; m_default_search_tree_constructed = false; } diff --git a/Surface_mesh_segmentation/include/CGAL/internal/Surface_mesh_segmentation/SDF_calculation.h b/Surface_mesh_segmentation/include/CGAL/internal/Surface_mesh_segmentation/SDF_calculation.h index 5c07db3255c..58d85972962 100644 --- a/Surface_mesh_segmentation/include/CGAL/internal/Surface_mesh_segmentation/SDF_calculation.h +++ b/Surface_mesh_segmentation/include/CGAL/internal/Surface_mesh_segmentation/SDF_calculation.h @@ -171,9 +171,11 @@ public: if(!test) tree.insert(Primitive(it, mesh, vertex_point_map)); } + if(!build_kd_tree) { + tree.do_not_accelerate_distance_queries(); + } tree.build(); - if(use_diagonal) { CGAL::Bbox_3 bbox = tree.bbox(); max_diagonal =