Orientation-based Pruning for Collision Detection


Warning: This pages are still under construction.


crash.gif

Introduction


Among the various strategies devised for aleviating the burden of computing interference between two polyhedral object models, orientation-based pruning has not been exploited to its full potential. Instead of using the information concerning the spatial localisation of the model's features, these approaches consider their orientations to eliminate candidates that cannot take part in a collision. The most intuitive of such approaches is back-face culling, a well-known concept in Computer Graphics adapted to collision detection. Here, the faces that are culled off are those whose normals do not project on the "interior" of the relative motion direction.

Each time the direction of relative motion changes, the set of candidate faces for intersection has to be updated. This is equivalent to the updating of volumetric hierarchies when the object's features attain new positions in space due to translations or rotations. In some cases, for example if the models are convex, such updating can be done in an incremental fashion. In the volumetric approaches, this is done exploiting spatial and temporal coherence: for small time increments, the features that realize the minimum distance (and are therefore good candidates for inminent collisions) are the same as in the previous time frame or in their neighborhood. Similarly, if the relative direction of movement changes smoothly, new faces to cull off appear (and others disappear) in the limit between previously culled and not culled ones.

vanecek.gif

As will become clear in what follows, orientation-based pruning constitutes an alternative to the more popular volumetrical focusing procedures. Furthermore, both approaches can be used together in a hibrid strategy.


Applicability constraints

Direction of motion gives an important on-line clue for restricting the faces to be considered for collision, attending to their orientation. However, it is strongly dependent on the actual relative velocities. Furthermore, these velocities have to be known or computed a priori. A velocity-independent orientation-based preprocessing of polyhedra, for enhancement of further collision checking, would be the construction of a hierarchical representation that partitions subsets of polyhedral features attending to their orientation. More on this will be considered later. Between both extremes, strategies can be devised that reduce the search space for a specific range of situations, like the present approach: here, the elimination of candidates exploits the fact that for a given relative orientation of polyhedra, only certain contacts between their boundary features can take place. Such contacts can be determined through the so-called applicability constraints (Donald, 87) .

Any contact between two polyhedra can be expressed in terms of two basic contacts:

aplicable.gif
When the polyhedra are convex, the applicability constraints express necessary and sufficient conditions for such basic contacts. In the case where the polyhedra exhibit concave edges, applicability is still a necessary, but no more a sufficient condition for contact. Thus, a strategy based on applicability constraints is conservative in the nonconvex case, as possible candidates are taken into account that will never contact. However, despite patological cases, a lot of pruning can be done in general.

Pruning of edge - face candidates based on applicability constraints

It is obvious that if two polyhedra collide, the first edge - face pairs that are going to intersect are associated to applicable contacts. The choice of the edge - face candidate pair, for each applicable contact, depends on the type of contact:

edgeface1.gif edgeface2.gif


The Spherical Face Orientation Graph (SFOG, for short...)

Polyhedral features can be mapped on the spherical surface in a straightforward manner:

Pairing of applicable features by means of the SFOG

By superposition of the SFOG of one polyhedron on the central symmetric image of the SFOG of the other polyhedron, a compact representation of all applicable vertex-face and edge-edge contacts is obtained:

The problem of finding applicable features is reduced to that of obtaining node-region and arc-arc intersections efficiently.

The algorithms

Last modified on monday, 15 April, 2002