Tracking changes in Delaunay triangulation when inserting new points in CGAL

Advertisements

I am using CGAL’s Delaunay triangulation in 2D to construct a triangulation from a set of points. However, I want to track the changes in the triangulation that occur when inserting new points. Specifically, I want to identify which faces (triangles) have been removed from the triangulation and which faces have been newly added.

I have been exploring the CGAL documentation and examples, but I haven’t found a built-in feature or method that directly provides this information. Is there a straightforward way to achieve this in CGAL?

Ideally, I would like to have a mechanism that allows me to access the faces that have been removed and the faces that have been added after each point insertion. This would help me understand the dynamic nature of the triangulation and update any relevant data structures or algorithms based on these changes.

I have considered creating a copy of the triangulation before and after each point insertion and manually comparing the faces, but this approach seems inefficient and cumbersome, particularly for large triangulations involving gigabytes of data.

Is there a more efficient and direct approach to track these changes? Are there any CGAL classes or methods specifically designed for this purpose? Any guidance or code examples would be greatly appreciated.

>Solution :

You can use an alternative insertion method for points: detect the conflict zone of the point, remove faces and star the hole. New faces while be incident to edges of the boundary of the hole. See the following example:

https://doc.cgal.org/latest/Triangulation_2/Triangulation_2_2star_conflict_zone_8cpp-example.html#_a1

Leave a ReplyCancel reply