Visibility problems for polyhedral terrains

  • Authors:
  • Richard Cole;Micha Sharir

  • Affiliations:
  • Courant Institute of Mathematical Sciences, New York University, New York, U.S.A.;Courant Institute of Mathematical Sciences, New York University, New York, U.S.A. and School of Mathematical Sciences, Tel Aviv University, Tel Aviv, Israel

  • Venue:
  • Journal of Symbolic Computation
  • Year:
  • 1989

Quantified Score

Hi-index 0.03

Visualization

Abstract

In this paper we study several problems concerning the visibility of a polyhedral terrain @s from a point (or several points) lying above it. Our results are: (1) For a fixed point a, one can preproeess a in time O(n@a(n) log n), to produce a data structure of size O(n@a(n) log n), which supports fast ray shooting queries, where each such query asks for the point on @s that is visible from a in a specified direction. Here n is the number of faces of @s and @a(n) is the extremely slowly growing functional inverse of Ackermann's function. (2) If the viewing point a can vary along a fixed vertical line L, then the entire visibility structure of @s from L is of combinatorial complexity O(n@l"4(n)), where @l"4(n) is the maximal length of an (n, 4) Davenport-Sehinzel sequence, and is nearly linear in n, and where the visibility structure in question is the decomposition of L x S^2 into maximal connected regions, such that for each such region R, all points (a, u)@? R are such that the ray from a @? L in direction u @? S^2 first intersects @s at a point on the same face of @s. Furthermore, we present an O(n@l"4(n)log n)-time algorithm that preprocesses L and @s into a data-structure of size O(n@l"4(n)) which supports O(log^2n) time ray shooting queries. (3) Concerning the results in (2) we show that (i) if L is not vertical, then the resulting visibility structure can be of size @W(n^3); (ii) there exist a vertical line L and a polyhedral terrain a with n faces, for which the resulting visibility structure is of size @W(n^2@a(n)). (4) Finally, we consider the problem of placing on the surface @s one or several viewing points which collectively cover the entire surface (i.e. each point on @s is visible from at least one of these viewing ''stations''). We show (i) in the case of a single viewing station, one can determine in time O(n log n) whether such a station exists, and if so, produce such a point; (ii) the problem of finding the smallest number of points on @s that can collectively see the entire surface @s is NP-hard.