Improved Output-Sensitive Snap Rounding

This paper presents new algorithms for snap rounding an arrangement <i>A</i> of line segments in the plane. Snap rounding defines a set of <i>hot pixels</i>, which are unit squares centered on the integer grid points closest to the vertices of <i>A</i>. Snap rounding simplifies <i>A</i> by replacing every input segment by a piecewise linear curve connecting the centers of the hot pixels the segment intersects. Let <i>H</i> be the set of all hot pixels, and for each <i>A</i>∈<i>H</i> let <i>(h)</i> be the number of segments with an intersection or endpoint inside <i>h</i>. If <i>A</i> contains <i>n</i> input segments, the running time of the first new algorithm is <i>O</i>(Ε<i><sub>h∈H</sub> is (h)</i> log <i>n</i>). This improves previous input- and output-sensitive algorithms by a factor of Θ<i>(n)</i> in the worst case. The second algorithm has an even better running time of <i>O</i>(Ε<i><sub>h∈H</sub> ed (h)</i> log <i>n</i>); here <i>ed(h)</i> is the description complexity of the crossing pattern in <i>h</i>, which may be substantially less than <i>is(h)</i> and is never greater.

[1]  Frank K. Hwang,et al.  A Simple Algorithm for Merging Two Disjoint Linearly-Ordered Sets , 1972, SIAM J. Comput..

[2]  Kurt Mehlhorn,et al.  A new data structure for representing sorted lists , 1980, Acta Informatica.

[3]  Leonidas J. Guibas,et al.  A new representation for linear lists , 1977, STOC '77.

[4]  Leonidas J. Guibas,et al.  Rounding arrangements dynamically , 1995, SCG '95.

[5]  John D. Hobby,et al.  Practical segment intersection with finite precision output , 1999, Comput. Geom..

[6]  Eli Packer Iterated snap rounding with bounded drift , 2006, SCG '06.

[7]  Mark de Berg,et al.  An intersection-sensitive algorithm for snap rounding , 2007, Comput. Geom..

[8]  Leonidas J. Guibas,et al.  Snap rounding line segments efficiently in two and three dimensions , 1997, SCG '97.

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

[10]  Graham Cormode,et al.  The string edit distance matching problem with moves , 2002, SODA '02.

[11]  Robert E. Tarjan,et al.  Making data structures persistent , 1986, STOC '86.

[12]  Derick Wood,et al.  A survey of adaptive sorting algorithms , 1992, CSUR.

[13]  Franklin P. Antonio Faster Line Segment Intersection , 1992, Graphics Gems III.

[14]  Eli Packer,et al.  Iterated snap rounding , 2002, Comput. Geom..

[15]  KEVIN Q. BROWN Comments on “algorithms for reporting and counting geometric intersections” , 1981, IEEE Transactions on Computers.

[16]  Walter F. Tichy,et al.  The string-to-string correction problem with block moves , 1984, TOCS.

[17]  P. Giblin Computational geometry: algorithms and applications (2nd edn.), by M. de Berg, M. van Kreveld, M. Overmars and O. Schwarzkopf. Pp. 367. £20.50. 2000. ISBN 3 540 65620 0 (Springer-Verlag). , 2001, The Mathematical Gazette.

[18]  Clifford Stein,et al.  Introduction to Algorithms, 2nd edition. , 2001 .

[19]  Mark de Berg,et al.  Computational geometry: algorithms and applications , 1997 .

[20]  Micha Sharir,et al.  Davenport-Schinzel sequences and their geometric applications , 1995, Handbook of Computational Geometry.