The Intersection of Two Ringed Surfaces and Some Related Problems
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 ∪uCu1 and ∪vCv2, we formulate the condition Cu1 ∩ Cv2 ≠ ∅ (i.e., that the intersection of the two circles Cu1 and C...
Gespeichert in:
Veröffentlicht in: | Graphical models 2001-07, Vol.63 (4), p.228-244 |
---|---|
Hauptverfasser: | , , , , |
Format: | Artikel |
Sprache: | eng |
Online-Zugang: | Volltext |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Zusammenfassung: | 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 ∪uCu1 and ∪vCv2, we formulate the condition Cu1 ∩ Cv2 ≠ ∅ (i.e., that the intersection of the two circles Cu1 and Cv2 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 Cu1 ∩ Cv2. 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. |
---|---|
ISSN: | 1524-0703 1524-0711 |
DOI: | 10.1006/gmod.2001.0553 |