English

A Time-Space Trade-off for Computing the k-Visibility Region of a Point in a Polygon

Computational Geometry 2019-08-14 v3

Abstract

Let PP be a simple polygon with nn vertices, and let qPq \in P be a point in PP. Let k{0,,n1}k \in \{0, \dots, n - 1\}. A point pPp \in P is kk-visible from qq if and only if the line segment pqpq crosses the boundary of PP at most kk times. The kk-visibility region of qq in PP is the set of all points that are kk-visible from qq. We study the problem of computing the kk-visibility region in the limited workspace model, where the input resides in a random-access read-only memory of O(n)O(n) words, each with Ω(logn)\Omega(\log{n}) bits. The algorithm can read and write O(s)O(s) additional words of workspace, where sNs \in \mathbb{N} is a parameter of the model. The output is written to a write-only stream. Given a simple polygon PP with nn vertices and a point qPq \in P, we present an algorithm that reports the kk-visibility region of qq in PP in O(cn/s+clogs+min{k/sn,nloglogsn})O(cn/s+c\log{s} + \min\{\lceil k/s \rceil n,n \log{\log_s{n}}\}) expected time using O(s)O(s) words of workspace. Here, c{1,,n}c \in \{1, \dots, n\} is the number of critical vertices of PP for qq where the kk-visibility region of qq may change. We generalize this result for polygons with holes and for sets of non-crossing line segments.

Keywords

Cite

@article{arxiv.1603.02853,
  title  = {A Time-Space Trade-off for Computing the k-Visibility Region of a Point in a Polygon},
  author = {Yeganeh Bahoo and Bahareh Banyassady and Prosenjit Bose and Stephane Durocher and Wolfgang Mulzer},
  journal= {arXiv preprint arXiv:1603.02853},
  year   = {2019}
}

Comments

17 pages, 5 figures; a preliminary version appeared in WALCOM 2017; this revision fixes a mistake in the proof of Theorem 4.4 in the published version, the statement of the theorem remains unchanged