Efficient Delaunay triangulation using rational arithmetic
- 3 January 1991
- journal article
- Published by Association for Computing Machinery (ACM) in ACM Transactions on Graphics
- Vol. 10 (1) , 71-91
- https://doi.org/10.1145/99902.99905
Abstract
Many fundamental tests performed by geometric algorithms can be formulated in terms of finding the sign of a determinant. When these tests are implemented using fixed precision arithmetic such as floating point, they can produce incorrect answers; when they are implemented using arbitrary-precision arithmetic, they are expensive to compute. We present adaptive-precision algorithms for finding the signs of determinants of matrices with integer and rational elements. These algorithms were developed and tested by integrating them into the Guibas-Stolfi Delaunay triangulation algorithm. Through a combination of algorithm design and careful engineering of the implementation, the resulting program can triangulate a set of random rational points in the unit circle only four to five times slower than can a floating-point implementation of the algorithm. The algorithms, engineering process, and software tools developed are described.Keywords
This publication has 8 references indexed in Scilit:
- On finite-precision representations of geometric objectsJournal of Computer and System Sciences, 1989
- The problems of accuracy and robustness in geometric computationComputer, 1989
- Verifiable implementations of geometric algorithms using finite precision arithmeticArtificial Intelligence, 1988
- Towards implementing robust geometric computationsPublished by Association for Computing Machinery (ACM) ,1988
- Recipes for geometry and numerical analysis - Part I: an empirical studyPublished by Association for Computing Machinery (ACM) ,1988
- Partitioning polyhedral objects into nonintersecting partsIEEE Computer Graphics and Applications, 1988
- Primitives for the manipulation of general subdivisions and the computation of VoronoiACM Transactions on Graphics, 1985
- Interval Methods for Processing Geometric ObjectsIEEE Computer Graphics and Applications, 1984