This paper presents an efficient and robust geometric algorithm that c
lassifies and detects all possible types of torus/sphere intersections
, including all degenerate conic sections (circles) and singular inter
sections. Given a torus and a sphere, we treat one surface as an obsta
cle and the other surface as the envelope surface of a moving ball. In
this case, the Configuration space (C-space) obstacle is the same as
the constant radius offset of the original obstacle, where the radius
of the moving ball is taken as the offset distance. Based on the inter
section between the C-space obstacle and the trajectory of the center
of the moving ball, we detect all the intersection loops and singular
contact point/circle of the original torus and sphere. Moreover, we ge
nerate exactly one starting point (for numerical curve tracing) on eac
h connected component of the intersection curve. All required computat
ions involve vector/distance computations and circle/circle intersecti
ons, which can be implemented efficiently and robustly. All degenerate
conic sections (circles) can also be detected using a few additional
simple geometric tests. The intersection curve itself(a quartic space
curve, in general) is then approximated with a sequence of cubic curve
segments. (C) 1998 Academic Press.