An efficient surface intersection algorithm based on lower-dimensional formulation

We present an efficient algorithm to compute the intersection of algebraic and NURBS surfaces. Our approach is based on combining the marching methods with the algbraic formulation. In particular, we propose and matrix computations. We present algorithms to compute a start point on each component of the intersection curve (both open and closed components), detect the presence of singularities, and find all the curve branches near the singularity. We also suggest methods to compute the step size during tracing to prevent component jumping. The algorithm runs an order of magnitude faster than previously published robust algorithms. The complexity of the algorithm is output sensitive.

[1]  Eric Klassen,et al.  Exploiting topological and geometric properties for selective subdivision , 1985, SCG '85.

[2]  Richard F. Riesenfeld,et al.  A Theoretical Development for the Computer Generation and Display of Piecewise Polynomial Surfaces , 1980, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[3]  Dieter Lasser,et al.  Intersection of parametric surfaces in the Bernstein—Be´zier representation , 1986 .

[4]  Ramon F. Sarraga,et al.  Algebraic methods for intersections of quadric surfaces in GMSOLID , 1983, Comput. Vis. Graph. Image Process..

[5]  Dinesh Manocha,et al.  Computing selected solutions of polynomial equations , 1994, ISSAC '94.

[6]  George E. Collins,et al.  Quantifier elimination for real closed fields by cylindrical algebraic decomposition , 1975 .

[7]  P. Lancaster,et al.  Factorization of selfadjoint matrix polynomials with constant signature , 1982 .

[8]  Thomas W. Sederberg,et al.  Loop detection in surface patch intersections , 1988, Comput. Aided Geom. Des..

[9]  Rida T. Farouki,et al.  The characterization of parametric surface sections , 1986, Comput. Vis. Graph. Image Process..

[10]  Nicholas M. Patrikalakis,et al.  Surface-to-surface intersections , 1993, IEEE Computer Graphics and Applications.

[11]  George Anthony Kriezis Algorithms for rational spline surface intersections , 1990 .

[12]  Les A. Piegl,et al.  Geometric method of intersecting natural quadrics represented in trimmed surface form , 1989 .

[13]  Chandrajit L. Bajaj,et al.  Automatic parameterization of rational curves and surfaces III: Algebraic plane curves , 1988, Comput. Aided Geom. Des..

[14]  George E. Collins,et al.  Hauptvortrag: Quantifier elimination for real closed fields by cylindrical algebraic decomposition , 1975, Automata Theory and Formal Languages.

[15]  Dinesh Manocha Solving polynomial systems for curve, surface and solid modeling , 1993, Solid Modeling and Applications.

[16]  Christoph M. Hoffmann A dimensionality paradigm for surface interrogations , 1990, Comput. Aided Geom. Des..

[17]  Aristides A. G. Requicha,et al.  Solid modeling and beyond , 1992, IEEE Computer Graphics and Applications.

[18]  John M. Snyder,et al.  Interval analysis for computer graphics , 1992, SIGGRAPH.

[19]  D. Manocha,et al.  Algebraic and numeric techniques in modeling and robotics , 1992 .

[20]  Vibeke Skytt,et al.  Recursive subdivision and iteration in intersections and related problems , 1989 .

[21]  Dinesh Manocha,et al.  A new approach for surface intersection , 1991, SMA '91.

[22]  Tor Dokken Finding intersections of B-spline represented geometries using recursive subdivision techniques , 1985, Comput. Aided Geom. Des..

[23]  Christoph M. Hoffmann,et al.  Geometric and Solid Modeling , 1989 .

[24]  K. Cheng Using plane vector fields to obtain all the intersection curves of two general surfaces , 1989 .

[25]  Michael E. Hohmeyer,et al.  A surface intersection algorithm based on loop detection , 1991, SMA '91.

[26]  Nicholas M. Patrikalakis,et al.  Topological and differential-equation methods for surface intersections , 1992, Comput. Aided Des..

[27]  Jarek Rossignac,et al.  Interactive inspection of solids: cross-sections and interferences , 1992, SIGGRAPH.

[28]  Dinesh Manocha,et al.  Efficient representations and techniques for computing B-rep's of CSG models with NURBS primitives , 1996 .

[29]  Dennis S. Arnon,et al.  Topologically reliable display of algebraic curves , 1983, SIGGRAPH.

[30]  A. Requicha,et al.  Piecewise-circular curves for geometric modeling , 1987 .

[31]  Nicholas M. Patrikalakis,et al.  Method for intersecting algebraic surfaces with rational polynomial patches , 1991, Comput. Aided Des..

[32]  Rida T. Farouki,et al.  On the numerical condition of polynomials in Bernstein form , 1987, Comput. Aided Geom. Des..

[33]  T. Sederberg Implicit and parametric curves and surfaces for computer aided geometric design , 1983 .

[34]  Chandrajit L. Bajaj,et al.  Tracing surface intersections , 1988, Comput. Aided Geom. Des..

[35]  A. L. Dixon The Eliminant of Three Quantics in two Independent Variables , 1909 .

[36]  Christoph M. Hoffmann,et al.  Geometric and Solid Modeling: An Introduction , 1989 .

[37]  Tomoyuki Nishita,et al.  Geometric hermite approximation of surface patch intersection curves , 1991, Comput. Aided Geom. Des..

[38]  Dinesh Manocha,et al.  Algebraic pruning: a fast technique for curve and surface intersection , 1997, Comput. Aided Geom. Des..

[39]  Raimund Seidel,et al.  Linear programming and convex hulls made easy , 1990, SCG '90.

[40]  Dinesh Manocha,et al.  SOLVING SYSTEMS OF POLYNOMIAL EQUATIONS , 2002 .

[41]  Robert E. Barnhill,et al.  A marching method for parametric surface/surface intersection , 1990, Comput. Aided Geom. Des..