Linear Data Structures for Fast Ray-Shooting amidst Convex Polyhedra

  • Authors:
  • Haim Kaplan;Natan Rubin;Micha Sharir

  • Affiliations:
  • Tel Aviv University, School of Computer Science, 69978, Tel Aviv, Israel;Tel Aviv University, School of Computer Science, 69978, Tel Aviv, Israel;Tel Aviv University, School of Computer Science, 69978, Tel Aviv, Israel and New York University, Courant Institute of Mathematical Sciences, 10012, New York, NY, USA

  • Venue:
  • Algorithmica - Special Issue: European Symposium on Algorithms 2007, Guest Editors: Larse Arge and Emo Welzl
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

We consider the problem of ray shooting in a three-dimensional scene consisting of k (possibly intersecting) convex polyhedra with a total of n facets. That is, we want to preprocess them into a data structure, so that the first intersection point of a query ray and the given polyhedra can be determined quickly. We describe data structures that require preprocessing time and storage (where the $ notation hides polylogarithmic factors), and have polylogarithmic query time, for several special instances of the problem. These include the case when the ray origins are restricted to lie on a fixed line ℓ 0, but the directions of the rays are arbitrary, the more general case when the supporting lines of the rays pass through ℓ 0, and the case of rays orthogonal to some fixed line with arbitrary origins and orientations. We also present a simpler solution for the case of vertical ray-shooting with arbitrary origins. In all cases, this is a significant improvement over previously known techniques (which require Ω(n 2) storage, even when k ≪ n).