English

Segment Visibility Counting Queries in Polygons

Computational Geometry 2022-01-11 v1

Abstract

Let PP be a simple polygon with nn vertices, and let AA be a set of mm points or line segments inside PP. We develop data structures that can efficiently count the number of objects from AA that are visible to a query point or a query segment. Our main aim is to obtain fast, O(polylognmO(\mathop{\textrm{polylog}} nm), query times, while using as little space as possible. In case the query is a single point, a simple visibility-polygon-based solution achieves O(lognm)O(\log nm) query time using O(nm2)O(nm^2) space. In case AA also contains only points, we present a smaller, O(n+m2+εlogn)O(n + m^{2 + \varepsilon}\log n)-space, data structure based on a hierarchical decomposition of the polygon. Building on these results, we tackle the case where the query is a line segment and AA contains only points. The main complication here is that the segment may intersect multiple regions of the polygon decomposition, and that a point may see multiple such pieces. Despite these issues, we show how to achieve O(lognlognm)O(\log n\log nm) query time using only O(nm2+ε+n2)O(nm^{2 + \varepsilon} + n^2) space. Finally, we show that we can even handle the case where the objects in AA are segments with the same bounds.

Keywords

Cite

@article{arxiv.2201.03490,
  title  = {Segment Visibility Counting Queries in Polygons},
  author = {Kevin Buchin and Bram Custers and Ivor van der Hoog and Maarten Löffler and Aleksandr Popov and Marcel Roeloffzen and Frank Staals},
  journal= {arXiv preprint arXiv:2201.03490},
  year   = {2022}
}

Comments

27 pages, 13 figures