Fast collision detection among multiple moving spheres

The paper presents an event driven approach that efficiently detects collisions among multiple moving spheres of uniform radius. We divide the space containing the spheres into uniform subspaces of cell structure. Each sphere intersecting a subspace is tested against the others intersecting the same subspace for possible collisions. We identify three types of events to detect the sequence of all collisions during our simulation: collision, entering, and leaving. The first type of events is due to actual collisions, and the other two types occur when spheres move from subspace to subspace. By tracing all such events in the order of their occurring times, we are able to simulate n moving spheres with proper collision response in O(n/sub c/ log n+n/sub e/ log n) time with O(n) space after O(n log n) time preprocessing, where n/sub c/ and n/sub e/ are the number of actual collisions and that of entering and leaving events during the simulation, respectively. Since n/sub e/ depends on the size of subspaces, we adopt the collision model from kinetic theory for molecular gas (Feynmann et al., 1963) to determine the subspace size that minimizes simulation time. Experimental results show that collision detection can be done in linear time in n over a large range.

[1]  James K. Hahn,et al.  Realistic animation of rigid bodies , 1988, SIGGRAPH.

[2]  M. Levas OBBTree : A Hierarchical Structure for Rapid Interference Detection , .

[3]  Norman I. Badler,et al.  Decomposition of Three-Dimensional Objects into Spheres , 1979, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[4]  Greg Turk,et al.  Interactive Collision Detection for Molecular Graphics , 1990 .

[5]  Philip M. Hubbard,et al.  Approximating polyhedra with spheres for time-critical collision detection , 1996, TOGS.

[6]  Leonidas J. Guibas,et al.  Data structures for mobile data , 1997, SODA '97.

[7]  R. Webb,et al.  Using dynamic bounding volume hierarchies to improve efficiency of rigid body simulations , 1992 .

[8]  Richard L. Scheaffer,et al.  Probability and statistics for engineers , 1986 .

[9]  C. Levinthal Molecular model-building by computer. , 1966, Scientific American.

[10]  Jane Wilhelms,et al.  Collision Detection and Response for Computer Animation , 1988, SIGGRAPH.

[11]  Karl Sims,et al.  Particle animation and rendering using data parallel computation , 1990, SIGGRAPH.

[12]  Victor J. Milenkovic Position-based physics: simulating the motion of many highly interacting spheres and polyhedra , 1996, SIGGRAPH.

[13]  Mark H. Overmars,et al.  Spheres, molecules, and hidden surface removal , 1994, SCG '94.

[14]  Richard Szeliski,et al.  Surface modeling with oriented particle systems , 1992, SIGGRAPH.

[15]  George S. Lueker,et al.  Adding range restriction capability to dynamic data structures , 1985, JACM.

[16]  David Baraff,et al.  Curved surfaces and coherence for non-penetrating rigid body simulation , 1990, SIGGRAPH.

[17]  Vincent Hayward,et al.  Efficient Collision Prediction Among Many Moving Objects , 1995, Int. J. Robotics Res..

[18]  Edward M. Reingold,et al.  Binary Search Trees of Bounded Balance , 1973, SIAM J. Comput..