Abstract
We devise an algorithm for maintaining the visibility polygon of any query point in a dynamic polygonal domain, i.e., as the polygonal domain is modified with vertex insertions and deletions to its obstacles, we update the data structures that store the visibility polygon of the query point. After preprocessing the initial input polygonal domain to build a few data structures, our algorithm takes \(O(k(\lg {|VP_{{\mathcal {P}}'}(q)|})+(\lg {n'})^{2}+h)\) (resp. \(O(k(\lg n')^2+(\lg |VP_{{\mathcal {P}}'}(q)|)+h)\)) worst-case time to update data structures that store visibility polygon \(VP_{\mathcal P'}(q)\) of a query point q when any vertex v is inserted to (resp. deleted from) any obstacle of the current polygonal domain \({\mathcal {P}}'\). Here, \(n'\) is the number of vertices of \({\mathcal {P}}'\), h is the number of obstacles in \({\mathcal {P}}'\), \(VP_{{\mathcal {P}}'}(q)\) is the visibility polygon of q in \({\mathcal {P}}'\) (\(|VP_{{\mathcal {P}}'}(q)|\) is the number of vertices of \(VP_{{\mathcal {P}}'}(q)\)), and k is the number of combinatorial changes in \(VP_{{\mathcal {P}}'}(q)\) due to the insertion (resp. deletion) of v. As an application of the above algorithm, we also devise an algorithm for maintaining the visibility graph of a dynamic polygonal domain, i.e., as the polygonal domain is modified with vertex insertions and deletions to its obstacles, we update data structures that store the visibility graph of the polygonal domain. After preprocessing the initial input polygonal domain, our dynamic algorithm takes \(O(k(\lg {n'})^{2}+h)\) (resp. \(O(k(\lg {n'})^{2}+h)\)) worst-case time to update data structures that store the visibility graph when any vertex v is inserted to (resp. deleted from) any obstacle of the current polygonal domain \({\mathcal {P}}'\). Here, \(n'\) is the number of vertices of \({\mathcal {P}}'\), h is the number of obstacles in \({\mathcal {P}}'\), and k is the number of combinatorial changes in the visibility graph of \({\mathcal {P}}'\) due to the insertion (resp. deletion) of v.
Similar content being viewed by others
References
Agrawal S, Inkulu R (2020) Visibility polygon queries among dynamic polygonal obstacles in plane. In:Proceedings of International Computing and Combinatorics Conference, pages 136–148
Akbari K, Ghodsi M (2010) Visibility maintenance of a moving segment observer inside polygons with holes. In:Proceedings of Canadian Conference on Computational Geometry, pages 117–120
Aronov B, Guibas LJ, Teichmann M, Zhang L (2002) Visibility queries and maintenance in simple polygons. Discret Comput Geom 27(4):461–483
Asano T, Asano T, Guibas LJ, Hershberger J, Imai H (1986) Visibility of disjoint polygons. Algorithmica 1(1):49–63
Bar-Yehuda R, Chazelle B (1994) Triangulating disjoint jordan chains. Int J Comput Geom Appl 4(4):475–481
Baygi MN, Ghodsi M (2013) Space/query-time tradeoff for computing the visibility polygon. Comput Geom 46:371–381
Bose P, Lubiw A, Munro JI (2002) Efficient visibility queries in simple polygons. Comput Geom 23(3):313–335
Chazelle B (1991) Triangulating a simple polygon in linear time. Discret Comput Geom 6:485–524
Chen DZ, Daescu O (1998) Maintaining visibility of a polygon with a moving point of view. Inform Process Lett 65(5):269–275
Chen DZ, Inkulu R, Wang H (2016) Two-point \(L_1\) shortest path queries in the plane. J Comput Geom 7(1):473–519
Chen DZ, Wang H (2015) A new algorithm for computing visibility graphs of polygonal obstacles in the plane. J Comput Geom 6(1):316–345
Chen DZ, Wang H (2015) Visibility and ray shooting queries in polygonal domains. Comput Geom 48(2):31–41
Choudhury T, Inkulu R (2019) Maintaining the visibility graph of a dynamic simple polygon. In:Proceedings of Conference on Algorithms and Discrete Applied Mathematics, pages 42–52
Cormen TH, Leiserson CE, Rivest RL, Stein C (2009) Introduction to Algorithms. The MIT Press, USA
Davis LS, Benedikt ML (1979) Computational models of space: isovists and isovist fields. Comput Gr Image Process 11(1):49–72
ElGindy HA, Avis D (1981) A linear algorithm for computing the visibility polygon from a point. J Algorithms 2(2):186–197
Ghosh SK (1991) Computing the visibility polygon from a convex set and related problems. J Algorithms 12(1):75–95
Ghosh SK (2007) Visibility algorithms in the plane. Cambridge University Press, New York
Ghosh SK, Mount DM (1991) An output-sensitive algorithm for computing visibility graphs. SIAM J Comput 20(5):888–910
Goodrich MT, Tamassia R (1997) Dynamic ray shooting and shortest paths in planar subdivisions via balanced geodesic triangulations. J Algorithms 23(1):51–73
Heffernan PJ, Mitchell JSB (1995) An optimal algorithm for computing visibility in the plane. SIAM J Comput 24(1):184–201
Hershberger J (1989) An optimal visibility graph algorithm for triangulated simple polygons. Algorithmica 4:141–155
Inkulu R, Kapoor S (2009) Visibility queries in a polygonal region. Comput Geom 42(9):852–864
Inkulu R, Nitish T (2017) Incremental algorithms to update visibility polygons. In:Proceedings of Conference on Algorithms and Discrete Applied Mathematics, pages 205–218
Inkulu R, Sowmya K, Thakur NP (2020) Dynamic algorithms for visibility polygons in simple polygons. Int J Comput Geom Appl 30(1):51–78
Joe B, Simpson R (1987) Corrections to Lee’s visibility polygon algorithm. BIT Numer Math 27(4):458–473
Kapoor S (1999) Efficient computation of geodesic shortest paths. In:Proceedings of Symposium on Theory of Computing, pages 770–779
Kapoor S, Maheshwari S N (1988) Efficient algorithms for Euclidean shortest path and visibility problems with polygonal obstacles. In:Proceedings of Symposium on Computational Geometry, pages 172–182
Kapoor S, Maheshwari SN (2000) Efficiently constructing the visibility graph of a simple polygon with obstacles. SIAM J Comput 30(3):847–871
Kapoor S, Maheshwari SN, Mitchell JSB (1997) An efficient algorithm for Euclidean shortest paths among polygonal obstacles in the plane. Discrete Comput Geom 18(4):377–383
Lee DT (1978) Proximity and reachability in the Plane. PhD thesis, University of Illinois at Urbana-Champaign, Ph.D. thesis and Technical Report ACT-12
Lee DT (1983) Visibility of a simple polygon. Comput Vision, Gr, Image Process 22(2):207–221
Lu L, Yang C, Wang J (2011) Point visibility computing in polygons with holes. J Inform Comput Sci 16(7):4165–4173
O’Rourke J (1987) Art gallery theorems and algorithms. Oxford University Press Inc, New York, USA
Overmars MH, van Leewen J (1981) Maintenance of configurations in the plane. J Comput Syst Sci 23(2):166–204
Overmars M H, Welzl E (1988) New methods for computing visibility graphs. In:Proceedings of the Fourth Annual Symposium on Computational Geometry, pages 164–171
Pocchiola M, Vegter G (1996) Topologically sweeping visibility complexes via pseudotriangulations. Discret Comput Geom 16(4):419–453
Preparata FP, Shamos MI (1985) Computational geometry: an introduction. Springer-Verlag, New York, USA
Sharir M, Schorr A (1986) On shortest paths in polyhedral spaces. SIAM J Comput 15(1):193–215
Suri S, O’Rourke J (1986) Worst-case optimal algorithms for constructing visibility polygons with holes. In:Proceedings of the Symposium on Computational Geometry, pages 14–23
Welzl E (1985) Constructing the visibility graph for \(n\)-line segments in \(O(n^2)\) time. Inform Process Lett 20(4):167–171
Zarei A, Ghodsi M (2005) Efficient computation of query point visibility in polygons with holes. In:Proceedings of the Symposium on Computational Geometry, pages 314–320
Acknowledgements
This research of R. Inkulu is supported in part by SERB MATRICS grant MTR/2017/000474. The authors also like to acknowledge reviewers of the preliminary version of this paper for their valuable input.
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
A preliminary version (Agrawal and Inkulu 2020) appeared in Proceedings of the \(26^{th}\) International Computing and Combinatorics Conference (COCOON), 2020.
Rights and permissions
About this article
Cite this article
Agrawal, S., Inkulu, R. Visibility polygons and visibility graphs among dynamic polygonal obstacles in the plane. J Comb Optim 44, 3056–3082 (2022). https://doi.org/10.1007/s10878-022-00846-1
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10878-022-00846-1