Weak Visibility Queries of Line Segments in Simple Polygons and Polygonal Domains (1310.7197v1)
Abstract: In this paper we consider the problem of computing the weak visibility polygon of any query line segment $pq$ (or $WVP(pq)$) inside a given polygon $P$. Our first non-trivial algorithm runs in simple polygons and needs $O(n3 \log n)$ time and $O(n3)$ space in the preprocessing phase to report $WVP(pq)$ of any query line segment $pq$ in time $O(\log n + |WVP(pq)|)$. We also give an algorithm to compute the weak visibility polygon of a query line segment in a non-simple polygon with $h$ pairwise-disjoint polygonal obstacles with a total of $n$ vertices. Our algorithm needs $O(n2 \log n)$ time and $O(n2)$ space in the preprocessing phase and computes $WVP(pq)$ in query time of $O(n\hbar \log n + k)$, in which $\hbar$ is an output sensitive parameter of at most $\min(h,k)$, and $k = O(n2h2)$ is the output size. This is the best query-time result on this problem so far.