Skip to Main Content
An algorithm for calculating the minimum distance between non-convex polyhedra is described. A polyhedron is represented by a set of triangles. In calculating the distance between two polyhedra, it is important to search efficiently the pair of the triangles which gives the pair of closest points. In our algorithm discrete Voronoi regions are prepared as voxels around a non-convex polyhedron. Each voxel is given the list of triangles which have the possibility of being the closest to the points in the voxel. When a triangle on the other object is intersecting a voxel, the closest triangles can be efficiently searched from this list on the voxel. The algorithm has been implemented, and the results of distance computations show that it can calculate the minimum distance between non-convex polyhedra composed of a thousand triangles at interactive rates.