JuliaGeometry / DelaunayTriangulation.jl

Delaunay triangulations and Voronoi tessellations in two dimensions.
https://juliageometry.github.io/DelaunayTriangulation.jl/
MIT License
60 stars 5 forks source link

Add `clean!(::Triangulation)` and `clean!(::VoronoiTessellation)` (with better names) #116

Closed DanielVandH closed 1 month ago

DanielVandH commented 2 months ago

These methods would redefine the connectivities and the point lists so that only points in the triangulation/tessellation are included in the connectivities. It would also remove any empty features like in https://github.com/JuliaGeometry/DelaunayTriangulation.jl/blob/d3bdb2e9d5518bf00748e26a1d28b745289ed082/src/algorithms/triangulation/basic_operations/clear_empty_features.jl

cc: @juliohm

DanielVandH commented 2 months ago

Might not be able to do this in-place since not every users point set will be mutable. Maybe just make two methods repair and repair!, where repair will recreate the triangulation and make a new point set as a vector of tuples

DanielVandH commented 2 months ago

Repair is a bad name incase I want to implement e.g. shewchuks repair algorithm for perturbed data