Lines and free line segments tangent to arbitrary three-dimensional convex polyhedra
Motivated by visibility problems in three dimensions, we investigate the complexity and construction of the set of tangent lines in a scene of three-dimensional polyhedra. We prove that the set of lines tangent to four possibly intersecting convex polyhedra in R-3 with a total of n edges consists of Theta(n(2)) connected components in the worst case. In the generic case, each connected component is a single line, but our result still holds for arbitrarily degenerate scenes. More generally, we show that a set of kappa possibly intersecting convex polyhedra with a total of n edges admits, in the worst case, Theta(n(2)kappa(2)) connected components of maximal free line segments tangent to at least four polytopes. Furthermore, these bounds also hold for possibly occluded lines rather than maximal free line segments. Finally, we present an O(n(2)kappa(2) log n) time and O(n kappa(2)) space algorithm that, given a scene of kappa possibly intersecting convex polyhedra, computes all the minimal free line segments that are tangent to any four of the polytopes and are isolated transversals to the set of edges they intersect; in particular, we compute at least one line segment per connected component of tangent lines.
computational geometry 3d visibility visibility complex visual events