1,277 research outputs found

    Weak Visibility Queries of Line Segments in Simple Polygons

    Full text link
    Given a simple polygon P in the plane, we present new algorithms and data structures for computing the weak visibility polygon from any query line segment in P. We build a data structure in O(n) time and O(n) space that can compute the visibility polygon for any query line segment s in O(k log n) time, where k is the size of the visibility polygon of s and n is the number of vertices of P. Alternatively, we build a data structure in O(n^3) time and O(n^3) space that can compute the visibility polygon for any query line segment in O(k + log n) time.Comment: 16 pages, 9 figures. A preliminary version of this paper appeared in ISAAC 2012 and we have improved results in this full versio

    Segment Visibility Counting Queries in Polygons

    Get PDF
    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.Comment: 27 pages, 13 figure
    corecore