Efficient computation of query point visibility in polygons with holes

In this paper, we consider the problem of computing the visibility of a query point inside polygons with holes. The goal is to perform this computation efficiently per query with more cost in the preprocessing phase. Our algorithm is based on solutions in [13] and [2] proposed for simple polygons. In our solution, the preprocessing is done in time O(n3 log(n)) to construct a data structure of size O(n3). It is then possible to report the visibility polygon of any query point q in time O((1+h′) log n+|V(q)|), in which n and h are the number of the vertices and holes of the polygon respectively, |V(q)| is the size of the visibility polygon of q, and h′ is an output and preprocessing sensitive parameter of at most min(h,|V(q)|). This is claimed to be the best query-time result on this problem so far.

[1]  Leonidas J. Guibas,et al.  Visibility and intersectin problems in plane geometry , 1985, SCG '85.

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

[3]  Prosenjit Bose,et al.  Efficient visibility queries in simple polygons , 2002, Comput. Geom..

[4]  Leonidas J. Guibas,et al.  Visibility-polygon search and euclidean shortest paths , 1985, 26th Annual Symposium on Foundations of Computer Science (sfcs 1985).

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

[6]  T. Asano An Efficient Algorithm for Finding the Visibility Polygon for a Polygonal Region with Holes , 1985 .

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

[8]  David Avis,et al.  A Linear Algorithm for Computing the Visibility Polygon from a Point , 1981, J. Algorithms.

[9]  D. T. Lee,et al.  Visibility of a simple polygon , 1983, Comput. Vis. Graph. Image Process..

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

[11]  Franco P. Preparata,et al.  A New Approach to Planar Point Location , 1981, SIAM J. Comput..

[12]  Michel Pocchiola,et al.  The visibility complex , 1993, SCG '93.

[13]  Leonidas J. Guibas,et al.  The Robot Localization Problem , 1995, SIAM J. Comput..

[14]  Joseph S. B. Mitchell,et al.  An Optimal Algorithm for Computing Visibility in the Plane , 1995, SIAM J. Comput..

[15]  Raimund Seidel,et al.  A Simple and Fast Incremental Randomized Algorithm for Computing Trapezoidal Decompositions and for Triangulating Polygons , 1991, Comput. Geom..

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

[17]  Leonidas J. Guibas,et al.  Visibility Queries and Maintenance in Simple Polygons , 2002, Discret. Comput. Geom..

[18]  Joseph O'Rourke,et al.  Worst-case optimal algorithms for constructing visibility polygons with holes , 1986, SCG '86.

[19]  Leonidas J. Guibas,et al.  The robot localization problem in two dimensions , 1992, SODA '92.

[20]  Robert E. Tarjan,et al.  Planar point location using persistent search trees , 1986, CACM.

[21]  Leonidas J. Guibas,et al.  Linear time algorithms for visibility and shortest path problems inside simple polygons , 2011, SCG '86.