Dynamic Ray Shooting and Shortest Paths in Planar Subdivisions via Balanced Geodesic Triangulations

We give new methods for maintaining a data structure that supports ray-shooting and shortest-path queries in a dynamically changing connected planar subdivision S. Our approach is based on a new dynamic method for maintaining a balanced decomposition of a simple polygon via geodesic triangles. We maintain such triangulations by viewing their dual trees as balanced trees. We show that rotations in these trees can be implemented via simple “diagonal swapping” operations performed on the corresponding geodesic triangles, and that edge insertion and deletion can be implemented on these trees using operations akin to the standardsplitandspliceoperations. We also maintain a dynamic point location structure on the geodesic triangulation, so that we may implement ray-shooting queries by first locating the ray's endpoint and then walking along the ray from geodesic triangle to geodesic triangle until we hit the boundary of some region of S. The shortest path between two points in the same region is obtained by locating the two points and then walking from geodesic triangle to geodesic triangle either following a boundary or taking a shortcut through a common tangent. Our data structure usesO(n) space and supports queries and updates inO(log2n) worst-case time, wherenis the current size of S. It outperforms the previous best data structure for this problem by a lognfactor in all the complexity measures (space, query times, and update times).

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

[2]  D. T. Lee,et al.  Euclidean shortest paths in the presence of rectilinear barriers , 1984, Networks.

[3]  Leonidas J. Guibas,et al.  Ray Shooting in Polygons Using Geodesic Triangulations , 1991, ICALP.

[4]  Prof. Dr. Kurt Mehlhorn,et al.  Data Structures and Algorithms 3 , 2012, EATCS Monographs on Theoretical Computer Science.

[5]  R. K. Shyamasundar,et al.  Introduction to algorithms , 1996 .

[6]  Joseph O'Rourke,et al.  Computational Geometry in C. , 1995 .

[7]  Roberto Tamassia,et al.  A unified approach to dynamic point location, ray shooting, and shortest paths in planar maps , 1996, SODA '93.

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

[9]  J. O´Rourke,et al.  Computational Geometry in C: Arrangements , 1998 .

[10]  John Hershberger,et al.  A New Data Structure for Shortest Path Queries in a Simple Polygon , 1991, Inf. Process. Lett..

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

[12]  Leonidas J. Guibas,et al.  A dichromatic framework for balanced trees , 1978, 19th Annual Symposium on Foundations of Computer Science (sfcs 1978).

[13]  Michael T. Goodrich,et al.  Dynamic trees and dynamic point location , 1991, STOC '91.

[14]  Subhash Suri,et al.  A pedestrian approach to ray shooting: shoot a ray, take a walk , 1993, SODA '93.

[15]  Michael T. Goodrich,et al.  Generalized sweep methods for parallel computational geometry , 1990, SPAA '90.

[16]  Herbert Edelsbrunner,et al.  Algorithms in Combinatorial Geometry , 1987, EATCS Monographs in Theoretical Computer Science.

[17]  John Hershberger,et al.  Optimal parallel algorithms for triangulated simple polygons , 1992, SCG '92.

[18]  Robert E. Tarjan,et al.  Data structures and network algorithms , 1983, CBMS-NSF regional conference series in applied mathematics.

[19]  D. T. Lee,et al.  Location of a point in a planar subdivision and its applications , 1976, STOC '76.

[20]  Siu-Wing Cheng,et al.  Algorithms for Ray-Shooting and Intersection Searching , 1992, J. Algorithms.

[21]  Kurt Mehlhorn,et al.  Sorting and Searching , 1984 .

[22]  Alfred V. Aho,et al.  Data Structures and Algorithms , 1983 .

[23]  Roberto Tamassia,et al.  Dynamic algorithms in computational geometry , 1992, Proc. IEEE.

[24]  John H. Reif,et al.  An efficient output-sensitive hidden surface removal algorithm and its parallelization , 1988, SCG '88.

[25]  R. Tarjan,et al.  Rotation distance, triangulations, and hyperbolic geometry , 1986, STOC '86.