12
Volume 16,(1997) number 5 pp. 295–306 Interactive Visualization of Implicit Surfaces with Singularities Angela R ¨ osch , Matthias Ruhl and Dietmar Saupe Institut f ¨ ur Informatik, Universit¨ at Freiburg, Germany Abstract This paper presents work on two methods for interactive visualization of implicit surfaces: physically-based sam- pling using particle systems and polygonization followed by physically-based mesh improvement which explicitly makes use of the surface-defining equation. While most previous work applied to bounded manifolds without sin- gularities and without boundary (topological spheres) we broaden the scope of the methods to include surfaces with such features, in particular cusp points and surface self-intersections. These aspects are not (yet) essen- tial for computer graphics modelling with implicit surfaces but they naturally occur in simulations of interest in mathematical visualization. In this paper we use the Kummer family of algebraic surfaces as an example. 1. Introduction Our work is motivated by efforts in the mathematical com- munity for the visualization of implicit algebraic surfaces. Algebraic surfaces and their deformations have been stud- ied for more than one hundred years. Visualization of these surfaces has always been regarded important and tradition- ally plaster models were used for this purpose. Recently, of course, computer graphical studies have been carried out. Physically-based sampling methods (1), polygonization (2), and raytracing (3) are three principally different approaches to visualize implicit surfaces. They are ordered here with re- spect to increasing computational complexity as well as in- creasing image quality. Hanrahan 1 investigates the raytrac- ing approach to the rendering of algebraic surfaces. The central computational task is twofold. First, one has to ef- ficiently convert the equations of the surface and a given ray into a single equation, i.e., a polynomial in one variable. Sec- ond, a numerical procedure must be employed to compute the smallest positive root of the polynomial. Hanrahan chose a method developed by Collins and Loos, which is based on Descartes rule of signs. The approach was also tested with other root finding methods 2 . An important example of a deformation of algebraic sur- faces was proposed by Kummer in the last century. It is given Now at Frauenhofer Institute for Industrial Engineering (IAO), Stuttgart, Germany by a parameterized family of fourth-order polynomials in affine coordinates for x, y and z (see section 3.4 for the defin- ing equation). In this deformation a double sphere is trans- formed into Steiner’s roman surface and then into a tetra- hedron. Although individual surfaces from this family had been visualized before, only just recently a sequence of (ray- cast) images illustrating the entire deformation was given by Barth and Endraß 3 . In our work 4 we presented correspond- ing computer animations. We demonstrated a feasible ap- proach to rendering animations of algebraic surfaces suit- able not only for computer graphics specialists but also for students and researchers in mathematics without such back- ground. This animation was based on the original method of Hanrahan and supported by the public domain raytracer rayshade of Kolb 5 which requires supplying a program mod- ule for the ray-surface intersection calculations correspond- ing to algebraic surfaces. See Figure 1 for three frames of the animation. This approach — although suitable for high quality ren- derings — lacks interactive control which is necessary to arrive at properly chosen camera paths, parameter dynam- ics et cetera for an animation of a priori unknown surfaces. There are two alternative approaches to rendering algebraic surfaces that may provide the necessary speed for interac- tive control and animation. The first one is particle based and uses the sampling method of Witkin and Heckbert pre- sented in their SIGGRAPH ’94 paper 6 for algebraic sur- faces. A simple constraint equation locks a set of parti- c The Eurographics Association 1997. Published by Blackwell Publishers, 108 Cowley Road, Oxford OX4 1JF, UK and 238 Main Street, Cambridge, MA 02142, USA.

Interactive Visualization of Implicit Surfaces with Singularitiespeople.csail.mit.edu/ruhl/papers/1997-cgf.pdftial for computer graphics modelling with implicit surfaces but they naturally

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Interactive Visualization of Implicit Surfaces with Singularitiespeople.csail.mit.edu/ruhl/papers/1997-cgf.pdftial for computer graphics modelling with implicit surfaces but they naturally

Volume 16, (1997) number 5 pp. 295–306

Interactive Visualization of Implicit Surfaces withSingularities

Angela Rosch†, Matthias Ruhl and Dietmar Saupe

Institut fur Informatik, Universitat Freiburg, Germany

AbstractThis paper presents work on two methods for interactive visualization of implicit surfaces: physically-based sam-pling using particle systems and polygonization followed by physically-based mesh improvement which explicitlymakes use of the surface-defining equation. While most previous work applied to bounded manifolds without sin-gularities and without boundary (topological spheres) we broaden the scope of the methods to include surfaceswith such features, in particular cusp points and surface self-intersections. These aspects are not (yet) essen-tial for computer graphics modelling with implicit surfaces but they naturally occur in simulations of interest inmathematical visualization. In this paper we use the Kummer family of algebraic surfaces as an example.

1. Introduction

Our work is motivated by efforts in the mathematical com-munity for the visualization of implicit algebraic surfaces.Algebraic surfaces and their deformations have been stud-ied for more than one hundred years. Visualization of thesesurfaces has always been regarded important and tradition-ally plaster models were used for this purpose. Recently, ofcourse, computer graphical studies have been carried out.Physically-based sampling methods (1), polygonization (2),and raytracing (3) are three principally different approachesto visualize implicit surfaces. They are ordered here with re-spect to increasing computational complexity as well as in-creasing image quality. Hanrahan1 investigates the raytrac-ing approach to the rendering of algebraic surfaces. Thecentral computational task is twofold. First, one has to ef-ficiently convert the equations of the surface and a given rayinto a single equation, i.e., a polynomial in one variable. Sec-ond, a numerical procedure must be employed to computethe smallest positive root of the polynomial. Hanrahan chosea method developed by Collins and Loos, which is based onDescartes rule of signs. The approach was also tested withother root finding methods2.

An important example of a deformation of algebraic sur-faces was proposed by Kummer in the last century. It is given

† Now at Frauenhofer Institute for Industrial Engineering (IAO),Stuttgart, Germany

by a parameterized family of fourth-order polynomials inaffine coordinates forx, y andz (see section 3.4 for the defin-ing equation). In this deformation a double sphere is trans-formed into Steiner’s roman surface and then into a tetra-hedron. Although individual surfaces from this family hadbeen visualized before, only just recently a sequence of (ray-cast) images illustrating the entire deformation was given byBarth and Endraß3. In our work4 we presented correspond-ing computer animations. We demonstrated a feasible ap-proach to rendering animations of algebraic surfaces suit-able not only for computer graphics specialists but also forstudents and researchers in mathematics without such back-ground. This animation was based on the original methodof Hanrahan and supported by the public domain raytracerrayshadeof Kolb5 which requires supplying a program mod-ule for the ray-surface intersection calculations correspond-ing to algebraic surfaces. See Figure 1 for three frames ofthe animation.

This approach — although suitable for high quality ren-derings — lacks interactive control which is necessary toarrive at properly chosen camera paths, parameter dynam-ics et cetera for an animation of a priori unknown surfaces.There are two alternative approaches to rendering algebraicsurfaces that may provide the necessary speed for interac-tive control and animation. The first one is particle basedand uses the sampling method of Witkin and Heckbert pre-sented in their SIGGRAPH ’94 paper6 for algebraic sur-faces. A simple constraint equation locks a set of parti-

c© The Eurographics Association 1997. Published by Blackwell Publishers, 108 CowleyRoad, Oxford OX4 1JF, UK and 238 Main Street, Cambridge, MA 02142, USA.

Page 2: Interactive Visualization of Implicit Surfaces with Singularitiespeople.csail.mit.edu/ruhl/papers/1997-cgf.pdftial for computer graphics modelling with implicit surfaces but they naturally

2 A. Rosch, M. Ruhl and D. Saupe / Interactive Visualization of Implicit Surfaces with Singularities

(a) ν2 = 1.02 (b) ν2 = 2.44 (c) ν2 = 1.28·106

Figure 1: Raytraced Kummer surfaces

(a) polygonizer output (b) improver output (c) rayshade output

Figure 2: Visualization of the Kummer surface withν2 = 1.2

cles on a surface while the particles and the surface are al-lowed to move. Local repulsion is used to make the points,calledfloaters, spread evenly across the surface. By adap-tively varying the radius of repulsion while fissioning andkilling particles based on the local density, good samplingdistributions can be achieved very rapidly. Witkin and Heck-bert’s work focussed more onmodellingof implicit surfaceswhile we are more interested in a priori defined parameter-dependent surfaces. Moreover, our surfaces have singulari-ties and they are unbounded (or clipped to a finite volumeresulting in a boundary curve) in contrast to theirs whichare single connected components without singularities orboundary. To cope with these difficulties we modify thephysical model underlying the mechanism of floaters by in-troducing boundary effects, and we adapt the radii of repul-sion to local surface properties (curvature and closeness tosingularities). With these modifications we can achieve nearreal-time sampling and rendering of deforming implicit al-gebraic surfaces.

The second approach considered here polygonizes the im-plicit surfaces. A collection of approximating triangles isgenerated which are well suited for rendering by means ofcommon graphics hardware. There exists a large body of lit-

erature on this topic7. In our implementation8 a marching-9, 10 or chain-of-cubes11 algorithm is used to quickly derive afirst polygonization (see figure 2(a)).

To iron out local insufficiencies, especially concerningcurvature, singularities and artifacts, the vertices can auto-matically be moved around by an improver module. Theunderlying algorithm interprets the polygonization as asurface-constrained spring-mass system. This yields muchbetter polygonal models in a few time steps (see figure 2(b)).A further application of the tool8 allows to select a suitableview, lighting, material, clipping etc. of an implicit surfaceunder interactive control and subsequently produces a corre-sponding parameter input file for therayshadeprogram (seefigure 2(c)), which operates using the implicit surface repre-sentation instead of the polygonization.

Our methods are exemplified using simple algebraic sur-faces and the Kummer family of surfaces. However, the re-sults carry over to implicit surfaces in general provided theunderlying surface-defining functions are sufficiently differ-entiable.

c© The Eurographics Association 1997

Page 3: Interactive Visualization of Implicit Surfaces with Singularitiespeople.csail.mit.edu/ruhl/papers/1997-cgf.pdftial for computer graphics modelling with implicit surfaces but they naturally

A. Rosch, M. Ruhl and D. Saupe / Interactive Visualization of Implicit Surfaces with Singularities 3

2. Previous Related Work

There are several approaches for a mathematically faith-ful visualization of implicit surfaces that may include sin-gularities. Sederberg and Zundel12 presented a robust scanline algorithm that correctly displays singularities of arbi-trary complexity. This is achieved by applying algebraictools such as resultants to local surface representations inthe Bernstein basis. Hall and Warren13 use very much re-lated techniques for an adaptive polygonization of implicitalgebraic surfaces. The surface is enclosed in a collectionof tetrahedra, which are recursively subdivided. The Bern-stein/Bezier basis is used to eliminate tetrahedra and to ter-minate subdivision. This way convergence is guaranteed. Ina post processing vertices very close to the surface are movedonto the surface in order to eliminate small or thin trianglesof the resulting polygonal surface representation. Bloomen-thal and Ferguson14 consider the general problem of polygo-nizing implicit surfaces with singularities, thereby general-izing traditional polygonization methods. The model of im-plicit surfaces in their work differs from the usual one in thata ’multiple regionalization’ is employed. All of the methodsdiscussed have to pay the price of increased processing timeto guarantee the correctness of the result. Thus, their use forinteractive applications is limited.

Stander and Hart15 use Morse theory to guarantee topo-logical correctness of polygonized implicit surfaces fromone-parameter families of surfaces. This is achieved by mon-itoring all critical points of the underlying function as the pa-rameter changes. The method will work in cases where thesecritical points do not infer singularities of the surfaces. Thus,it does not apply to the case studied in this paper.

Mesh generation for implicit surfaces in connection withparticle-based dynamics has been studied by some au-thors. One can distinguish two fundamentally differentapproaches16:

1. The particles are generated, simulated according to amore or less physical model, and then a polygonizationis invoked using the final particle positions as polygonvertices.

2. An implicit surface polygonizer is applied first, followedby a relaxation of the vertices.

An approach of the first kind was first described byFigueiredo et al16. The implicit surface is sampled usingparticles which are released at arbitrary positions in spaceand then follow the associated gradient flow until equilib-rium is reached on the surface. After that particles are sub-jected to a relaxation process similar to that formulated byTurk17, or Szeliski and Tonneson18. Finally, a constrainedDelauney triangulation is constructed. Examples are givenonly for implicit curves and surfaces without any singular-ities. It remains unclear how to construct the triangulationin the presence of singularities such as self-intersecting sur-faces.

The method of Shimada and Gossard19 (“bubble mesh-ing”) may also be placed in the first category. In this ap-proach the surface is approximated by a number of balls(packed spheres) which then interact according to a dynami-cal model allowing a mechanism for birth and death of bub-bles. In a second step the centers of the balls are connectedusing a constrained Delauney triangulation, from which apolygonal model of the surface can be extracted. This ap-proach is elegant, however, it is not worked out for implicitsurfaces but for parameterized objects (lines, surfaces, vol-umes). In particular it remains an open question how thepresence of singularities in a surface might affect the re-sults. Again it is an open problem to define and computea constrained Delauney triangulation for an underlying sur-face with singularities.

There exists a large body of literature on the topic of meshgeneration and optimization, an important step in finite ele-ment computations and for simplifying and smoothing com-plex real-world polygonal models obtained from physicalsampling processes. However, we are aware of only one con-tribution that specifically addresses the issue of implicit sur-faces in the spirit of the second category above, namely thepaper of Figueiredo et al16. In that work a triangulation of aspatial region enclosing the surface is used (as in Hall andWarren’s work13) rather than a polygonal model of the sur-face itself. A spring-mass system is attached to the verticesand edges. Care must be taken to prevent the vertices fromcollapsing onto the surface while ensuring that they do notescape from it either. The method is not adaptive with re-spect to curvature and singularities.

Ning and Bloomenthal10 review and compare implicit sur-face polygonizers that use cubical base cells. Resulting trian-gle meshes may contain many triangles, a lot of which typ-ically are very small or thin. Thus, the triangulation can besimplified. The method of Schroeder, Zarge, and Lorensen20

removes vertices for this purpose. No adaptation by movingvertices around is attempted. A similar approach is presentedby Kalvin et al21. Hoppe et al22 also reduce the number ofvertices in addition to modifying vertex positions accord-ing to minimization of a suitable energy functional. Lapla-cian smoothing is another method to smooth a triangula-tion where vertices are replaced by the center of mass ofthe neighboring vertices23. None of the works mentioned inthis paragraph make reference to an underlying mathemat-ical description of the surface because they assume that aninitial polygonal model is all that is given. We believe thatin the presence of such a precise mathematical surface defi-nition it would be a mistake not to make use of it, especiallywhen considering the neighborhood of singularities, wherea ’plain’ mesh simplification may tend to worsen the resultlike widening the gap near a cusp point.

A step in this direction has been made by Schmidt24 whosuggests to increase the resolution of the cubical grid in thevicinity of possible singularities of the surface. From this

c© The Eurographics Association 1997

Page 4: Interactive Visualization of Implicit Surfaces with Singularitiespeople.csail.mit.edu/ruhl/papers/1997-cgf.pdftial for computer graphics modelling with implicit surfaces but they naturally

4 A. Rosch, M. Ruhl and D. Saupe / Interactive Visualization of Implicit Surfaces with Singularities

adaptive grid a static polygonal mesh is generated whichapproximates the implicit surface. Several heuristic criteriaare used to determine closeness to a singularity, each one ofthem testing the implicit function at an intermediate point.

In our work a different approach is taken, namely that ofa physically-based sampling or mesh improvement.

3. Sampling By Floaters

In section 3.1 we briefly summarize the physically-based ap-proach to sampling an implicitly defined surface by floatersfollowing the presentation of Witkin and Heckbert6. In sec-tions 3.2 to 3.4 we discuss the appropriate extensions ofthese methods for the application to surfaces with boundarycurves and singularities.

Particle-based approaches for static surfaces have previ-ously been studied by Turk17, 25 and by de Figueiredo et al16

for example. Oriented particle systems were also used fordynamic modelling rather that visualization18, 26.

3.1. Simulation

We consider parameter-dependent implicit surfaces in three-dimensional Euclidean space, where an animation of thesurface occurs by variation of surface parameters, chang-ing the shape of the surface with time. The surface is givenby the zeroset of a differentiable function:F(x,q(t)) = 0wherex∈ R3, andq(t) ∈ Rm denotes a set ofm parameterssmoothly changing with timet. We assume a set ofn parti-cles for the purpose of sampling the surface. Particlei hastrajectorypi(t) (superscripts denote particle indices). Parti-cles moving about on the surface must satisfy the equations

F i(t) = F(pi(t),q(t))≡ 0

and, therefore

F i = F ix · pi +F i

q · q = 0.

The dots denote time derivatives and subscripts specify gra-dients ofF with respect tox or q. In order to move particlesto the surface and to keep them on the surface in spite of nu-merical integration errors a feedback termF i =−φF i with aconstantφ > 0 is used leading to the basic constraint equa-tion

Ci(pi , pi ,qi , qi) = F ix · pi +F i

q · q+ φF i = 0. (1)

Here pi is the unknown. Thus, for each particle this yieldsone scalar equation leaving two degrees of freedom. The ac-tual velocities are determined via an optimization. For eachparticlei a desired velocityPi will be defined below and theoptimization requires to minimize the objective function

G(p1, . . . , pn) =12

n

∑i=1||pi −Pi ||2

For example, setting allPi = 0 will result in minimizing par-ticle speeds. Using the classic method of Lagrange multipli-ers the equation

Gpi +n

∑j=1

λiC jpi = 0 (2)

leads to the solution of the constrained optimization problemyielding the velocity equations

pi = Pi −F i

x ·Pi +F iq · q+ φF i

F ix ·F i

xF i

x.

At this point the definition of the desired particle velocitiesremains to be given. It serves the purpose of quickly produc-ing an acceptable sampling density over the surface and isbased on repulsion of particles and the finiteness of the sur-face. The repulsion forces are based on the concept of the’energy’ of particles and are taken proportional to energygradients. Witkin and Heckbert define an adaptive schemeby setting the energy of particlei due to particlej as

Ei j = αexp

(−||r

i j ||2

2(σi)2

)(3)

wherer i j = pi − p j . The parametersσi > 0 can be regardedas some kind of repulsion radius of the particlei. The totalenergy at particlei is the sum

Ei =n

∑j=1

(Ei j +E ji ). (4)

Then the desired velocities come out to be

Pi =−(σi)2Eipi = (σi)2

n

∑j=1

(r i j

(σi)2 Ei j +r i j

(σ j )2 E ji). (5)

In order to quickly move particles into sparse regions therepulsion radii can be controlled adaptively. This is achievedby driving all of the energies to a global desired energy level.In effect, this yields another set of simple differential equa-tions for the radiiσi . To achieve a uniform sampling densityparticles with large repulsion radii are required to fission andlikewise, particles with small repulsion radii can be elimi-nated. Witkin and Heckbert suggest to fission a particle, if itis near equilibrium (small speed relative to its radius), andeither its radius is large (σi > σmax) or it carries high en-ergy and its radius is above a given nominal radiusσ. Theradius of the two new particles are set toσi/

√2 and their

desired velocities are taken as random directions scaled ap-propriately. A particle is a candidate for elimination, if it isnear equilibrium, its repulsion radius is small, and if a ran-domized test succeeds (in order to prevent ’mass suicide’ inovercrowded regions).

We remark that our exposition of the method necessarilyis very brief; implementation details and motivations can befound in the original article6. Moreover, the method also al-lows the determination of the parameters of the surface viacontrol points (useful for modelling with implicit surfaces),

c© The Eurographics Association 1997

Page 5: Interactive Visualization of Implicit Surfaces with Singularitiespeople.csail.mit.edu/ruhl/papers/1997-cgf.pdftial for computer graphics modelling with implicit surfaces but they naturally

A. Rosch, M. Ruhl and D. Saupe / Interactive Visualization of Implicit Surfaces with Singularities 5

the theory of which is based on the same differential equa-tions approach as that of the floaters described above.

3.2. Handling of Unbounded Surfaces

In order to allow for unbounded surfaces, where the originalsampling method would not work, we have introduced halfspaces and spheres as clipping volumes. Instead of extendingthe physical model to incorporate forces that would keep theparticles constrained within the clipping volumes we foundthat a simpler approach yields an even better result for ourapplication. We suggest to monitor the particle trajectoriesand whenever a particle is moved outside the clipping vol-ume we simply project it back onto the boundary of the clip-ping volume. In the case of a half space this is an orthogonalprojection onto the hyperplane defining the volume, and inthe case of the sphere the projection occurs in the directiontowards the sphere center.

3.3. Considering Singularities

As originally demonstrated6 the method works fine for com-pact smooth surfaces without singularities. Selfintersectionsand cusp points of the surface, however, will produce theartifact of nonuniform sampling since particles distributednear such singularities locally repel each other stronger thanparticles in a regular surface patch with the same sam-pling density. To overcome this problem we propose severalheuristics:

• To avoid the interference of floaters positioned on differ-ent parts of the surface near a selfintersection, we modifythe repulsion energy (equation 3) to be

Ei j = αexp

(−||r

i j ||2

2(σi)2

)|cos

(F i

x,Fj

x

)|.

(Here cos(x,y) = x·y||x||·||y|| .) In the extreme case of an or-

thogonal intersection this allows the floaters from thetwo surface sheets to pass through each other unhindered(compare figures 4(c) and 4(d)).

• We have tried to adapt the desired particle radius by usinga separate radiusσi

max = µiσmax for each particle insteadof aglobalfissioning radiusσmax. The factorµi is chosendepending on local surface curvature and proximity to asingularity. We have investigated two possibilities for thisfactor:

– µi = αi := min{|cos

(F i

x,Fx(vik))|}

, where thevik are

several points chosen randomly on the perimeter of thefloater.αi gives an indication of the maximal curva-ture at the floater position. The idea behind this is thatat points of high curvature a surface can be sampledbetter using smaller floaters.

– To sample the surface more densely near singularities(arguably the most interesting points of a surface), wechoose a factor that estimates the distance to the near-est singularity using Newton’s method. Singularities

are given by points where the gradientFx vanishes. Tocompute such a point with Newton’s method, startingout from the particle positionpi , the second deriva-tive Fxx(pi) (a 3 by 3 matrix) is required. The New-ton correctorr is the solution ofFxx(pi) · r = Fx(pi)and its norm||r|| serves at an estimate of the dis-tance betweenpi and the nearest singularity. Now we

setµi = βi := min( ||x||γ ,1). The minimization is used,

since the scaling factorµi should not become greaterthan 1.γ is a scaling factor, which was set to 1 for ourexperiments, but needs to be changed if the scale ofthe displayed object is varied greatly.

Both valuesαi andβi can be used asµi in σimax= µiσmax.

In our experiments we found that both improved the sam-pling of most surfaces but not for all. To alleviate the indi-vidual short-comings ofαi andβi , we used a linear com-bination of the two in our implementation, namely we setµi = 1

3αi + 23βi .

Using these heuristics, ’ad hoc’ as they may be, leads toacceptable results for all surfaces that were tested, as shownbelow.

3.4. Results

We have tested our methods using two very simple implicitsurfaces with singularities and more complex algebraic sur-faces of degree four, the Kummer family:

1. A cone with a single cusp point clipped at two planes,one of which contains the cusp. No parameter animationwas employed (q(t)≡ constant) (see figure 3).

2. The union of two intersecting planes, clipped at a sphere.The planes intersect orthogonally and the intersectionline moves back and forth by changing the parametersq(t) appropriately (see figure 4).

3. The parameterized family of Kummer surfaces as used inthe raytraced animation. The equation is

(3−ν2)(x2 +y2 +z2−ν2)2− (3ν2−1)pqrs= 0

whereν ∈ R is the parameter and

p = 1−z−x√

2,

q = 1−z+x√

2,

r = 1+z+y√

2,

s = 1+z−y√

2.

The surface is unbounded forν2 ≥ 1 and clipped at asphere whose radius is chosen so that the displayed sur-face contains all of the singular points (see figure 5).

On an SGI Indy, with a R4600SC processor at 133 MHz,the frame rate is between 5 Hz for the Kummer surface (us-ing 500 floaters) and 20 Hz for the cone (using about 80floaters).

Figures 3 to 5, generated by running a raytracing programon data produced by our particle simulator, display some

c© The Eurographics Association 1997

Page 6: Interactive Visualization of Implicit Surfaces with Singularitiespeople.csail.mit.edu/ruhl/papers/1997-cgf.pdftial for computer graphics modelling with implicit surfaces but they naturally

6 A. Rosch, M. Ruhl and D. Saupe / Interactive Visualization of Implicit Surfaces with Singularities

(a) The cone in its initial rendering phase. Several new parti-cles are inserted into the scene.

(b) The maximal number of particles are on the cone surface.An equilibrium point has been reached such that the particledensity is higher near the singularity as desired.

Figure 3: Floaters approximating a cone

(a) Two intersecting planes, a few particles. (b) The planes with more particles.

(c) Particles on planes at equilibrium. Note that the floatersintersect each other at the singularity.

(d) The same planes approximated using the originalmethod6. Here the particles repel each other at the singularity,leading to a sub-optimal sampling.

Figure 4: Floaters approximating two intersecting planes

c© The Eurographics Association 1997

Page 7: Interactive Visualization of Implicit Surfaces with Singularitiespeople.csail.mit.edu/ruhl/papers/1997-cgf.pdftial for computer graphics modelling with implicit surfaces but they naturally

A. Rosch, M. Ruhl and D. Saupe / Interactive Visualization of Implicit Surfaces with Singularities 7

(a) Kummer surface atν2 = 1.5 with a few particles not yetat equilibrium.

(b) Kummer surface atν2 = 1.5 with more particles and atequilibrium.

(c) Kummer surface atν2 = 2.0. (d) Kummer surface atν2 = 3.0, consisting of four intersect-ing planes.

Figure 5: Floaters approximating Kummer surfaces

c© The Eurographics Association 1997

Page 8: Interactive Visualization of Implicit Surfaces with Singularitiespeople.csail.mit.edu/ruhl/papers/1997-cgf.pdftial for computer graphics modelling with implicit surfaces but they naturally

8 A. Rosch, M. Ruhl and D. Saupe / Interactive Visualization of Implicit Surfaces with Singularities

of the results. The renderings show the floaters as shadeddisks with normal vectors obtained from the gradients ofthe surface’s defining functionF . The radii of the disks aretaken proportional to the particles’ repulsion radii. Particlesviewed from the ’back side’ are shown in a darker shadeof gray. The program starts by randomly inserting particlesinto the scene (up to some maximum number) which quicklysettle on the surface, then spread over the surface and startfissioning yielding an overall acceptable density.

4. Improving Polygonal Models

This section describes another physically-based method forvisualizing implicit surfaces. Whereas the floater techniquesamples the surface this approach improves a polygonal ap-proximation, which has been generated by a polygonizer,for example a marching cubes algorithm. We combine ideasfrom two related methods:

• Figueiredo et al16 use a spring-mass system to adapt a tri-angulation of a region of space enclosing the surface. Thisimproves the result of the subsequent polygonization. Wesuggest to use the output of an implicit surface polygo-nizer as the basis of a spring-mass system. The edges ofthe triangulated surface model are interpreted as springswith rest length zero and its vertices correspond to parti-cles without mass.

• The modification of the triangulation is simulated usingthe approach of Witkin and Heckbert6 (see section 3.1)by a surface constrained optimization and Euler’s method.Here, spring forces instead of local repulsion forces areused to derive the desired velocities of the vertices.

Compared to the original approaches this combination hassome advantages:

• Initializing the spring-mass system with the polygonizeroutput yields a reasonable representation of the surfaceright from the beginning.

• Instead of external forces16 we use implicit optimizingconstraints to make the vertices stick to the surface. Thisis numerically more stable.

• In a spring-mass system the neighborhood of vertices isfixed and small, which accelerates the computation of thedynamics.

• The polygonal representation allows fast displaying of thesurface model by traditional rendering systems.

4.1. Simulation

The improver module works on triangulated models of im-plicitly defined surfaces. A first triangulation is generated intwo steps. First, a polygonizer creates the geometry, i.e. thevertex positions and polygons representing the surface. Thenthe topology, i.e. the edges and triangles between the ver-tices, needs to be computed. (In the implementation8 thesetwo steps are actually done in one pass.)

In order to improve the triangulation the modification ofthe spring-mass model is computed and rendered stepwise.The calculations of the simulation steps are derived fromthe Witkin and Heckbert’s technique6 for sampling constantsurfaces with floaters (see section 3). In this work repulsionforces are substituted by spring forces as the cause for ver-tex motion. The energy between two neighboring vertices(see equation 3) is set toEi j = κi j ||r i j ||2 and consequentlythe total energy at a single vertex (see equation 4) is givenby

Ei = ∑j∈neighbors(i)

Ei j

This yields the desired velocities (see equation 5) as

Pi =−2· ∑j∈neighbors(i)

κi j · r i j

where the spring constantsκi j are defined adaptively (seebelow). During the simulation no vertices are deleted or in-serted. In the implementation8 the improver process termi-nates when all vertices are moving with a speed less than agiven threshold.

4.2. Handling Of Boundaries

Some polygonizers can be applied to unbounded implicitsurfaces which are clipped to a finite volume. This producesboundary edges and vertices. If these resulting boundary ver-tices receive no special treatment during the subsequent dy-namics, the whole object will be contracted because thesevertices are only affected by springs pulling from one side.For this reason all vertices lying on the object boundary mustbe marked and can be treated in the following ways:

• Fixation: exclude all marked vertices from the simulationprocess in order to keep them fixed.

• Additional position constraints: restrict the marked ver-tices to thecurveswhich result from clipping the surfaceF with a bounding volume. Let us assume that the bound-ing volume is given implicitly as{x|F(x) ≥ 0} whereFis a differentiable function. Then the boundary curves aregiven by the intersection of the zero sets ofF andF . Toconstrain the marked boundary verticespi to these curveswe may impose an additional constraint equation for theseparticles:

Ci(pi , pi) = F ix · pi + φF i ≡ 0.

In the corresponding Lagrange equation (see equation 2)which solves the extended optimization problem we thusobtain

Gpi +n

∑j=1

(λiC jpi + λiC j

pi ) = 0.

c© The Eurographics Association 1997

Page 9: Interactive Visualization of Implicit Surfaces with Singularitiespeople.csail.mit.edu/ruhl/papers/1997-cgf.pdftial for computer graphics modelling with implicit surfaces but they naturally

A. Rosch, M. Ruhl and D. Saupe / Interactive Visualization of Implicit Surfaces with Singularities 9

Figure 6: The normal deviation as measure for the curvature

4.3. Considering Curvature

The second extension makes it possible to improve the im-plicit surface especially with regard to curvature and singu-larities. This is realized by an adaptive setting of the springparametersκi j which are otherwise constant by default. In-creasing the spring constants in strongly bent or non-smoothareas results in a locally finer triangulation. In our imple-mentation spring constants are updated at every simulationstep.

The main problem is to determine the surface areas thatmust be refined. The implementation includes a solution,called curvature estimator, which uses the implicit definitionof the visualized surface. The estimator is based on an ideadescribed by Bloomenthal7 to approximate the curvature ofa polygonal model by inspecting the surface normals. Herethe fact is exploited that the deviation of the normal direc-tions of neighboring surface points indicates how stronglythe surface is bent in between (see figure 6). A measure forthe deviation near a given spring is the scalar product (orcosine) of the unit normal vectors located at the ends of thespring. The improver uses this product to update the springconstant between neighboring verticesi and j by scaling thedefault valueκd,

κi j = κd · (1−cos(F ix,F

jx )). (6)

The implementation8 also includes a second estimator whichexploits the norms of the vertex gradients as a measure ofdistance to singularities to switch between two default springconstants. This heuristic should be replaced by a more re-fined approach such as the singularity estimator for samplingwith floaters described in section 3.3.

4.4. Results

Our method to improve the initial polygonization obtainedby the marching cubes algorithm shows the following fea-tures:

• Regular Triangulation: By trying to achieve minimalspring energies the vertices are distributed evenly over theimplicit surface (compare figures 7(a) and 7(b)), so thatresulting angles in triangles are close to 60 degrees.

• Curvature-based Adaption: The density of the vertexparticles is adapted to the surface curvature (see figure7(b)).

• Avoidance of Deformations: The curvature estimatorprevents that models with thin parts or a small number

of vertices deform (see figure 7(c)). Without the estimatorlarge deviations of neighboring normals are not penalizedso that the loss of energy caused by overly stretched edgesis compensated by the shortness of other springs. Thus,the object could be penetrated in its midst by triangula-tion edges even though the vertices lie on the surface.

• Removed Artifacts: The curvature estimator can repairartifacts of the polygonization process. For example, itcan iron out notches (see figures 9(a) to 9(d)) or closesmall gaps (see figures 9(e) and 9(f)). On flat parts ofthe surface, springs will be completely relaxed (κi j = 0),while springs between vertices that represent a crease arestrengthened because their corresponding normals differby a significant amount (see figure 8(a)). Thus, at these de-tails strong spring forces cause the corresponding verticesto slide down the wedge until the artifact is removed. Asimulation without the estimator can even deteriorate themodel in the neighborhood of singularities because in thatcase the particle system strives for uniform spring length(see figure 8(b)).

5. Conclusion

The extensions to the particle system mechanisms intro-duced in this paper provide interactive animation capabilitiesfor implicit surfaces that are clipped and that have singulari-ties. We have shown how to adapt particle dynamics to prop-erties of implicit surfaces in order to improve correspondingpolygonizations. These techniques may aid the researcher infinding desired parameters, clipping volumes, viewing pa-rameters and other attributes for a given implicit surface torender it offline at higher quality, or to produce animations.

The work presented here is only at its beginning. In thefloater method alternative rules for fissioning and particledeath as well as optimization of computational efficiency re-main an issue. In some cases we observed that the particlepopulation did not arrive at an satisfying equilibrium: obvi-ously the particle system is very sensitive to modifications ofthe involved parameters. Refined approaches targeting thesespecial surfaces should therefore be investigated.

Acknowledgment

The authors thank the anonymous reviewers of the EURO-GRAPHICS Workshop on Implicit Surfaces ’96 for their de-tailed comments on an earlier version of this paper.

References

1. P. Hanrahan,Ray tracing algebraic surfaces,SIG-GRAPH ’83, Computer Graphics 17,3 (1983) 83–90.

2. O. Stelzner,Visualisierung algebraischer Flachen mitRaytracing-Verfahren,Diploma Thesis, FachbereichMathematik, Universitat Bremen, 1990.

c© The Eurographics Association 1997

Page 10: Interactive Visualization of Implicit Surfaces with Singularitiespeople.csail.mit.edu/ruhl/papers/1997-cgf.pdftial for computer graphics modelling with implicit surfaces but they naturally

10 A. Rosch, M. Ruhl and D. Saupe / Interactive Visualization of Implicit Surfaces with Singularities

(a) polygonizer output (b) improved using curvature estima-tor

(c) improved without using curvatureestimator

Figure 7: Improving an ellipsoid

(a) improving using curvature estimator (b) improving without curvature estimator

Figure 8: Effects of the curvature estimator

3. W. P. Barth, S. Endraß,Deformation, a series of com-puter pictures,Internal Report, Mathematisches Insti-tut, Universitat Erlangen, 1995.

4. D. Saupe, M. Ruhl,Animation of algebraic surfaces,in Proc. VisMath, Berlin, Ch. Hege, K. Polthier (eds.),Springer-Verlag, Heidelberg, to appear, 1996.

5. C. Kolb, Rayshade 4.0, ftp://princeton.edu/pub/Graphics/rayshade.4.0, 1992.

6. A. Witkin, P. Heckbert,Using particles to sample andcontrol implicit surfaces,SIGGRAPH ’94, ComputerGraphics Proceedings (1994) 269–277.

7. J. Bloomenthal,Polygonization of implicit surfaces,Computer Aided Geometric Design, 5, 341-355, 1988.

8. A. Rosch,Interaktive Visualisierung implizit definierterFlachen, Diploma Thesis, Fachbereich Informatik,

Universitat Erlangen and Universitat Freiburg, March1996.

9. W. E. Lorensen, H. E. Cline,Marching cubes: A highresolution 3-D surface construction algorithm,SIG-GRAPH’87, Computer Graphics 21,4 (1987) 163–169.

10. P. Ning, J. Bloomenthal,An evaluation of implicit sur-face tilers,IEEE Computer Graphics and Applications13,6 (1993) 33–41.

11. C. Zahlten, H. Jurgens,Continuation methods for ap-proximating isovalued complex surfaces,Proc. EURO-GRAPHICS ’91, p. 5–19.

12. T. W. Sederberg, A. K. Zundel,Scan line display of al-gebraic surfaces,SIGGRAPH ’89, Computer Graphics23,3 (1989) 147–156.

13. M. Hall, J. Warren,Adaptive polygonalization of im-

c© The Eurographics Association 1997

Page 11: Interactive Visualization of Implicit Surfaces with Singularitiespeople.csail.mit.edu/ruhl/papers/1997-cgf.pdftial for computer graphics modelling with implicit surfaces but they naturally

A. Rosch, M. Ruhl and D. Saupe / Interactive Visualization of Implicit Surfaces with Singularities 11

(a) polygonizer output of Kummer surface (ν2 = 0.9) (b) improved using curvature estimator

(c) polygonizer output of Kummer surface (ν2 = 0.9), shaded (d) improved using curvature estimator, shaded

(e) polygonizer output of Kummer surface (ν2 = 3.0) (f) improved using curvature estimator

Figure 9: Application to the Kummer surfaces

c© The Eurographics Association 1997

Page 12: Interactive Visualization of Implicit Surfaces with Singularitiespeople.csail.mit.edu/ruhl/papers/1997-cgf.pdftial for computer graphics modelling with implicit surfaces but they naturally

12 A. Rosch, M. Ruhl and D. Saupe / Interactive Visualization of Implicit Surfaces with Singularities

plicitly defined surfaces,IEEE Computer Graphics andApplications 10,6 (1990) 33–42.

14. J. Bloomenthal, K. Ferguson,Polygonization of non-manifold implicit surfaces,SIGGRAPH ’95, ComputerGraphics Proceedings (1995) 309–316.

15. B. T. Stander, J. C. Hart,Guaranteeing the topologyof an implicit surface polygonization,in: ACM SIG-GRAPH’96 Course Notes 11, New Orleans, 1996.

16. L. H. de Figueiredo, J. de Miranda Gomes, D. Ter-zopoulos, L. Velho,Physically-based methods forpolygonalization of implicit surfaces,Graphics Inter-face ’92, 250–257, 1992.

17. G. Turk, Generating textures on arbitrary surfacesusing reaction-diffusion,SIGGRAPH’91, ComputerGraphics 25,4 (1991) 289–298.

18. R. Szeliski, D. Tonnesen,Surface modelling with ori-ented particle systems,SIGGRAPH ’92, ComputerGraphics 26,2 (1992) 185–194.

19. K. Shimada, D.C. Gossard,Bubble mesh: Auto-mated triangular meshing of non-manifold geometryby sphere packing,ACM Solid Modelling Workshop1995, Salt Lake City, Utah, p. 409–419, 1995.

20. W. J. Schroeder, J. A. Zarge, W. E. Lorensen,Deci-mation of triangle meshes,SIGGRAPH ’92, ComputerGraphics 26,2 (1992) 65–70.

21. A. D. Kalvin, C. B. Cutting, B. Haddad, M. E. Noz,Constructing topologically connected surfaces for thecomprehensive analysis of 3D medical structures,in:Medical Imaging V: Image Processing, SPIE, Vol. 1445p. 247–258, 1991.

22. H. Hoppe, T. DeRose, T. Duchamp, J. McDonald, W.Stuetzle,Mesh optimization,SIGGRAPH ’93, Com-puter Graphics Proceedings (1993) 19–25.

23. D. A. Field,Laplacian smoothing and Delauney trian-gulations,Comm. Appl. Numer. Meth. 4 (1988) 709–712.

24. M. Schmidt,Cutting cubes - visualizing implicit sur-faces by adaptive polygonalization,The Visual Com-puter 10 (1993), 101–115.

25. G. Turk,Re-tiling polygonal surfaces,SIGGRAPH’92,Computer Graphics 26,2 (1992) 55–64.

26. J.-C. Lombardo, C. Puech,Oriented particles: A toolfor shape memory objects modelling,Graphics Inter-face ’95, 1995.

c© The Eurographics Association 1997