Robust adaptive polygonal approximation of implicit curves☆
Introduction
An implicit object is defined as the set of solutions of an equation f(p)=0, where . For well-behaved functions f, this set is a manifold of dimension n−1 in . Of special interest to computer graphics are implicit curves (n=2) and implicit surfaces (n=3), although several problems in computer graphics can be formulated as high-dimensional implicit problems [1], [2].
Applications usually need a geometric model of the implicit object, typically a polygonal approximation. While it is easy to compute polygonal approximations for parametric objects, computing polygonal approximations for implicit objects is a challenging problem for two main reasons: first, it is difficult to find points on the implicit object [3]; second, it is difficult to connect isolated points into a mesh [4].
In this paper, we consider the problem of computing a polygonal approximation for a curve given implicitly by a function , i.e.In Section 2 we review some methods for approximating implicit curves, and in Section 3 we show how to compute robust adaptive polygonal approximations. By “adaptive” we mean two things: first, is explored adaptively, in the sense that effort is concentrated on the regions of that are near ; second, the polygonal approximation is adapted to the geometry of , having longer edges where is flat and the curvature is low, and shorter edges where bends more and the curvature is high. By “robust” we mean that the algorithm finds all pieces of in (implicit curves can have several connected components) and that it estimates correctly the variation of curvature along to identify pieces of where can be well approximated by straight lines. In other words, the computed approximation captures efficiently both the topology and the geometry of . Adaption and robustness are achieved by combining interval arithmetic and automatic differentiation, which are explained in Section 3.
An example of what our algorithm does is shown in Fig. 1 for the ellipse given implicitly by the equation x2/6+y2=1. Further examples are given in Section 3.6.
Section snippets
Approximating implicit curves
Approximating a curve given implicitly by is a difficult problem mainly because it is difficult to find just where lies in : it can be anywhere (even nowhere) in and it can have several components, of varying size, some of which may be closed and nested inside each other.
The classical method for avoiding chasing blindly inside is to decompose into a grid of small rectangular or triangular cells and then traverse the grid and locate by identifying those cells that intersect
Robust adaptive polygonal approximation
As discussed in Section 2, what we need for robust adaptive enumeration is some kind of oracle that reliably answers the question “Does this cell intersect ?”. Testing the sign of f at the vertices of the cell is an oracle, but not a reliable one. It turns out that it is easier to implement oracles that reliably answer the complementary question “Is this cell away from ?”. Such oracles test the absence of in the cell, rather than its presence, but they are just as effective for reliable
Related work
Early work on implicit curves in computer graphics concentrated on rendering, and consisted mainly of continuation methods in image space. Aken and Novak [28] showed how Bresenham's algorithm for circles can be adapted to render more general curves, but they only gave details for conics. Their work was later expanded by Chandler [29]. These two papers contain several references to the early work on the rendering problem. More recently, Glassner [30] discussed in detail a continuation algorithm
Conclusion
Algorithm 2 computes robust adaptive polygonal approximation of implicit curves. As far as we know, this is the first algorithm which computes a reliable enumeration that is both spatially and geometrically adaptive.
The natural next step in this research is to attack implicit surfaces, which have recently become again an active research area [37]. The ideas and techniques presented in this paper are useful for computing robust adaptive approximations of implicit surfaces. However, the solution
Acknowledgements
This research was done while J.B. Oliveira was visiting the Visgraf laboratory at IMPA during IMPA's summer post-doctoral program. Visgraf is sponsored by CNPq, FAPERJ, FINEP, and IBM Brasil. H. Lopes is a member of the Matmidia laboratory at PUC-Rio. Matmidia is sponsored by FINEP, PETROBRAS, CNPq, and FAPERJ. L. H. de Figueiredo is a member of Visgraf and is partially supported by a CNPq research grant.
References (37)
A dimensionality paradigm for surface interrogations
Computer Aided Geometric Design
(1990)- et al.
Sampling implicit objects with physically-based particle systems
Computers & Graphics
(1996) - et al.
Interval methods in computer graphics
Computers & Graphics
(1991) - et al.
Visualisation of implicit surfaces
Computers & Graphics
(2001) - et al.
Contour tracing by piecewise linear approximations
ACM Transactions on Graphics
(1990) - et al.
Computational morphology of curves
The Visual Computer
(1995) - et al.
Numerical continuation methods: an introduction
(1990) The design and analysis of spatial data structures
(1990)Methods and applications of interval analysis
(1979)Interval analysis
(1966)
Interval methods for processing geometric objects
IEEE Computer Graphics & Applications
On ray tracing parametric surfaces
Computer Graphics
Generative modeling for computer graphics and CAD
Interval arithmetic and recursive subdivision for implicit functions and constructive solid geometry
Computer Graphics
Ray tracing general parametric surfaces using interval arithmetic
The Visual Computer
Cited by (0)
- ☆
Based on “Robust adaptive approximation of implicit curves” by H. Lopes, J.B. Oliveira, and L.H. de Figueiredo, which appeared in Proceedings of SIBGRAPI 2001 (XIV Brazilian Symposium on Computer Graphics and Image Processing) pp. 10–17 © 2001 IEEE.