Triangulating multiply-connected polygons: A simple, yet efficient algorithm.
Abstract
We present a new, simple, yet efficient algorithm for triangulating multiply-connected polygons. The algorithm requires sorting only local concave minima (sags). The order in which triangles are created mimics a flooding process of the interior of the polygon. At each stage, the algorithm analyses the positions and neighborhoods of two vertices only, and possibly checks for active sags, so as to determine which of five possible actions to take. Actions are based on a local decomposition of the polygon into monotonic regions, or gorges (raise the water level in the current gorge, spill into an adjacent gorge, jump to the other bank of a filled gorge, divide a gorge into two, and fill a gorge to its top). The implementation is extremely simple and numerically robust for a large class of polygons. It has been tested on millions of cases as a preprocessing step of a walkthrough and inspection program for complex mechanical and architectural scenes. Extensive experimental results indicate that the observed complexity in terms of the number of vertices, remains under in all cases.
BibTeX
@article {10.1111:1467-8659.1330281,
journal = {Computer Graphics Forum},
title = {{Triangulating multiply-connected polygons: A simple, yet efficient algorithm.}},
author = {Ronfard, Remi P. and Rossignac, Jarek R.},
year = {1994},
publisher = {Blackwell Science Ltd and the Eurographics Association},
ISSN = {1467-8659},
DOI = {10.1111/1467-8659.1330281}
}
journal = {Computer Graphics Forum},
title = {{Triangulating multiply-connected polygons: A simple, yet efficient algorithm.}},
author = {Ronfard, Remi P. and Rossignac, Jarek R.},
year = {1994},
publisher = {Blackwell Science Ltd and the Eurographics Association},
ISSN = {1467-8659},
DOI = {10.1111/1467-8659.1330281}
}