CGAL/cgal

Delaunay-based range_search improvements

mglisse opened this issue · 0 comments

Issue Details

Redundancy

Point_set_2.h and range_search_delaunay_2.h seem to contain very redundant code (though they have diverged a bit), compare the codes starting at

if (number_of_vertices() == 0) return res;

if (delau.number_of_vertices() == 0) return res;

Unnecessary mutation

In order to find the points in a disk, the code inserts the center in the triangulation, then walks on the graph, and finally removes the center from the triangulation. We have functions to compute the conflict zone of a point without actually inserting it, I believe they should be sufficient to seed the graph walk.

Dimension

This is currently implemented for Triangulation_2 and Triangulation_d, but not Triangulation_3 or Triangulation.

Environment

  • CGAL version: master 2024-09-04