JuliaGeometry / DelaunayTriangulation.jl

DelaunayTriangulation.jl: A Julia package for Delaunay triangulations and Voronoi tessellations in the plane
https://juliageometry.github.io/DelaunayTriangulation.jl/
MIT License
67 stars 6 forks source link

Letting users opt out of ExactPredicates? #122

Closed DanielVandH closed 3 months ago

DanielVandH commented 3 months ago

Should there be an option to allow users to opt out of ExactPredicates? It's a risky option but maybe if user's trust there are no issues with their data then it isn't too bad to let them do it. Could help users get more performance, e.g. in the case of https://github.com/DanielVandH/NaturalNeighbours.jl/issues/34.

Not sure the best way to do this without worsening performance in general from the predicate functions having to do a check of whether exact predicates are allowed. I guess this is the point of Preferences.jl.

DanielVandH commented 3 months ago

I also note that, if we let this be an option, it needs to be made extremely clear to the users what the consequences could be. Infinite loops are likely to occur when dealing with cocircular point sets, collinear edges, and points that are extremely close to each other.