On Computing and Updating Triangulations

Much attention has been given to triangulating sets of points and polygons (see [1] for a survey) but the problem of triangulating line segments has not been previously explored. It is well known that a polygon can always be triangulated and a simple proof of this can be found in [2]. Furthermore, efficient algorithms exist for carrying out this task [3,4]. Thus at first glance one may wonder why not just construct a simple polygon through the set of line segments and subsequently apply the algorithms of [3] or [4]. Unfortunately a set of line segments does not necessarily admit a simple circuit [5]. The reader can easily construct such an example with three parallel line segments. In the following section we provide optimal O(nlogn) algorithm for triangulating a set of n line segments. Optimality follows from the fact that Ω(nlogn) time is a lower bound for triangulating a set of points [6, p. 187] which is a set of line segments of zero length. Section 3 is devoted to presenting algorithms for inserting and deleting edges from triangulations.

[1]  Selim G. Akl,et al.  A Fast Convex Hull Algorithm , 1978, Inf. Process. Lett..

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

[3]  Raimund Seidel,et al.  Some methods of computational geometry applied to computer graphics , 1984, Comput. Vis. Graph. Image Process..

[4]  Gary H. Meisters,et al.  POLYGONS HAVE EARS , 1975 .

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

[6]  Michael Ian Shamos,et al.  Computational geometry: an introduction , 1985 .

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

[8]  D. Avis,et al.  Simple On-Line Algorithms for Convex Polygons , 1985 .