We present an efficient and robust algorithm to compute the intersection curve of two ringed surfaces, each being the sweep ∪uCu generated by a moving circle. Given two ringed surfaces ∪uC1u and ∪vC2v, we formulate the condition C1u∩C2v Ø ≠(i.e., that the intersection of the two circles C1u and C2v is nonempty) as a bivariate equation λ(u, v) = 0 of relatively low degree. Except for redundant solutions and degenerate cases, there is a rational map from each solution of λ(u, v) = 0 to the intersection point C1u ∩ C2v. Thus it is trivial to construct the.intersection curve once we have computed the zero-set of λ(u, v)= 0. We also analyze exceptional cases and consider how to construct the corresponding intersection curves. A similar approach produces an efficient algorithm for the intersection of a ringed surface and a ruled surface, which can play an important role in accelerating the ray-tracing of ringed surfaces. Surfaces of linear extrusion and surfaces of revolution reduce their respective intersection algorithms to simpler forms than those for ringed surfaces and ruled surfaces. In particular, the bivariate equation λ(u, v) = 0 is reduced to a decomposable form, f(u) = g(v) or ∥f(u) - g(v)∥ = |r(u)|, which can be solved more efficiently than the general case.
ASJC Scopus subject areas
- Modelling and Simulation
- Geometry and Topology
- Computer Graphics and Computer-Aided Design