Abstract
Testing for the existence of intersections is an important part of algorithms for interference detection, collision detection, and the like. We describe three techniques that can be used to implement an efficient intersection detection routine when entities are described constructively, that is, as set combina tions of primitive entities. All three techniques are described in a domain where constructive solid geometry is the princi pal entity description used, although their use in boundary representation schemes is also discussed. The first technique, called S-bounds, is a method of reasoning about where inter sections may be taking place; in practice it is fast and often sufficient. S-bounds can also be used as a general constraint manipulation method over Boolean algebras. The second technique is based on spatial subdivision, and is used mainly to improve the speed of the intersection test. The third tech nique is employed only on regions of space left by the first two techniques; it is a specialization of the "classical" tech nique of generate and test. The combination of these tech niques has been implemented as an intersection detection routine which shows a speedup over the "classical" algorithm of about two orders of magnitude.
Get full access to this article
View all access options for this article.
