Triangulating a simple polygon in linear time

We give a deterministic algorithm for triangulating a simple polygon in linear time. The basic strategy is to build a coarse approximation of a triangulation in a bottom-up phase and then use the information computed along the way to refine the triangulation in a top-down phase. The main tools used are the polygon-cutting theorem, which provides us with a balancing scheme, and the planar separator theorem, whose role is essential in the discovery of new diagonals. Only elementary data structures are required by the algorithm. In particular, no dynamic search trees, of our algorithm.

[1]  Alain Fournier,et al.  Triangulating Simple Polygons and Equivalent Problems , 1984, TOGS.

[2]  J. O'Rourke Art gallery theorems and algorithms , 1987 .

[3]  Leonidas J. Guibas,et al.  Primitives for the manipulation of general subdivisions and the computation of Voronoi diagrams , 1983, STOC.

[4]  R. Tarjan,et al.  A Separator Theorem for Planar Graphs , 1977 .

[5]  Herbert Edelsbrunner,et al.  Simulation of simplicity: a technique to cope with degenerate cases in geometric algorithms , 1988, SCG '88.

[6]  Leonidas J. Guibas,et al.  Optimal Shortest Path Queries in a Simple Polygon , 1989, J. Comput. Syst. Sci..

[7]  Kurt Mehlhorn,et al.  Sorting Jordan Sequences in Linear Time Using Level-Linked Search Trees , 1986, Inf. Control..

[8]  Chee-Keng Yap Geometric Consistency Theorem for a Symbolic Perturbation Scheme , 1990, J. Comput. Syst. Sci..

[9]  Bernard Chazelle,et al.  Triangulation and shape-complexity , 1984, TOGS.

[10]  Bruce G. Baumgart A polyhedron representation for computer vision , 1975, AFIPS '75.

[11]  Godfried T. Toussaint,et al.  On a convex hull algorithm for polygons and its application to triangulation problems , 1982, Pattern Recognit..

[12]  David G. Kirkpatrick,et al.  Polygon triangulation in O(n log log n) time with simple data-structures , 1990, SCG '90.

[13]  John Hershberger,et al.  Finding the visibility graph of a simple polygon in time proportional to its size , 1987, SCG '87.

[14]  Leonidas J. Guibas,et al.  Visibility and intersection problems in plane geometry , 1989, Discret. Comput. Geom..

[15]  Leonidas J. Guibas,et al.  Optimal Point Location in a Monotone Subdivision , 1986, SIAM J. Comput..

[16]  Robert E. Tarjan,et al.  Applications of a planar separator theorem , 1977, 18th Annual Symposium on Foundations of Computer Science (sfcs 1977).

[17]  Bernard Chazelle,et al.  A theorem on polygon cutting with applications , 1982, 23rd Annual Symposium on Foundations of Computer Science (sfcs 1982).

[18]  Robert E. Tarjan,et al.  An O(n log log n)-Time Algorithm for Triangulating a Simple Polygon , 1988, SIAM J. Comput..

[19]  David G. Kirkpatrick,et al.  Optimal Search in Planar Subdivisions , 1983, SIAM J. Comput..

[20]  Kenneth L. Clarkson,et al.  A fast las vegas algorithm for triangulating a simple polygon , 1989, Discret. Comput. Geom..

[21]  Heather Donnell Booth Some fast algorithms on graphs and trees , 1991 .

[22]  Robert E. Tarjan,et al.  Triangulating a Simple Polygon , 1978, Inf. Process. Lett..

[23]  Kurt Mehlhorn,et al.  Fast Triangulation of Simple Polygons , 1983, FCT.

[24]  S. Suri A linear time algorithm with minimum link paths inside a simple polygon , 1986 .

[25]  Godfried T. Toussaint,et al.  An output-complexity-sensitive polygon triangulation algorithm , 1990 .

[26]  David E. Muller,et al.  Finding the Intersection of two Convex Polyhedra , 1978, Theor. Comput. Sci..