Mello etal sm03


Published on

Published in: Technology, Education
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Mello etal sm03

  1. 1. Estimating the In/Out Function of a Surface Represented by Points Vin´cius Mello ı Luiz Velho Gabriel Taubin IMPA - Instituto de Matematica ´ IMPA - Instituto de Matematica ´ IBM T.J. Watson Research Pura e Aplicada Pura e Aplicada Center With no pretension of formulating a complete taxonomy,We present a method to estimate the in/out function of a we can classify the different methods to solve problem 1 intoclosed surface represented by an unorganized set of data two main lines: the computational geometry approach andpoints. From the in/out function, we compute an approxi- the implicit surface approach. The computational geometermation of the signed distance function to a surface M whose uses all his machinery of Voronoi diagrams, Delaunay tri-sampling are given by this set of points. The procedure cor- angulations, alpha shapes and so on, in order to guaranteerectly detects the interior and the exterior of M, even if M sufficient conditions for reconstruction and optimal compu-is multiply connected. The representation of the signed dis- tational complexity bounds. In spite of their theoreticaltance function combines the advantages of two previously relevance, the related algorithms tend to be of complex im-known schemes, “Implicit Simplicial Models” and “Adap- plementation and of low effectivity in real problems, sincetively Sampled Distance Fields”, incorporating new features we cannot always verify that sufficient conditions exist. Inderiving from the concept of a Binary Multitriangulation. a sense, this approach is too combinatorial. The implicit surface approach seeks to represent M as the zero set of a function f such thatCategories and Subject Descriptors f (xi ) = 0.I.3.5 [Computing Methodologies]: Computer Graph-ics—Computational Geometry and Object Modeling This formulation leads naturally to the analytical tech- niques of interpolation theory and, among many other meth-General Terms ods, the use of Radial Basis Functions (RBF’s) as inter- polant elements seems to be the most successful [4]. How-Binary Multitriangulation, Implicit Simplicial Models ever, because of the unbounded and continuous nature of the RBF’s, sophisticated numerical methods are required toKeywords compute and to evaluate f (see [3]). That is, we could sayStellar Operators, Topology Estimation, Implicit Surfaces that this approach is too continuous. In [15], Taubin and Ronfard proposed a half way, intro-1. INTRODUCTION ducing the concept of Implicit Simplicial Models, where the surface M still is represented as the zero set of a continuous The reconstruction of a surface from unorganized sets of function f , but now f is defined over a simplicial complexdata points has became a classical problem in computer K. Thus, the simpler combinatorial nature of the domaingraphics. It can be informally posed as follows: of f can be exploited to recover, for example, the topology Problem 1. Given a sufficiently well sampled set of of M . Nevertheless, they implemented only an algorithmpoints S = {xi } on a surface M, find a surface M that to reconstruct planar curves.closely approximates M. In this paper, we extend that algorithm to surface re- construction and improve it putting more structure on theThis problem can be greatly simplified if additional infor- simplicial complex K, by applying the concept of Binarymation, like the sense of the normal vector in each point, Multitriangulations [5]. In this sense, our approach resem-are given. In this paper, we attack problem 1 in its full bles that taken by Frisken et al in [8], where the concept ofgenerality, without further assumptions. Adaptively Sampled Distance Fields was proposed, but there are essential differences between then, as we will point out in section 3.2. Shortly, our algorithm takes as input a set of points sam-Permission to make digital or hard copies of all or part of this work for pled over a closed surface 1 , without normals, and outputspersonal or classroom use is granted without fee provided that copies arenot made or distributed for profit or commercial advantage and that copies a simplicial decomposition of a bounding box enclosing thebear this notice and the full citation on the first page. To copy otherwise, to points, and, for each vertex of that decomposition, a signrepublish, to post on servers or to redistribute to lists, requires prior specific +/- telling if the vertex is outside or inside of the surface.permission and/or a fee. From that output, its easy to compute an approximationSM’03, June 16–20, 2003, Seattle, Washington, USA. 1Copyright 2003 ACM 1-58113-706-0/03/0006 ...$5.00. For a definition of closed surface, see [6]. 108
  2. 2. of the signed distance function of the point cloud. Finally, it. Because the triangulation obtained by the above pro-a marching tetrahedra algorithm can be used to extract a cess possesses excellent adaptation qualities, we were ablepolygonal mesh that approximates the surface. to eliminate the relaxation step of the algorithm described The paper is organized as follows. In Section 2, we discuss in [15], which simplifies considerably our implementation.some of the previous work to solve problem 1, emphasizingthe techniques that are closely related to ours. In Section 3, 3. BACKGROUNDwe present the basic concepts that are necessary to the com- In this section we review some concepts that are necessaryprehension of the structuring and reconstruction algorithm for the understanding of the structuring and reconstructionintroduced in Section 4. Finally, in Section 5, we summa- algorithm described in Section 4.rize the results of our method and suggest some possibleextensions to it. 3.1 Implicit Simplicial Models Implicit Simplicial Models (ISM’s) were first introduced2. RELATED WORK in [15]. Here we present a generalized definition. The pre- One of the most cited paper that is related to problem 1 is cise definitions of topological concepts like simplex, simpli-the work of Hoppe [9]. In this paper, local approximations cial complex and combinatorial manifold can be found inof the tangent plane of a point cloud are constructed using [5]. The following definitions are needed to grasp definitionprincipal component analysis (PCA). Then, an optimization 1. Let Πn = {(w0 , . . . , wn ) ∈ Rn+1 |w0 + · · · + wn = 1}. Thealgorithm is used to analyze the Riemannian Graph, (i.e. a standard n-simplex ∆n is defined by ∆n = {(w0 , . . . , wn ) ∈graph that encodes geometric proximity of the tangent plane Πn |wi ≥ 0}. By vi ∆n we denote the i-th vertex of ∆n , thatcenters), and determines a consistent orientation of the tan- is, if vi ∆n = (w0 , . . . , wn ), then wi = 1. For each n-simplexgent planes. From a family of oriented tangent planes, a σ =< p0 , . . . , pn > in the Euclidean space Rn , we can asso-piecewise linear approximation of the signed distance func- ciate a map Wσ : Πn → Rn given bytion is obtained. The contact point between this work andours is the use of PCA to estimate the tangent plane to the Wσ (w0 , . . . , wn ) = w0 p0 + . . . + wn pn ,underlying surface defined by a point cloud. On the other called barycentric parametrization. This map has an inversehand, our approach is hierarchical and adaptive: we build −1 Wσ known as barycentric coordinates with respect to σ.a sequence of partial solutions progressively more refined Note that Wσ takes ∆n in σ and that Wσ (vi ∆n ) = pi .and fitted to the data, and the final mesh is obtained using We can label the faces of ∆n with a function χ : ∆n →a marching tetrahedra algorithm over a adaptive simplicial {0, 1}(n+1) defined bymesh, rather than a marching cubes over a fixed resolutioncubical mesh. χ(w0 , . . . , wn ) = (b0 , . . . , bn ), In [1], the focus is the generation of implicit representa- wheretions of a M , that are smooth and not just given by a piece-wise linear approximation. In order to achieve this goal, the 0, se wi = 0 bi =authors employ computational geometry techniques to build 1, se wi = 0 .the, so called, simplicial hull (a tetrahedral mesh) around Finally, we say that a map X : ∆n → ∆n is face preservingthe surface M, and then a C 1 interpolatory surface is con- if χ ◦ X = χ. We can now enunciate the following definition:structed using cubic A-patches. That is, M is representedas a piecewise cubic implicit surface. One problem of this Definition 1. An Implicit Simplicial Model O consistsapproach is that the sufficient conditions to guarantee that ofeach A-patch is a single sheeted surface are very intricate [2].We overcome this difficulty by requiring a diffeomorphism 1. A combinatorial n-manifold M ⊂ Rn triangulated bycondition on each tetrahedron (see definition 1), avoiding a the simplicial complex K;priori self-intersections in the implicit surface. 2. for each n-simplex σ ∈ K, a face preserver diffeomor- As we have mentioned before, RBF’s are very powerful phisms Xσ : ∆n → ∆n , satisfyingapproach to solve problem 1. However, an important point, −1 −1frequently forgotten (and one of the key features of fast mul- σ1 ∩ σ2 = σ ⇒ Wσ1 Xσ1 Wσ1 |σ = Wσ2 Xσ2 Wσ2 |σtipole methods, the tool needed to efficiently evaluate theRBF’s), is the use of a hierarchical subdivision of space to 3. a function f from the vertices of K to the set R − {0}.cluster the sample points [3]. In this paper, the process ofhierarchical subdivision is used to estimate the topology and Item 2 is essentially a reparametrization of each n-simplexadaptively approximate the geometry, simultaneously. compatible with the neighborhood relations. From an ISM, It is exactly in relation to the use of hierarchical subdivi- we can define a function nsion techniques, that resides the main difference between ourpaper and the work of Taubin and Ronfard [15] (besides, of F (p) = f (Wσ (vi ∆n ))xi (Wσ (p)), σ −1 (1) i=0course, the extension from curve to surface reconstruction).In their work, a triangle could be subdivided in two differ- where σ is a n-simplex that contains p and Xσ =ent ways and the space refinement process didn’t follow any (x0 , . . . , xn ). The equation F (p) = 0 defines a hypersur- σ σpre-established order. We, on the other hand, through the face which topology can be recovered from the topology ofconcept of a Binary Multitriangulation, enforce the police K and from the signal of function f , and which its geometrythat each tetrahedron is always divided into two, along its depends on the reparametrizations Xσ .longest edge, and conversely, an edge can only be subdi- At first sight,it may seem complicated to find diffeomor-vided if it is the longest edge of all tetrahedron incident on phisms satisfying item 2, specially if we consider that such 109
  3. 3. diffeomorphisms must depend on a few parameters. A very ments. Given c, c ∈ C, notation c ≺ c means c < c andsimple and natural choice is set Xσ = I, where I is the there in no c ∈ C such that c < c < c . An element c ∈ C,identity function. In fact, this is the choice adopted in this such that for all c ∈ C, c ≤ c , is called a minimal elementpaper. Because our main interest is to estimate the correct in C. If there is a unique minimal element c ∈ C, then c istopology of the surface, the piecewise linear reconstruction called the minimum of C. Analogously are defined maximalwhich we obtain is satisfactory. and maximum elements. However, we could not find any references in the litera-ture to this kind of “generalized barycentric coordinates”. Definition 2. A binary multitriangulation is a posetBecause we realize the importance of this tool for our future (T , <), where T is a finite set of abstract 3-manifoldswork, we are investigating a manageable way to generate (named triangulations) and the order < satisfies:such diffeomorphisms and we expect to publish the results 1. M ≺ M if, and only if, M = (ε, ν)M , for some edgeof such research in a forthcoming paper. ε ∈ M.3.2 Adaptively Sampled Distance Fields 2. There is maximum and minimum abstract 3-manifolds According to its authors, “ADFs consists of adaptively in T , called base triangulation and full triangulation,sampled distance values organized in a spatial data struc- respectivelyture together with a method for reconstructing the under-lying distance field from the sampled values.” [8]. In spite Property 2 says, in fact, that a BMT is a lattice. Otherof this very general definition, in practice the spatial data fact which follows from the definition is that every two tri-structures used for ADF’s are quadtrees (octrees), together angulations in T are stellar equivalent. As usual, a BMTwith bilinear (trilinear) interpolation for reconstruction. can be thought as a directed acyclic graph (DAG), with one On the other hand, it is well known that such combi- drain and one source, whose arrows are labeled with stellarnations of spatial decomposition and interpolation scheme subdivisions on edges. From an algorithimic perspective, thesuffer from discontinuity problems (i.e., the infamous “T- key idea is to use the above mentioned binary tree structurejunctions”). in the simplices to encode the DAG. It is also well known that this problem can be minimized We have implemented these ideas in a C++ library usingavoiding that neighbor cells of the quadtree (octree) differ generic programming techniques. This give us great flexi-by more than one level. This has the additional advantage of bility in the specialization of the general concepts alreadyproviding a more gradual variation of the interpolated data. defined, without a performance overhead. One of the most In this paper, we use a simplicial structure for spatial useful of such specializations is the concept of a rectangulardecomposition. Therefore, we do not have T-junction prob- triangulation. In this case, the base triangulation is taken tolems, and also we can exploit the above-mentioned grad- be a cube subdivided into six tetrahedron. Also, the relationuallity property. The concepts related to this structure is ≺ possesses the additional restriction that the edge ε has todescribed next. be the longest 2 edge of all tetrahedra which contain ε. One of the functions implemented in the library, allow3.3 Binary Multitriangulations a subdivision of an arbitrary tetrahedron of the rectangu- Here we summarize the main results introduced in [5]. We lar triangulation, guaranteeing that the above mentionedwill show that the interplay between combinatorial and geo- restriction is satisfied, that is, automatically performing ex-metrical structures of the subdivision process leads naturally tra subdivisions in neighbor tetrahedra which contain longerto the concept of binary multitriangulations, or BMT’s. edges (see Fig. 1). This operation is essential in the adap- Stellar subdivision is the basic operation used to construct tation algorithm described below.a BMT. A review of Stellar theory and its fundamental con-cepts can be found in [12]. For our purposes here, it is suffi-cient to state a few facts. We will denote by M = (ε, ν)Mthe operation of bisecting the edge ε of a simplicial mesh M ,inserting the vertex ν to obtain the new mesh M (note thatthis is a particular case of a stellar operation). A remarkablefact, proved by Newman (references and a modern proof canbe found in [12]), is that if M and M are two meshes whichrepresent the same polyhedron, then we can transform Minto M through a sequence of stellar operations, such as theone described above. Subdivision operations on edges have one important ad-ditional advantage. Whenever a stellar subdivision happens (a) (b)on an edge ε, all simplices containing ε are splitted in two.Accordingly, a sequence of stellar subdivision induces a bi-nary tree structure in the simplices. And binary trees often Figure 1: The splitting of the marked tetrahedronleads to simpler algorithms. automatically causes a sequence of subdivisions in In order to define the binary multitriangulation concept the BMT.(BMT), we need some auxiliary definitions. We followclosely the definitions in [7]. 2 It is possible to give a completely combinatorial interpreta- A partially ordered set (poset) (C, <) is a set C with an tion to the term “longest” employed above, but we will notantisymmetric and transitive relation < defined on its ele- go into the details here. 110
  4. 4. 4. THE ALGORITHM It may happen during the subdivision that some tetrahe- In this section we describe an algorithm to solve problem dra possess an insufficient number of samples, causing the1. The only assumption is that the data points belong, or matrix Cσ to be singular. In that case, that is, when theare close to, a closed surface, and are roughly uniformly number of samples per tetrahedron is less than a user de-distributed along the surface. The topology is unknown in fined parameter, usually between 5 and 10, we set σ andadvance and estimated by the algorithm. The algorithm Πσ with the same values of the parent tetrahedron.output is a ISM that represents an approximation of thesigned distance function, from which we can to easily extract 4.2 Topology Estimationa triangular mesh. Program 1 shows the global structure of The goal of the topology estimation step is to determinethe algorithm. a sign Sν ∈ {+1, −1} for each vertex ν of the triangulation, thus indicating if ν is inside or outside the volume enclosedProgram 1 Main loop of the algorithm by the surface M. Note that we can prescribe a sign for each vertex ν of a tetrahedron σ based on the plane Πσ ,while(!to refine.empty()) { σ simplex s=to refine.pop(); Sν = +1, if ν ∈ Π+ σ local fitting(s); σ Sν = −1, if ν ∈ Π− . σ if (!stop test(s)) subdivide(s); estimate topology(); However, nothing guarantees that these signs are glob-} ally consistent in relation to the other tetrahedra which alsoestimate distance(); contain ν. It is like each tetrahedron could have its own opinion about which sign should be given for its vertices. Of course, it is expected that the opinion of a tetrahedron Initially, we find a cube 3 which enclose the points. There that possesses a small mean square error should be moreare many ways to choose that cube, but we had adopted a trustworthy than the opinion of a tetrahedron with a largecube which center is the centroid of the points and which ori- error. It is also clear thst, if two trustworthy tetrahedraentation is obtained via PCA analysis. We set the base mesh which share the same edge ε both agree that there is a signto the cube subdivided in six tetrahedra. These six tetrahe- change, i.e., that the surface M intersects ε, then, this is adra are inserted into the list to_refine and the algorithm strong indication that the vertices of ε should have oppositeenters in a loop for refinement and topology estimation. In signs. Taking these facts into account, we conclude that thethis loop, we remove a tetrahedron σ of the to_refine list minimization of the function D(S) below, is equivalent to, compute the local fitting and apply the stop test. This minimize the disagreement of the tetrahedra with respect totest includes the verification of maximum subdivision level, the sign prescribed to its vertices:minimum number of samples in σ and a data adjustment ina coplanarity sense, which we will explain in detail later. In D(S) = H ε S ν0 S ν1 (2) ε∈Ecase σ does not pass the test, it is subdivided and the newtetrahedra generated by the subdivision are inserted into with the sum ranging over all the edges ε = {ν0 , ν1 } andto_refine. After each subdivision, one passe of the topol- where the edge weight Hε is given byogy estimation algorithm is performed. The loop continueswhile to_refine is not empty. Finally, the algorithm ends σ σ max − σ Hε = − S ν0 S ν1with the distance estimation step. max − min σ:ε={ν0 ,ν1 }∈σ Now we describe in detail the main building blocks ofthe surface reconstruction algorithm: local fitting, topology with the sum extended over all tetrahedra that contains εestimation and distance estimation. as an edge. Above, max means the maximum σ and min is similarly defined. Of course, we also have to care of empty4.1 Local Fitting σ tetrahedra. We set Sν = 1 and σ = empty whenever σ The local fitting step consists in the standard application does not contain points inside. The empty parameter relatesof principal component analysis. We calculate the barycen- to the global uncertainty of the data. Setting empty = 0ter pσ and the covariance matrix Cσ of the Nσ points con- is equivalent to knowing the point locations with absolutetained in σ. The smallest eigenvalue λ0 of Cσ measures the σ accuracy.least square error of the sample points. We keep stored in The minimization of the quadratic expression (2) in λ0each tetrahedron the “coplanarity error” σ = λ0 +λσ +λ2 , {+1, −1} is exactly the Ising model, for which simulated an- 1 σ σ σ nealing schemes are well documented [11]. Our implementa-where λi are the eigenvalues of Cσ , together with the plane σ tion of the simulated annealing algorithm took advantage ofΠσ which passes trough pσ and is perpendicular to the eigen- the fact that our data structure allows very efficient queriesvector associated to λ0 . This information will be necessary σ about the neighborhood of each vertex.during the topology estimation step. The idea is that Πσrepresents a plane which is secant to the portion of the sur- 4.3 Distance Estimationface M contained in σ which works as a local approximation The distance estimation step is currently very simple. Ini-of M, with approximation accuracy given by σ . tially, we collect the vertices of all tetrahedra which contain3 In fact, to achieve a better adjustment to the data points, data points in a set V . Next, for each ν in V we computea scaling can be applied to the cube, obtaining in this way, the smallest distance dmin between ν and the data pointsa parallelepiped. However, to simplify the exposition of the contained in each tetrahedra incident in ν. Since our BMTalgorithm, we will refer to this bounding cell as “the cube”. spatial data structure provides all these incidence relation- 111
  5. 5. ships, the process is quite fast. Then, we set the distance samples ref. dist. top. mesh smooth.value f in ν as Sν d2 . min bunny 35947 25.7 0.8 48.31 0.13 2.37 For our immediate objective, that is, the extraction of a knot 100000 37.26 1.17 49.6 0.2 3.34polygonal mesh that approximates the surface, it is sufficient dragon 437645 9:18.34 5.77 1:13.92 1.13 16.40to know the value of f in the set V . Depending on theapplication, it may be necessary to extend f to all othervertices of the BMT. In this case, we could use a propagation Table 1: Timing results in seconds. The meaning ofmethod, such as the fast marching method [10, 13]. the columns: ref is the time spent in the main loop; dist, the time in the distance estimation step; top, the topological refinement described in section 4.4; mesh, the mesh extraction time; smooth, the time4.4 Details spent in the mesh smoothing. In order to facilitate the exposition, we have omitted somedetails that we discuss now. Since it is somewhat expensiveto run the topology estimation step each time a tetrahedronis subdivided, we decided to execute this step only after a 5. CONCLUSION(user-defined) number of subdivisions. This increases signif- The starting point for our approach to solve problem 1icantly the performance of the program, on the other hand was the minimization of function (2). For this, we employ ait degrades slightly the quality of the topology estimation. stochastic optimization algorithm, the simulated annealing.The solution to this problem is to run the topology esti- A topic of further research is the utilization of another com-mation one more time when the loop terminates, with the binatorial optimization algorithm. Anyway, the key aspectsimulated annealing parameters adjusted for a more gradual seems to be the use of the kind of “multi-grid” approach wedecrease in temperature. In summary, the coarse topology, have taken here.found in the refinement loop is used as the initial condition Our method recovers the topology just knowing the pointsfor a final iteration of topology estimation. spatial position. Another research topic is the incorporation The to_refine list is, in fact, a priority queue ordered of normal vector information to our scheme. This will pro-by the σ value. Thus the tetrahedra with greater error vide better topology and geometry results. The geometryare divided first, ensuring the correctness of the hierarchical can also be improved by using diffeomorphisms Xσ of higheroptimization process. degree, not merely piecewise linear. When the point cloud is not sufficiently dense, or when A careful analysis of the topology estimation step revelsthe user chooses a small number of subdivision levels, it that the point location data is used just to compute themay happen that the distance computed by the algorithm centroid and covariance matrix for each tetrahedron. Thevary excessively between neighbor vertices – causing the algorithm works equally well if a black box supplies suchextracted polygonal mesh to be “noisy”. In this case, we information. Therefore, we conclude that our algorithm cancan apply a smoothing algorithm such as the one described be generalized to reconstruct surfaces described by probabil-in [14]. ity distributions. We pretend to explore that point in future work. Summarizing, the main feature of Implicit Simplicial Models is the intrinsic separation between topology and ge-4.5 Results ometry, combinatorial and continuous data. In this paper, In this section we show some results of using the algorithm we have focused on topology recovering. In future work,in synthetic and scanned data sets. we intend to exploit the hierarchical organization and space The first example is the Stanford bunny model. Fig- adaptivity of Binary Multitriangulations, as well the ISMure 2(a) shows the set of cells V which are classified as con- local geometry fitting power, in order to achieve better geo-taining the surface. Figure 2(b) exhibits the polygonization metric reconstructions.obtained from the zero level set of the distance function inV. 6. REFERENCES The second example is a synthetic sampling of knottedshape. Figure 3 shows the cells which contain the surface. [1] Chandrajit L. Bajaj, Fausto Bernardini, and GuoliangNote that, despite of the complicated embedding of this sur- Xu. Automatic reconstruction of surfaces and scalarface, the topology estimation algorithm was able to recover fields from 3d scans. In Proceedings of the 22nd annualthe correct shape. conference on Computer graphics and interactive The third example is a scanned dragon model, from the techniques, pages 109–118. ACM Press, 1995.Stanford repository. The original data set contained more [2] Chandrajit L. Bajaj, Jindon Chen, and Guoliang Xu.than 400 K points. Figure 4 shows a phong shaded image Modeling with cubic A-patches. ACM Transactions onof the extracted polygonal mesh. Graphics (TOG), 14(2):103–133, 1995. The computational performance of our algorithm can be [3] R. K. Beatson and L. Greengard. A short course onanalyzed through the timings shown in table 1. The execu- fast multipole methods, pages 1–37. 1997.tion was performed on a 1.5GHz Pentium 4 with 512 MB [4] J. C. Carr, R. K. Beatson, J.B. Cherrie, T. J.RAM. The data indicates that the topology estimation is the Mitchell, W. R. Fright, B. C. McCallum, and T. R.most expensive operation in the process. We believe that we Evans. Reconstruction and representation of 3dcan increase the performance by fine tuning the simulated objects with radial basis functions. Proc. Siggraphannealing parameters. 2001, pages 67–76, 2001. 112
  6. 6. (a) (b) Figure 2: Bunny. (a) (b) Figure 3: knot. 113
  7. 7. Figure 4: Dragon.[5] Vin´ıcius Mello, Luiz Velho, Paulo Roma Cavalcanti, [10] R. Kimmel and J. Sethian. Computing geodesic paths and Cl´udio Silva. A generic programming approach a on manifolds. Proceedings of National Academy of to multiresolution spatial decompositions. Proc. Sciences, USA, 95(15):8431–8435, 1998. VisMath’02, 2001. [11] P.V. Laarhoven and E. Aarts. Simulated annealing:[6] M. P. do Carmo. Differential Geometry of Curves and Theory and applications. Reidel Pub., Dordrecht, Surfaces. Prentice-Hall, Englewood Cliffs, NJ, 1976. Holland, 1987.[7] L. De Floriani, E. Puppo, and P. Magillo. A formal [12] W. B. R. Lickorish. Simplicial moves on complexes approach to multiresolution modeling. In W. Straßer, and manifolds. In Proceedings of the Kirbyfest, R. Klein, and R. Rau, editors, Theory and Practice of volume 2, pages 299–320, 1999. Geometric Modeling. SpringerVerlag, 1996. [13] J. Strain. Fast tree-based redistancing for level set[8] Sarah F. Frisken, Ronald N. Perry, Alyn P. Rockwood, computations. Comput. Phys., 152:648–666, 1999. and Thouis R. Jones. Adaptively sampled distance [14] G. Taubin. Linear anisotropic mesh filters. Technical fields: A general representation of shape for computer Report RC-22213, IBM Research, 2001. graphics. Proc. Siggraph 2000, pages 249–254, 2000. [15] Gabriel Taubin and Remi Ronfard. Implicit simplicial[9] Hugues Hoppe, Tony DeRose, Tom Duchamp, John models for adaptive curve reconstruction. IEEE McDonald, and Werner Stuetzle. Surface Transactions on Pattern Analysis and Machine reconstruction from unorganized points. Proc. Intelligence, 18(3):321–325, 1996. Siggraph 92, 26(2):71–78, 1992. 114