Algorithms for intersecting parametric and algebraic curves I: simple intersections

The problem of computing the intersection of parametric and algebraic curves arises in many applications of computer graphics and geometric and solid modeling. Previous algorithms are based on techniques from elimination theory or subdivision and iteration. The former is, however, restricted to low-degree curves. This is mainly due to issues of efficiency and numerical stability. In this article we use elimination theory and express the resultant of the equations of intersection as matrix determinant. The matrix itself rather than its symbolic determinant, a polynomial, is used as the representation. The problem of intersection is reduced to that of computing the eigenvalues and eigenvectors of a numeric matrix. The main advantage of this approach lies in its efficency and robustness. Moreover, the numerical accuracy of these operations is well understood. For almost all cases we are able to compute accurate answers in 64-bit IEEE floating-point arithmetic.

[1]  T. Sederberg,et al.  Comparison of three curve intersection algorithms , 1986 .

[2]  James Demmel,et al.  On computing condition numbers for the nonsymmetric eigenproblem , 1993, TOMS.

[3]  Gene H. Golub,et al.  Matrix computations , 1983 .

[4]  Dinesh Manocha,et al.  Detecting cusps and inflection points in curves , 1992, Comput. Aided Geom. Des..

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

[6]  J.J.S.P. Cabral,et al.  An introduction to splines for use in computer graphics & geometric modeling: Richard H. Bartels, John C. Beatty & Brian A. Barsky, Morgan Kaufmann Publishers, Inc., Los Altos, California, 1987 , 1992 .

[7]  Jack J. Dongarra,et al.  Matrix Eigensystem Routines — EISPACK Guide Extension , 1977, Lecture Notes in Computer Science.

[8]  C. Hoffmann Algebraic curves , 1988 .

[9]  Thomas W. Sederberg,et al.  Fat arcs: A bounding region with cubic convergence , 1989, Comput. Aided Geom. Des..

[10]  Ed Anderson,et al.  LAPACK users' guide - [release 1.0] , 1992 .

[11]  Dinesh Manocha,et al.  Algorithms for intersecting parametric and algebraic curves , 1992 .

[12]  S. Mudur,et al.  A new class of algorithms for the processing of parametric curves , 1983 .

[13]  B. Barsky,et al.  An Introduction to Splines for Use in Computer Graphics and Geometric Modeling , 1987 .

[14]  R. J. Walker Algebraic curves , 1950 .

[15]  T. Sederberg Algorithm for algebraic curve intersection , 1989 .

[16]  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.

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

[18]  George E. Collins,et al.  An efficient algorithm for infallible polynomial complex root isolation , 1992, ISSAC '92.

[19]  Dinesh Manocha Regular curves and proper parametrizations , 1990, ISSAC '90.

[20]  John D. Hobby Numerically stable implicitization of cubic curves , 1991, TOGS.

[21]  George Salmon Lessons introductory to the modern higher algebra , 1885 .

[22]  J. Demmel,et al.  LAPACK: a portable linear algebra library for supercomputers , 1989, IEEE Control Systems Society Workshop on Computer-Aided Control System Design.

[23]  Thomas W. Sederberg,et al.  Improperly parametrized rational curves , 1986, Comput. Aided Geom. Des..

[24]  Ron Goldman,et al.  Vector elimination: A technique for the implicitization, inversion, and intersection of planar parametric rational polynomial curves , 1984, Comput. Aided Geom. Des..

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

[26]  James Hardy Wilkinson,et al.  The evaluation of the zeros of ill-conditioned polynomials. Part I , 1959, Numerische Mathematik.

[27]  Gershon Elber,et al.  Hidden curve removal for free form surfaces , 1990, SIGGRAPH.

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

[29]  R. L. Magedson,et al.  Solutions of tangential surface and curve intersections , 1989 .

[30]  James Demmel,et al.  Design of a Parallel Nonsymmetric Eigenroutine Toolbox, Part I , 1993, PPSC.

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

[32]  J. H. Wilkinson The algebraic eigenvalue problem , 1966 .