Skip to main content
Log in

Visibility polygons and visibility graphs among dynamic polygonal obstacles in the plane

  • Published:
Journal of Combinatorial Optimization Aims and scope Submit manuscript

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.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14

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

    Article  MathSciNet  Google Scholar 

  • Asano T, Asano T, Guibas LJ, Hershberger J, Imai H (1986) Visibility of disjoint polygons. Algorithmica 1(1):49–63

    Article  MathSciNet  Google Scholar 

  • Bar-Yehuda R, Chazelle B (1994) Triangulating disjoint jordan chains. Int J Comput Geom Appl 4(4):475–481

    Article  MathSciNet  Google Scholar 

  • Baygi MN, Ghodsi M (2013) Space/query-time tradeoff for computing the visibility polygon. Comput Geom 46:371–381

    Article  MathSciNet  Google Scholar 

  • Bose P, Lubiw A, Munro JI (2002) Efficient visibility queries in simple polygons. Comput Geom 23(3):313–335

    Article  MathSciNet  Google Scholar 

  • Chazelle B (1991) Triangulating a simple polygon in linear time. Discret Comput Geom 6:485–524

    Article  MathSciNet  Google Scholar 

  • Chen DZ, Daescu O (1998) Maintaining visibility of a polygon with a moving point of view. Inform Process Lett 65(5):269–275

    Article  MathSciNet  Google Scholar 

  • Chen DZ, Inkulu R, Wang H (2016) Two-point \(L_1\) shortest path queries in the plane. J Comput Geom 7(1):473–519

    MathSciNet  MATH  Google Scholar 

  • 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

    MathSciNet  MATH  Google Scholar 

  • Chen DZ, Wang H (2015) Visibility and ray shooting queries in polygonal domains. Comput Geom 48(2):31–41

    Article  MathSciNet  Google Scholar 

  • 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

    MATH  Google Scholar 

  • Davis LS, Benedikt ML (1979) Computational models of space: isovists and isovist fields. Comput Gr Image Process 11(1):49–72

    Article  Google Scholar 

  • ElGindy HA, Avis D (1981) A linear algorithm for computing the visibility polygon from a point. J Algorithms 2(2):186–197

    Article  MathSciNet  Google Scholar 

  • Ghosh SK (1991) Computing the visibility polygon from a convex set and related problems. J Algorithms 12(1):75–95

    Article  MathSciNet  Google Scholar 

  • Ghosh SK (2007) Visibility algorithms in the plane. Cambridge University Press, New York

    Book  Google Scholar 

  • Ghosh SK, Mount DM (1991) An output-sensitive algorithm for computing visibility graphs. SIAM J Comput 20(5):888–910

    Article  MathSciNet  Google Scholar 

  • Goodrich MT, Tamassia R (1997) Dynamic ray shooting and shortest paths in planar subdivisions via balanced geodesic triangulations. J Algorithms 23(1):51–73

    Article  MathSciNet  Google Scholar 

  • Heffernan PJ, Mitchell JSB (1995) An optimal algorithm for computing visibility in the plane. SIAM J Comput 24(1):184–201

    Article  MathSciNet  Google Scholar 

  • Hershberger J (1989) An optimal visibility graph algorithm for triangulated simple polygons. Algorithmica 4:141–155

    Article  MathSciNet  Google Scholar 

  • Inkulu R, Kapoor S (2009) Visibility queries in a polygonal region. Comput Geom 42(9):852–864

    Article  MathSciNet  Google Scholar 

  • 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

    Article  MathSciNet  Google Scholar 

  • Joe B, Simpson R (1987) Corrections to Lee’s visibility polygon algorithm. BIT Numer Math 27(4):458–473

    Article  Google Scholar 

  • 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

    Article  MathSciNet  Google Scholar 

  • 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

    Article  MathSciNet  Google Scholar 

  • 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

    Article  Google Scholar 

  • Lu L, Yang C, Wang J (2011) Point visibility computing in polygons with holes. J Inform Comput Sci 16(7):4165–4173

    Google Scholar 

  • O’Rourke J (1987) Art gallery theorems and algorithms. Oxford University Press Inc, New York, USA

    MATH  Google Scholar 

  • Overmars MH, van Leewen J (1981) Maintenance of configurations in the plane. J Comput Syst Sci 23(2):166–204

    Article  MathSciNet  Google Scholar 

  • 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

    Article  MathSciNet  Google Scholar 

  • Preparata FP, Shamos MI (1985) Computational geometry: an introduction. Springer-Verlag, New York, USA

    Book  Google Scholar 

  • Sharir M, Schorr A (1986) On shortest paths in polyhedral spaces. SIAM J Comput 15(1):193–215

    Article  MathSciNet  Google Scholar 

  • 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

    Article  MathSciNet  Google Scholar 

  • 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

Download references

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

Authors

Corresponding author

Correspondence to R. Inkulu.

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

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

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

Download citation

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10878-022-00846-1

Keywords

Navigation