Planar Visibility: Testing and Counting
In this paper we consider query versions of visibility testing and visibility counting. Let be a set of disjoint line segments in and let be an element of . Visibility testing is to preprocess so that we can quickly determine if is visible from a query point . Visibility counting involves preprocessing so that one can quickly estimate the number of segments in visible from a query point . We present several data structures for the two query problems. The structures build upon a result by O'Rourke and Suri (1984) who showed that the subset, , of that is weakly visible from a segment can be represented as the union of a set, , of triangles, even though the complexity of can be . We define a variant of their covering, give efficient output-sensitive algorithms for computing it, and prove additional properties needed to obtain approximation bounds. Some of our bounds rely on a new combinatorial result that relates the number of segments of visible from a point to the number of triangles in that contain .
View on arXiv