An accurate algorithm for rasterizing algebraic curves

In this paper we introduce a new algorithm for rasterizing algebraic curves, and we discuss applications to surface and surface-surface intersection rendering and visualization. By rustm”zing an algebraic curve we mean to determine which cells, or pixels, from a square mesh of cells in the plane, are cut by a curve represented as the set of zeros of a polynomial in two variables. By using a recursive space subdivision scheme, the problem is be reduced to testing whether the curve cuts a square or not. Other mwearchers have followed this approach, but their tests are either computationally expensive, or apply just to special cases. Curves with singularities are particularly difficult to deal with, and most know algorithms fail to nmder these curves correctly. Our contribution in this paper is the introduction of a computationally effiaent and asymptotically correct test, which applies not only to dimension two, but also to dimension time and above. We prove that the recursive space subdivision algorithm based on this new test renders a curve of constant width, even in neighborhoods of singular points, and with no missing parts. For example, if ~ is a polynomial, it produces the same results whether the coefficients of ~ or ~z are given as input to the algorithm. Not many algorithms satisfy this property. Finally, the same methodology can be applied to compute a set of voxels containing an algebraic surface, and by representing it as a singular surface, space algebraic curves (surface-surface intemections) can be approximated as well. We show examples of these applications. This sets of voxels can be used for tolerance analysis and to compute polyhedral or piecewise linear approximations of the curves or surfaces for interactive nmdering purposes as well. Permission (o copy without fee all or pan of this material is granted provided {hal the copies are not made or distributed for direct commercial advantage, the ACM copyright notice and the title of the publication and its date appar, and notice is given that copying is by permission of the Association for Computing Machinery. To copy otherwise. or to republish, requires a fee arrd/or specific permission. 2nd ACM Solid Mcdeling ‘93-5/93/Montreal. Canada @ 1993 ACM 0-89791 -584 -4/93/0005r022 1...$1.50

[1]  E. Allgower,et al.  Simplicial and Continuation Methods for Approximating Fixed Points and Solutions to Systems of Equations , 1980 .

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

[3]  D.C. Anderson,et al.  Implicitization, inversion, and intersection of planar rational cubic curves , 1985, Comput. Vis. Graph. Image Process..

[4]  R. Morris A New Method for Drawing Algebraic Surfaces , 1992, IMA Conference on the Mathematics of Surfaces.

[5]  David P. Dobkin,et al.  Contour tracing by piecewise linear approximations , 1990, TOGS.

[6]  John D. Hobby Rasterization of nonparametric curves , 1990, TOGS.

[7]  Bud Mishra,et al.  Counting Real Zeros , 1991 .

[8]  Alan Kalvin,et al.  Segmentation and Surface-Based Modeling Objects in Three-Dimensional Biomedical Images , 1991 .

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

[10]  E. Allgower,et al.  An Algorithm for Piecewise-Linear Approximation of an Implicitly Defined Manifold , 1985 .

[11]  Allan Borodin,et al.  The computational complexity of algebraic and numeric problems , 1975, Elsevier computer science library.

[12]  B.D. Holm,et al.  An Improved Algorithm for the Generation of Nonparametric Curves , 1973, IEEE Transactions on Computers.

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

[14]  Jules Bloomenthal,et al.  Polygonization of implicit surfaces , 1988, Comput. Aided Geom. Des..

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

[16]  Mark Hall,et al.  Adaptive polygonalization of implicitly defined surfaces , 1990, IEEE Computer Graphics and Applications.

[17]  Mark Novak,et al.  Curve-drawing algorithms for Raster displays , 1985, TOGS.

[18]  Chandrajit L. Bajaj,et al.  Automatic parameterization of rational curves and surfaces IV: algebraic space curves , 1988, TOGS.

[19]  C. Bajaj,et al.  Automatic parametrization of rational curves and surfaces II: cubics and cubicoids , 1987 .

[20]  Ron Goldman,et al.  Implicit representation of parametric curves and surfaces , 1984, Comput. Vis. Graph. Image Process..

[21]  William E. Lorensen,et al.  Marching cubes: A high resolution 3D surface construction algorithm , 1987, SIGGRAPH.

[22]  S. Abhyankar,et al.  Automatic parameterization of rational curves and surfaces 1: conics and conicoids , 1987 .

[23]  Michael L. Dowling A Fast Parallel Horner Algorithm , 1990, SIAM J. Comput..

[24]  Stefan Gnutzmann,et al.  Simplicial pivoting for mesh generation of implicity defined surfaces , 1991, Comput. Aided Geom. Des..