Penetration depth of two convex polytopes in 3D

  • Authors:
  • Pankaj K. Agarwal;Leonidas J. Guibas;Sariel Har-Peled;Alexander Rabinovitch;Micha Sharir

  • Affiliations:
  • Center for Geometric Computing Department of Computer Science Box 90129, Duke University Durham, NC;Computer Graphics Laboratory Computer Science Department Stanford University Stanford, CA;2111 Digital Computer Laboratory, Department of Computer Science, University of Illinois, 1304 W. Springfield Ave., Urbana, IL;Synopsys Inc. 154 Crane Meadow RD, Suite 300 Marlboro, MA;School of Mathematical Sciences Tel Aviv University, Tel Aviv 69978, Israel and Courant Institute of Mathematical Sciences New York University, New York, NY

  • Venue:
  • Nordic Journal of Computing
  • Year:
  • 2000

Quantified Score

Hi-index 0.00

Visualization

Abstract

Let A and B be two convex polytopes in R3 with m and n facets, respectively. The penetration depth of A and B, denoted as π(A, B), is the minimum distance by which A has to be translated so that A and B do not intersect. We present a randomized algorithm that computes π(A, B) in O(m3/4+ε n3/4+ε +m1+ε + n1+ε) expected time, for any constant ε 0. It also computes a vector t such that ¶t¶ = π(A, B) and int(A + t) ∩ B = θ. We show that if the Minkowski sum B ⊕ (-A) has K facets, then the expected running time of our algorithm is O (K1/2+ε m1/4 n1/4 + m1+ε + n1+ε), for any ε 0.We also present an approximation algorithm for computing π(A, B). For any δ 0, we can compute, in time O(m + n + (log2 (m + n))/δ), a vector t such that ¶t¶ ≤ (1 + δ)π(A, B) and int(A + t) ∩ B = θ. Our result also gives a δ-approximation algorithm for computing the width of A in time O(n + (1/δ) log2(1/δ)), which is simpler and faster than the recent algorithm by Chan [3].