Abstract
AbstractGeometric predicates are at the core of many algorithms, such as the construction of Delaunay triangulations, mesh processing and spatial relation tests. These algorithms have applications in scientific computing, geographic information systems and computer-aided design. With floating-point arithmetic, these geometric predicates can incur round-off errors that may lead to incorrect results and inconsistencies, causing computations to fail. This issue has been addressed using a combination of exact arithmetic for robustness and floating-point filters to mitigate the computational cost of exact computations. The implementation of exact computations and floating-point filters can be a difficult task, and code generation tools have been proposed to address this. We present a new C++ meta-programming framework for the generation of fast, robust predicates for arbitrary geometric predicates based on polynomial expressions. We combine and extend different approaches to filtering, branch reduction, and overflow avoidance that have previously been proposed. We show examples of how this approach produces correct results for data sets that could lead to incorrect predicate results with naive implementations. Our benchmark results demonstrate that our implementation surpasses state-of-the-art implementations.
Funder
Deutsche Forschungsgemeinschaft
Publisher
Springer Science and Business Media LLC
Subject
Applied Mathematics,Computational Mathematics,Computer Networks and Communications,Software
Reference34 articles.
1. Alliez, P., Jamin, C., Rineau, L., Tayeb, S., Tournois, J., Yvinec, M.: 3D mesh generation. In: CGAL User and Reference Manual, 5.4 edn. CGAL Editorial Board (2022). https://doc.cgal.org/5.4/Manual/packages.html#PkgMesh3
2. Attene, M.: Indirect predicates for geometric constructions. Comput. Aided Des. 126, 102,856 (2020). https://doi.org/10.1016/j.cad.2020.102856
3. Bartels, T., Fisikopoulos, V.: Fast robust arithmetics for geometric algorithms and applications to GIS. Int. Arch. Photogram. Remote Sens. Spatial Inf. Sci. XLVI–4/W2–2021, 1–8 (2021). https://doi.org/10.5194/isprs-archives-XLVI-4-W2-2021-1-2021
4. Bartels, T., Fisikopoulos, V., Weiser, M.: Fast floating-point filters for robust predicates (2023). https://doi.org/10.5281/zenodo.7539355
5. Berg, M.D., Cheong, O., Kreveld, M.V., Overmars, M.: Computational Geometry: Algorithms and Applications, 3rd edn. Springer-Verlag TELOS, Santa Clara (2008)