A Fast Planar Partition Algorithm, I

In this paper we give a fast randomized algorithm for finding a partition of the plane induced by a given set of line segments. The planar partition problem is interesting because it has important practical implications, especially in computer graphics, which indeed served as an inspiration for our investigation. Our algorithm is ideally suited for a practical use because: (i) it is extremely simple and robust, and (ii) despite this simplicity (or rather because of it) the algorithm is optimal; its expected running time is O(m+n log n), where n is the number of input segments and m is the number of points of intersection. The storage requirement is O(m + n). Though the algorithm itself is simple, the global evolution of the underlying partition is non-trivial, which makes the analysis of the algorithm theoretically interesting in its own right.

[1]  Raimund Seidel,et al.  Constructing Arrangements of Lines and Hyperplanes with Applications , 1986, SIAM J. Comput..

[2]  Bernard Chazelle,et al.  An optimal algorithm for intersecting line segments in the plane , 1988, [Proceedings 1988] 29th Annual Symposium on Foundations of Computer Science.

[3]  Kenneth L. Clarkson,et al.  Applications of random sampling in computational geometry, II , 1988, SCG '88.

[4]  Ketan Mulmuley,et al.  A fast planar partition algorithm. I , 1988, [Proceedings 1988] 29th Annual Symposium on Foundations of Computer Science.

[5]  Richard Cole,et al.  Geometric applications of Davenport-Schinzel sequences , 1986, 27th Annual Symposium on Foundations of Computer Science (sfcs 1986).

[6]  Bernard Chazelle Reporting and Counting Segment Intersections , 1986, J. Comput. Syst. Sci..

[7]  Ketan Mulmuley,et al.  An efficient algorithm for hidden surface removal , 1989, SIGGRAPH.

[8]  Thomas Ottmann,et al.  Algorithms for Reporting and Counting Geometric Intersections , 1979, IEEE Transactions on Computers.

[9]  Ketan Mulmuley,et al.  A fast planar partition algorithm, II , 1989, JACM.