## Abstract

In this paper we study the ray-shooting problem for three special classes of polyhedral objects in space: axis-parallel polyhedra, curtains (unbounded polygons with three edges, two of which are parallel to the z-axis and extend downward to minus infinity), and fat horizontal triangles (triangles parallel to the xy-plane whose angles are greater than some given constant). For all three problems structures are presented using O(n^{2+e{open}}) preprocessing, for any fixed e{open} > 0, with O(log n) query time. We also study the general ray-shooting problem in an arbitrary set of triangles. Here we present a structure that uses On^{4+e{open}}) preprocessing and has a query time of O(log n). We use the ray-shooting structure for curtains to obtain an algorithm for computing the view of a set of nonintersecting prolyhedra. For any e{open} > 0, we can obtain an algorithm with running time {Mathematical expression}, where n is the total number of vertices of the polyhedra and k is the size of the output. This is the first output-sensitive algorithm for this problem that does not need a depth order on the faces of the polyhedra.

Original language | English |
---|---|

Pages (from-to) | 30-53 |

Number of pages | 24 |

Journal | Algorithmica |

Volume | 12 |

Issue number | 1 |

DOIs | |

State | Published - Jul 1994 |

## Keywords

- Computational geometry
- Hidden surface removal
- Multilevel data structures
- Output-sensitive
- Ray shooting