Procedural Level Sets

Size: px
Start display at page:

Download "Procedural Level Sets"

Transcription

1 Procedural Level Sets Michael Mullan University of Illinois Ross Whitaker University of Utah John C. Hart University of Illinois Abstract This paper describes a technology for manipulating the shape of an implicitly modeled surface so that it follows a geometric flow. The proposed technology is a generalization of the method of level sets, which specifies how to manipulate the isosurfaces of greyscale functions, sampled on discrete grids. The proposed formulation projects the geometric motion of the level sets of a greyscale function onto its parametric representation. The resulting method provides a set of new capabilities for implicit models, including the computation of geometric flows, such as motion by mean curvature and the fitting of implicitly represented surfaces to volumetric data. This paper presents results for the computation of mean-curvature flow on the level sets of polynomials and the fitting of radial basis functions, arranged as dipoles, in an adaptive-refinement scheme to achieve surface fitting with variational implicits. Keywords: Implicit surfaces, level sets, morphing, surface fitting 1 Introduction The level set method has revolutionized the solution of evolving surface problems in computational science. It propagates a surface represented as an isosurface of a volume of scalar values. This implicit isosurface representation provides a natural response for the self-intersection and topology changes that can occur during propagation. The level set method propagates the isosurface by integrating a time derivative of the voxel values. The time derivative is controlled by a user-defined speed function that indicates how fast the surface should move in its normal direction. With the construction of different speed functions, level sets have solved a wide variety of problems in shape modeling and computer graphics. A constant speed function can yield offset surfaces [Kimmel and Bruckstein 1993] or, when negative, the medial axis transform [Kimmel et al. 1995]. Level sets have been used in several interactive shape modeling systems [Baerentzen and Christensen 2002; Museth et al. 2002; Lawrence and Funkhouser 2003]. They have also been used for geometry processing applications such as feature-perserving surface smoothing [Tasdizen et al. 2002]. Setting the speed function to be the distance to a different object yields a morphing algorithm [Breen and Whitaker 2001]. Level sets can also interpolate scattered point data by morphing a sphere to fit these points [Nguyen et al. 2002; Du and Qin 2003]. The level set method operates on a fixed-resolution uniform rectilinear lattice of voxels. This provides a simple free-form shape representation, and the integration of partial differential equations on a uniform space-grid is well studied. Indeed, special integration methods have been developed [Sethian 1999] to propagate nonsmooth surface features such as corners. Physically-based animation applications based on computational fluid dynamics (CFD) simulation often operate on voxel grids, and the level set method has improved the efficiency and accuracy of such simulations of water [Foster and Fedkiw 2001; Enright et al. 2002b] and fire [Nguyen et al. 2002]. For some graphics applications, however, the processing of a full voxel array, or even a tubular subset [Adalsteinsson and Sethian 1995], is not an effective use of computational resources. Along with its benefits, the voxel representation also limits the utility of the level set method. Shapes in more popular representations (e.g. poly meshes, NURBS, subdivision surfaces, even implicits and solid models) must be discretized into a voxel array for level set processing, often through a distance transform. The storage of voxel data is also quite time and memory consumptive for a shape that could be stored and processed more compactly in its original representation. In addition to inefficient computation and storage, the fixed resolution of the voxel grid limits the precision of level set geometry processing. Octree and especially adaptive distance field [Frisken et al. 2000] representations can improve precision, but robust methods for hierarchical level set propagation have not yet been developed. These problems could be avoided by the propagation of a surface mesh instead of a space mesh. Section 2 describes previous attempts to propagate surface meshes. While the propagation of mesh vertices is straightforward, the management of mesh connectivity in the presence of self-intersection and topology changes becomes quite complicated. The proposed computational strategy retains topological benefits of the implicit representation of evolving surfaces while avoiding the drawbacks of a fixed resolution voxel array. To this end, Sec. 3.1 shows how to propagate an implicit surface (e.g. algebraic surfaces, blobs [Blinn 1982]) under an arbitrary speed function. This propagation of course occurs within the limits of the implicit s parameterization, and our method creates a least-squares optimal fit of the implicit to the shape specified by the geometric flow. Radial basis functions have provided a free-form implicit representation of shape. In their most common form, radial basis functions are used to construct an implicit surface function interpolating a collection of sample points, called centers. Section 4 shows that propagation of these RBF centers is problematic. Instead, we use a dipole RBF representation where the RBF centers are slightly above and slightly below the implicit surface. We derive the propagation formula for these RBF dipoles, and investigate methods for their adaptive refinement. 2 Previous Work The limitations of the voxel representation are well known and some techniques for overcoming time and space complexity, and its fixed-resoltion have been investigated. Sethian s book [1999] describes two techniques for reducing the O(n 3 ) time and space complexity of processing voxel grids. The narrow band method restricts computation to voxels near the isosurface, reducing computational complexity to O(n 2 ). When the speed function does not change sign, the entire propagation can occur in place in amortized O(n 2 ) time using the fast marching method, which solves for each voxel the time when the surface propagation would pass through it. A recent GPU implementation [Lefohn et al. 2003] accelerates computation and limits storage of the narrow band method via a clever paging mechanism but adds a significant amount of complexity to the implementation. Sethian [1999] makes strong arguments against the propagation of surface meshes, presumably through motion of the vertices. 1

2 When vertices become close, numerical error can cause instability. The local intersection that occurs when propagating corners inward can cause swallowtails. These inside-out curve segments in 2-D can be removed by delooping methods [Maekawa 1999; Pham 1992], but such methods are cumbersome, error-prone and do not appear to extend to surfaces in 3-D. Semi-Lagrangian methods [Strain 2000; Strain 2001] accelerate the propagation of curves in 2-D with higher precision by tracing the path of each point on the evolving curve. These paths, called characteristics, are the integral curves of the (global) speed function. The level set value of each space-grid point at time t are thus found as the (interpolated) level set value at its position at time t t. Thus the evolving interface moves its surface points along a Lagrangian path, but the path is evaluated at its endpoints on an Eulerian voxel grid. The entropy satisfying Lagrangian method [Jiao 2001] is able to propagate a closed polyline in 2-D. It uses simplification and subdivision to maintain a uniform distribution of curve vertices, and repositioned these vertices at corners to preserve shocks. The method uses a geometric theorem to predict local self-intersection, and locally resamples the curve to avoid the swallowtail before it occurs. The method uses collision detection to detect topology changes, and resolves these with a simple reconnection of the curve vertices. The extension of this method to 3-D appears promising but has not occurred yet. Lawrence and Funkhouser [2003] painted a speed function onto polygonal mesh models to interactively grow trees and other 3-D shapes. They propagated a dynamic polygonal mesh [Markosian et al. 1999] but limited their demonstration to simple cases that avoided shocks and topology changes. The precision of the voxel representation is often limited to a fixed resolution. Recent hierarchical integration methods have been developed that provide a multiresolution space-mesh for evolving a curve in a 2-D quadtree [Strain 1999b; Strain 1999a] or a surface in a 3-D octree [Popinet 2003; Losasso et al. 2004]. In physical simulation and animation, the lack of precision of a space grid can lead to the inaccurate computation of physical quantities such as volume. When simulating water, the appearance of massive evaporation was avoided by propagating air and water particles near the level set, and adjusting the level set to divide the air and water particles after each propagation step [Enright et al. 2002b; Enright et al. 2002a]. We demonstrate our results, in part, by using the level set formulation to fit algebraic surfaces to meshed surfaces. Algebraic curve and surface fitting is a well studied area in geometric modeling, and for example Pratt [Pratt 1987] used least squares to directly (noniteratively) solve for the algebraic surface coefficients. Our implementation of procedural level sets too is based on least squares, though in our case to minimize the change in surface parameters during surface fitting iterations. Our methods can fit any implicit surface to data, including the blobby model. Procedural level sets provide an iterative alternative to the hierarchical approach of Muraki [1991]. Our adaptive RBF techniques are similar to Muraki s blob subdivision, though our implementation is with a speed function based in a general level set context whereas his solution used a specialized objective function and a quasi-newton solver. 3 Implicit Surface Propagation 3.1 Derivation Following the development in Sethian [1999], the level set method represents a moving interface surface implicitly as the isosurfaces of a time-varying scalar field S(t) = {x : φ(x, t) = 0} (1) and propagates the surface S in its normal direction by changing its underlying field φ via φ(x, t) = f(x, t) φ(x, t) (2) where f is a speed function of space, time, curvature, etc., and φ, φ are the derivatives with respect to space and time, respectively, of the scalar function φ. Let x i(t) be the path of some particle i on the evolving surface S(t), such that φ i(t) φ(x i(t), t) = 0 (3) for all t in the surface evolution time interval. The time derivative of (3) φ i(t) φ i(t) ẋ i(t) + φ(x i(t), t) = 0 (4) reveals not only that the value of the particle as it moves along its path does not change ( φ i(t) = 0), but also that the time derivative of the function φ at a fixed position (in this case at the point x i(t)) is equal to the negative of the dot product of its (spatial) gradient φ i(t) = φ(x, t)/ x and the particle s velocity 1 The particle is otherwise free to roam the surface as it evolves. We can minimize the motion of the particle by allowing it to move only in the direction of maximum change to φ, ẋ i(t) = f i(t) φi(t) φ i(t) where f i(t) = f(x i, t) is a user defined speed function. Combining (4) with (5) yields the level set propagation equation (2) that, when integrated, defines a moving implicit surface that evolves under the control of the speed function f. To provide sufficent flexibility in the allowable shapes of the isosurfaces, level set methods have been developed on an Eulerian space grid. The continuous function φ(x, t) is reconstructed from a time series of a volumetric array of samples. We are instead interested in the evolution of implicit surfaces represented by methods other than uniform rectilinear lattice samples. To this end, we generalize the function φ to include alternative implicit surface representations. Following Witkin and Heckbert [1994], let φ(x, q) = 0 (6) represent an implicit surface as the solutions x for fixed vector of shape parameters q. If φ described a family of spheres, then q would contain the center and radius of a sphere. The uniform rectilinear scalar grid representation of an implicit surface used by the classical level set method also fits in this scheme, where the parameter vector q contains the ordered values of the samples. Thus a voxel isosurface representation yields a parameter vector q of 64M elements. Let q(t) represent the shape evolution S(t) as a path through the parameter space of φ. Moving particles on this moving surface satisfy φ i(t) = φ(x i(t), q(t)) = 0. (7) Assuming the surface passes through the particles at t = 0, particle motion is coupled with surface motion by maintaining the dynamic constraint (5) φ i(t) = φ i(t) ẋ i(t) + qφ i(t) q(t) = 0 (8) where qφ(x, q) = φ(x, q)/ q is the parameter gradient of φ whose elements indicate the effect of the corresponding parameter on the value of φ. Given a shape evolution q(t), one can thus solve 1 Note that φ i φ as the former is the change in value along the particles path whereas the latter is the change in value at a fixed position. 2

3 for the paths x i that keep particles on the surface. But more powerfully given a reasonable number of particle paths x i(t) one can find a shape evolution in the form of a parameter path q(t) such that at each time t the surface passes through the particle positions. Combining the level set φ (4) with the Witkin-Heckbert φ (8) reveals that φ i(t) = qφ i(t) q(t) (9) which when incorporated into the speed equation (2) yields qφ i(t) q(t) = f(x i, t) φ i(t). (10) This equation couples the change in parameters q with the speed function. However, because both sides of the equation are real, any number of solutions q can satisfy it. We solve this underdetermined system with a least-squares optimization via Lagrangian multipliers to minimize the parameter change. We obtain this least squares solution in the direction of the gradient q(t) = j and solve for the Lagrange multipliers λ j λ j qφ j(t) (11) ( qφ i(t) qφ j(t)) λ j = f i(t) φ i(t). (12) j 3.2 Analysis Singular Values. Equation (12) is a system of n equations of n unknowns, where n is the number of floater particles on the surface. However, its result is used in (11) to scale the sum of m-vectors to find the incremental change in the m implicit surface parameters. For common implicit surface parameterizations ranging from algebraics to blobs, the number of parameters is less, often much less, than the number of particles needed to interrogate the surface. Thus the n n matrix in (12), which we can label qφ ij(t) is rank deficient, since an m m matrix would suffice. This observation has been verified by a singular value decomposition of the n n matrix, which reveals only m singular values whose absolute value exceeds a small epsilon. We are tempted to limit our solution to a subset of m floater particles, to yield a full rank matrix qφ ij(t). However, the role of the floater particles is to detect variation in the surface and the speed function. While reducing the number of floater particles increases the solution efficiency, it reduces the validity of the solution as important features in the surface or small spikes in the speed function can be missed. The redundancy of the additional floater particles provides the user with an additional implementation variable controlling the resolution of feature sensitivity. An alternative is to choose a different randomized collection of m particles to solve for the m parameters. One runs the risk of an unlucky choice producing a single system, but such cases could simply trigger the re-choosing of a different random collection of m particles. One might consider avoiding the derivations altogether, implement the standard Witkin-Heckbert floater and controller particle systems, and propagate the controller particles, moving them in their normal direction proportional to their speed function. The implicit surface, constrained to interpolate the controller particles, would follow. However, as mentioned before, this would either require a large number of controller particles, or placement of controller particles at key positions on the surface. The floater particles are better suited for this task, and the SVD provides a better mapping of their global evaluation of the speed function to the appropriate implicit surface parameters. Regularization. On an implicit surface φ = 0, but there are uncountably many functions aφ = 0 for real non-zero a that are also zero on the implicit surface. We have observed that implicit surface propagation has a tendency to inflate the implicit surface parameters. Furthermore, as the surface nears its goal, these parameters tend to oscillate and thrash as they strive to remove small imperfections. The least-squares optimizations of (11) and (12) should prevent parameter inflation, finding the smallest change in implicit surface parameters necessary to propagate the surface. However, as the evolving surface reaches its target, the speed function f approaches zero. Global v. Local Representation. Implicit surfaces that depend on global formulations, such as algebraics, exponential blobs and thin-plate radial basis functions, create a dense matrix in (12), because the function value at each surface point i dependence on all parameters q. Local formulations, such as soft object [Wyvill et al. 1986], metaballs [Nishimura et al. 1985] and compactly-supported radial basis functions [Morse et al. 2001], whose individual primitives do not contribute outside a given radius, result in a sparse matrix in (12), and generally faster solutions. 3.3 Results We tested our implicit surface propagation derivations on algebraic surfaces. Figure 1: A quartic surface propagates to approximate the basin of a the Utah teapot. Disk particles colored according to position relative to the teapot (yellow outside, blue inside and green near). Fig. 1 performs surface fitting and, as a consequence of level set iteration, morphing. We created a manifold mesh version of the Utah teapot, and formed an implicit representation of it using a function that returned the (signed) distance to the nearest point on the meshed surface. We fit an algebraic surface to a target implicit surface by using the target s distance function as the speed function f(x) = d(x) to propagate the algebraic surface [Breen and Whitaker 2001]. Particles on the sphere in Fig. 1 begin inside and outside the teapot, and eventually evolve to form the shape of the teapot s basin in. Level sets can also be used for scattered data fitting [Zhao et al. 2001], by setting the speed function f(x) = φ(x) d(x). (13) such that the surface is only attracted to data points in front of or behind it. (Otherwise the scattered points would cause the propagating surface to burst apart into small bubbles that would collapse around each data point.) We performed the same experiment as Fig. 1 using the teapot vertices as scattered point data. The algebraic surface evolved into a similar configuration, filling the basin, but once there became unstable. This is most likely due to the particles crossing near the data points. 3

4 4 Radial Basis Function Propagation Radial basis functions have become a popular method for implicit surface modeling [Turk and O Brien 2002], scattered point interpolation [Carr et al. 2001] and even morphing [Turk and O Brien 1999]. A radial basis function (RBF) C : R R defines a radially symmetric function C( x x i ) about a center point x i. Given a collection of center points x i and desired function values φ i, RBFs can be used to define the function φ(x) = P (x) + n a ic( x i x ) (14) i=1 where P (x) = n x+d is a plane equation of unknown parameters and a i are unknown scales of the radial basis functions. These n+4 unknowns can be found by solving the linear system Cij xt i 1 x j ai n d = φi 0 0 (15) where C ij = C( x i = x j ). In 2-D the RBF C(r) = r 2 log r 2 results in a thin plate spline that minimizes the bending energy of the interpolant, and its 3-D analog C(r) = r 3 minimizes the bending energy of the field but not necessarily that of the isosurface φ 1 (0). Radial-basis-function representations must to have at least one center off the isosurface to avoid trivial (constant) solutions to (15). One strategy is to place single RBF center set to an inside value in the middle of an object, but it is sometimes difficult to determine the middle of a contorted object. Another strategy is to surround the object with RBF centers set to an outside value, but these values can sometimes interfere with the shape of the RBF surface. We want to avoid a global specification of inside and outside. As the surface evolves, its topology and extent may change, and any global inside or outside constraints may become invalid or interfere with the propagation. To avoid this problem, we use RBF dipoles [Turk and O Brien 2002]. Instead of placing 0-valued RBF centers on the surface at x i, we place a pair of centers at x i ±ɛn with values ±ɛ, where n i = φ i/ φ i is the RBF surface normal at x i.. In addition to overcoming the previous problems, RBF dipoles have the additional benefit of exerting control over the local orientation of the RBF surface. 4.1 Derivation We perform a level set propagation of the RBF surface (14) by moving each RBF dipole by its speed function along its surface normal direction, and solving (15) to get the new surface. However, this strategy introduces some important technical issues. While each dipole influences the normal of its neighborhood of the RBF surface, it does not fully constrain the normal. Thus we need to derive a formulation for the propagation of the surface normal, so that we can align the dipole to it at each step of the level set propagation. To describe the motion of the dipole orientation, we begin by defining the projection operator, nn T nxnx nxny nxnz = n yn x n yn y n yn z (16) n zn x n zn y n zn z which, when applied to a vector, returns the component of that vector that lies in the direction of the surface normal. The project of a vector onto the tangent plane of a surface is given by T = I nn T, (17) where I is the 3 3 identity matrix. The evolution of the normals of an isosurface is defined by φ. When differentiating a unit length vector field, the derivative is always perpendicular to the original vector. This t φ means φ t φ = T t φ = T φ (18) where φ is given by (2) to be (f φ ). We now have φ t φ = (f φ ) = T D2 φnf φ T f (19) where D is used to denote the generalized gradient that forms a tensor of the appropriate rank. Thus Dφ φ is the gradient of φ and D 2 φ is the Hessian of φ. The method of computing the gradient of the speed function f depends on the application. In the case of morphing [Breen and Whitaker 2001], where f is given as the distance transform to some target object, f is merely the gradient of the distance transform. If f depends on the geometry of the level sets of φ then one must take special care to work out the formulation fully. For example, if we are propagating by mean curvature, the speed function has the special form f = φ (20) φ and φ = φ f = φ n T Df 2 n (21) Combining this with (19) gives T ( φ) T (n T D 2 φn) = T ( φ) 2T D 2 φd 2 φn T n T D 3 φn (22) 4.2 Adaptivity As a RBF surface propagates, parts of the surface become illdefined. That is, as the centers move, parts of the surface will be left with few or no centers. We solve this problem by maintaining a set of on surface points, such as the floater particles used by Witkin and Heckbert [1994]. For a given point, we find the closest RBF center. If this distance is above a given threshold, we add a new RBF center at that point. This way, as the surface propagates, we will continually patch ill-defined areas. Adaptivity also prevents the surface from becoming non-compact, as illustrated in Fig. 2. Figure 2: A sphere morphing to a teapot can become unbounded, which is corrected with the adaptive insertion of dipoles, shown as gray cones. If we are propagating our surface towards some target surface, there is more we can do. Once all the RBF centers have reached their targets, we can check each of the on surface points. If any of them are too far from the target surface, we add a new RBF 4

5 center at that point and continue propagation. This helps add detail in areas that a morphing RBF surface might smooth over. This adaptive optimization leads to decent approximations of surfaces with surprisingly few dipoles, as shown in Fig. 3, and compares well against other heuristic approaches to redundant RBF center removal [Carr et al. 2001]. Figure 5: Simply placing dipoles at the vertices of a polygonal model can be problematic. A cone reconstructed with a dipole at each vertex versus one fit by level set propagation. Figure 3: The low-res RBF approximation of the teapot after levelset propagation from a bunny. The bunny has only 130 dipoles, allowing us to do the morph in real time without using the fast multipole method. 4.3 Results We have implemented RBF level set propagation as discussed above and used it for offsetting and morphing. Figure 4: A simple tree model interpolated with RBF dipoles and its offset. Fig. 4 shows an offset of a tree, computed using a constant positive speed function. A constant negative speed function would lead to a skeleton, though the evolving surface would need to sense when it approached collision and halt before locally annihilating itself, until eventually all propagation ceases leaving an epsilon approximation of the skeleton. An entire paper was written solely for voxel-based level set skeletonization, and likewise a full development of procedural level set skeletonization exceeds our scope here and is left for further investigation. Fig. 2 shows why adaptivity is important. When morphing from a small sphere to a teapot, many of the centers will cluster around the top and bottom of the teapot. We need to adaptively add centers to keep the surface from exploding. Yellow cones show the position and orientation of each RBF dipole. Gray cones are dipoles that were added adaptively, and the gray circles are the set of floater particles. As can be seen in Fig. 5, this can be a useful way to interpolate a mesh. Usually, when interpolating a mesh with RBF centers, a center is placed at each vertex. This works fine for some models, but this is insufficient for others. Fig. 6 shows a morph from the bunny to the teapot, and Fig. 7 shows a morph from the bunny to the dragon. Note that without an adaptivity step, we get image (d) in each figure. Adaptivity is required to add the details in image (e). For models with a small number of dipoles, this propagation occurs in real time. For larger models, one should take advantage of the fast multipole method [Carr et al. 2001]. 5 Conclusions We have derived the equations of motion for a general implicit surface evolving under a speed function sampled on its surface. This enables level set algorithms to avoid a costly voxel representation and use more compact and efficient procedural implicit surfaces instead. A general derivation relating the speed function to the implicit surface function parameters is stable, but requires a singular value decomposition which can be especially expensive for global implicit surfaces. We also propagate RBF surfaces by moving dipoles in their normal direction under the speed function, which we too found stable and more efficient than the general implicit case. We demonstrated these derivations with simple tasks drawn from the numerous applications of level sets. These simple tasks were intended as proof of concept to verify the derivations. Any serious application of level set methods, whether using voxels or the procedural implicit surface propagation described here, requires careful numerical analysis and should be demonstrated on a wide variety of situations. We plan to investigate applications of procedural level sets individually, giving each the depth of analysis required by its domain. We implemented our results using the publicly available Surface library [Hart et al. 2002], which implements a generalized, programmable version of surface-constrained particle systems [Witkin and Heckbert 1994; Fleischer et al. 1995] and provided an effective development environment for this work. 5.1 Acknowledgments Supported in part by the NSF and DARPA under the CARGO grants # and # , and the medium ITR grant # References ADALSTEINSSON, D., AND SETHIAN, J A fast level set method for propagating interfaces. J. Comput. Phys. 118, BAERENTZEN, J., AND CHRISTENSEN, N Volume sculpting using the level-set method. In Proc. Shape Modeling Intl. 2002,

6 (c) (d) (e) Figure 6: Morph from bunny to teapot using RBF propagation. (c) (d) (e) Figure 7: Morph from bunny to dragon using RBF propagation. BLINN, J. F A generalization of algebraic surface drawing. ACM TOG 1(3), BREEN, D. E., AND WHITAKER, R. T A level-set approach for the metamorphosis of solid models. IEEE TVCG 7(2), Apr., CARR, J. C., BEATSON, R. K., CHERRIE, J. B., MITCHELL, T. J., FRIGHT, W. R., MCCALLUM, B. C., AND EVANS, T. R Reconstruction and representation of 3D objects with radial basis functions. In Proc. SIGGRAPH 2001, DU, H., AND QIN, H Interactive shape design using volumetric implicit PDEs. In Proc. Solid Modeling 2003, ENRIGHT, D., FEDKIW, R., FERZIGER, J., AND MITCHELL, I A hybrid particle level set method for improved interface capturing. J. Comp. Phys. 183, ENRIGHT, D., MARSCHNER, S., AND FEDKIW, R Animation and rendering of complex water surfaces. ACM TOG 21(3), (Proc. SIGGRAPH 2002). FLEISCHER, K. W., LAIDLAW, D. H., CURRIN, B. L., AND BARR, A. H Cellular texture generation. In Proc. SIGGRAPH 95, FOSTER, N., AND FEDKIW, R Practical animation of liquids. Proc. SIGGRAPH 2001, Aug., FRISKEN, S. F., PERRY, R. N., ROCKWOOD, A. P., AND JONES, T. R Adaptively sampled distance fields: A general representation of shape for computer graphics. In Proc. SIGGRAPH, HART, J., BACHTA, E., JAROSZ, W., AND FLEURY, T Using particles to sample and control more complex implicit surfaces. In Proc. Shape Modeling International, JIAO, X Data Transfer and Surface Propagation in Multicomponent Simulations. PhD thesis, University of Illinois at Urbana-Champaign. Tech Report UIUCDCS-R KIMMEL, R., AND BRUCKSTEIN, A Shape offsets via level sets. CAD 25(3), KIMMEL, R., SHAKED, D., KIRYATI, N., AND BRUCKSTEIN, A Skeletonization via distance maps and level sets. Comp. Vision and Image Understanding 62(4), LAWRENCE, J., AND FUNKHOUSER, T A painting interface for interactive surface deformation. In Proc. Pac. Graphics 2003, LEFOHN, A. E., KNISS, J. M., HANSEN, C. D., AND WHITAKER, R. T Interactive deformation and visualization of level set surfaces using graphics hardware. In Proc. Vis. 2003, LOSASSO, F., GIBOU, F., AND FEDKIW, R Simulating water and smoke with an octree data structure. ACM Trans. on Graphics (Proc. SIGGRAPH 2004) 23(3), July. MAEKAWA, T An overview of offset curves and surfaces. Computer- Aided Design 31, MARKOSIAN, L., COHEN, J. M., CRULLI, T., AND HUGHES, J Skin: A constructive approach to modeling free-form shapes. In Proc. SIGGRAPH 99. MORSE, B., YOO, T., RHEINGANS, P., CHEN, D., AND SUBRAMANIAN, K Interpolating implicit surfaces from scattered surface data using compactly supported radial basis functions. In Proc. Shape Modeling International, MURAKI, S Volumetric shape description of range data using blobby model. In Proc. SIGGRAPH 91, MUSETH, K., BREEN, D., WHITAKER, R., AND BARR, A Level set surface editing operators. ACM TOG 21(3), July, (Proc. SIGGRAPH 2002). NGUYEN, D. Q., FEDKIW, R. P., AND JENSEN, H. W Physically based modeling and animation of fire. ACM TOG 21(3), (Proc. SIGGRAPH 2002). NISHIMURA, H., HIRAI, M., KAWAI, T., KAWATA, T., SHIRAKAWA, I., AND OMURA, K Object modeling by distribution function and a method of image generation. In Proc. of Electronics Communication Conference 85, (Japanese). PHAM, B Offset curves and surfaces: A brief survey. CAD 24(4), POPINET, S Gerris: A tree-based adaptive solver for the incompressible Euler equations in complex geometries. J. Comp. Physics 190, PRATT, V Direct least-squares fitting of algebraic surfaces. In Proc. SIGGRAPH 87, SETHIAN, J. A Level Set Methods and Fast Marching Methods. Cambridge University Press, New York. 6

7 STRAIN, J Fast tree-based redistancing for level set computations. J. Comput. Phys. 152, STRAIN, J Tree methods for moving interfaces. J. Comput. Phys. 151, STRAIN, J A fast modular semi-lagrangian method for moving interfaces. J. Comput. Phys. 161, STRAIN, J A fast semi-lagrangian contouring method for moving interfaces. J. Comput. Phys. 169, TASDIZEN, T., WHITAKER, R., BURCHARD, P., AND OSHER, S Geometric surface smoothing via anisotropic diffusion of normals. Proc. Vis. 2002, Oct. TURK, G., AND O BRIEN, J. F Shape transformation using variational implicit functions. In Proc. SIGGRAPH 99, TURK, G., AND O BRIEN, J. F Modelling with implicit surfaces that interpolate. ACM TOG 21(4), WITKIN, A. P., AND HECKBERT, P. S Using particles to sample and control implicit surfaces. In Proc. SIGGRAPH 94, WYVILL, G., MCPHEETERS, C., AND WYVILL, B Data structure for soft objects. Visual Computer 2(4), ZHAO, H.-K., OSHER, S., AND FEDKIW, R Fast surface reconstruction using the level set method. Proc. Workshop on Variational and Level Set Methods in Computer Vision, July. 7

Level Set Models for Computer Graphics

Level Set Models for Computer Graphics Level Set Models for Computer Graphics David E. Breen Department of Computer Science Drexel University Ross T. Whitaker School of Computing University of Utah Ken Museth Department of Science and Technology

More information

Surface Reconstruction. Gianpaolo Palma

Surface Reconstruction. Gianpaolo Palma Surface Reconstruction Gianpaolo Palma Surface reconstruction Input Point cloud With or without normals Examples: multi-view stereo, union of range scan vertices Range scans Each scan is a triangular mesh

More information

Surface Reconstruction

Surface Reconstruction Eurographics Symposium on Geometry Processing (2006) Surface Reconstruction 2009.12.29 Some methods for surface reconstruction Classification 1. Based on Delaunay triangulation(or Voronoi diagram) Alpha

More information

Overview of Traditional Surface Tracking Methods

Overview of Traditional Surface Tracking Methods Liquid Simulation With Mesh-Based Surface Tracking Overview of Traditional Surface Tracking Methods Matthias Müller Introduction Research lead of NVIDIA PhysX team PhysX GPU acc. Game physics engine www.nvidia.com\physx

More information

Implicit Surfaces & Solid Representations COS 426

Implicit Surfaces & Solid Representations COS 426 Implicit Surfaces & Solid Representations COS 426 3D Object Representations Desirable properties of an object representation Easy to acquire Accurate Concise Intuitive editing Efficient editing Efficient

More information

03 - Reconstruction. Acknowledgements: Olga Sorkine-Hornung. CSCI-GA Geometric Modeling - Spring 17 - Daniele Panozzo

03 - Reconstruction. Acknowledgements: Olga Sorkine-Hornung. CSCI-GA Geometric Modeling - Spring 17 - Daniele Panozzo 3 - Reconstruction Acknowledgements: Olga Sorkine-Hornung Geometry Acquisition Pipeline Scanning: results in range images Registration: bring all range images to one coordinate system Stitching/ reconstruction:

More information

CS354 Computer Graphics Surface Representation IV. Qixing Huang March 7th 2018

CS354 Computer Graphics Surface Representation IV. Qixing Huang March 7th 2018 CS354 Computer Graphics Surface Representation IV Qixing Huang March 7th 2018 Today s Topic Subdivision surfaces Implicit surface representation Subdivision Surfaces Building complex models We can extend

More information

Introduction to Computer Graphics. Modeling (3) April 27, 2017 Kenshi Takayama

Introduction to Computer Graphics. Modeling (3) April 27, 2017 Kenshi Takayama Introduction to Computer Graphics Modeling (3) April 27, 2017 Kenshi Takayama Solid modeling 2 Solid models Thin shapes represented by single polygons Unorientable Clear definition of inside & outside

More information

Level set methods Formulation of Interface Propagation Boundary Value PDE Initial Value PDE Motion in an externally generated velocity field

Level set methods Formulation of Interface Propagation Boundary Value PDE Initial Value PDE Motion in an externally generated velocity field Level Set Methods Overview Level set methods Formulation of Interface Propagation Boundary Value PDE Initial Value PDE Motion in an externally generated velocity field Convection Upwind ddifferencingi

More information

Meshless Modeling, Animating, and Simulating Point-Based Geometry

Meshless Modeling, Animating, and Simulating Point-Based Geometry Meshless Modeling, Animating, and Simulating Point-Based Geometry Xiaohu Guo SUNY @ Stony Brook Email: xguo@cs.sunysb.edu http://www.cs.sunysb.edu/~xguo Graphics Primitives - Points The emergence of points

More information

The Level Set Method. Lecture Notes, MIT J / 2.097J / 6.339J Numerical Methods for Partial Differential Equations

The Level Set Method. Lecture Notes, MIT J / 2.097J / 6.339J Numerical Methods for Partial Differential Equations The Level Set Method Lecture Notes, MIT 16.920J / 2.097J / 6.339J Numerical Methods for Partial Differential Equations Per-Olof Persson persson@mit.edu March 7, 2005 1 Evolving Curves and Surfaces Evolving

More information

Physically-Based Modeling and Animation. University of Missouri at Columbia

Physically-Based Modeling and Animation. University of Missouri at Columbia Overview of Geometric Modeling Overview 3D Shape Primitives: Points Vertices. Curves Lines, polylines, curves. Surfaces Triangle meshes, splines, subdivision surfaces, implicit surfaces, particles. Solids

More information

Unstructured Mesh Generation for Implicit Moving Geometries and Level Set Applications

Unstructured Mesh Generation for Implicit Moving Geometries and Level Set Applications Unstructured Mesh Generation for Implicit Moving Geometries and Level Set Applications Per-Olof Persson (persson@mit.edu) Department of Mathematics Massachusetts Institute of Technology http://www.mit.edu/

More information

The goal is the definition of points with numbers and primitives with equations or functions. The definition of points with numbers requires a

The goal is the definition of points with numbers and primitives with equations or functions. The definition of points with numbers requires a The goal is the definition of points with numbers and primitives with equations or functions. The definition of points with numbers requires a coordinate system and then the measuring of the point with

More information

Geometric Representations. Stelian Coros

Geometric Representations. Stelian Coros Geometric Representations Stelian Coros Geometric Representations Languages for describing shape Boundary representations Polygonal meshes Subdivision surfaces Implicit surfaces Volumetric models Parametric

More information

Simulation in Computer Graphics. Deformable Objects. Matthias Teschner. Computer Science Department University of Freiburg

Simulation in Computer Graphics. Deformable Objects. Matthias Teschner. Computer Science Department University of Freiburg Simulation in Computer Graphics Deformable Objects Matthias Teschner Computer Science Department University of Freiburg Outline introduction forces performance collision handling visualization University

More information

A Hole-Filling Algorithm for Triangular Meshes. Abstract

A Hole-Filling Algorithm for Triangular Meshes. Abstract A Hole-Filling Algorithm for Triangular Meshes Lavanya Sita Tekumalla, Elaine Cohen UUCS-04-019 School of Computing University of Utah Salt Lake City, UT 84112 USA December 20, 2004 Abstract Data obtained

More information

Curve and Surface Basics

Curve and Surface Basics Curve and Surface Basics Implicit and parametric forms Power basis form Bezier curves Rational Bezier Curves Tensor Product Surfaces ME525x NURBS Curve and Surface Modeling Page 1 Implicit and Parametric

More information

Geometric Modeling and Processing

Geometric Modeling and Processing Geometric Modeling and Processing Tutorial of 3DIM&PVT 2011 (Hangzhou, China) May 16, 2011 6. Mesh Simplification Problems High resolution meshes becoming increasingly available 3D active scanners Computer

More information

Active Contours Using a Constraint-Based Implicit Representation

Active Contours Using a Constraint-Based Implicit Representation To appear in Proceedings Computer Vision and Pattern Recognition, IEEE Computer Society Press, June 2005 Active Contours Using a Constraint-Based Implicit Representation Bryan S. Morse 1, Weiming Liu 1,

More information

BACK AND FORTH ERROR COMPENSATION AND CORRECTION METHODS FOR REMOVING ERRORS INDUCED BY UNEVEN GRADIENTS OF THE LEVEL SET FUNCTION

BACK AND FORTH ERROR COMPENSATION AND CORRECTION METHODS FOR REMOVING ERRORS INDUCED BY UNEVEN GRADIENTS OF THE LEVEL SET FUNCTION BACK AND FORTH ERROR COMPENSATION AND CORRECTION METHODS FOR REMOVING ERRORS INDUCED BY UNEVEN GRADIENTS OF THE LEVEL SET FUNCTION TODD F. DUPONT AND YINGJIE LIU Abstract. We propose a method that significantly

More information

weighted minimal surface model for surface reconstruction from scattered points, curves, and/or pieces of surfaces.

weighted minimal surface model for surface reconstruction from scattered points, curves, and/or pieces of surfaces. weighted minimal surface model for surface reconstruction from scattered points, curves, and/or pieces of surfaces. joint work with (S. Osher, R. Fedkiw and M. Kang) Desired properties for surface reconstruction:

More information

Deforming meshes that split and merge

Deforming meshes that split and merge Deforming meshes that split and merge Chris Wojtan Nils Th urey Markus Gross Greg Turk Chris Wojtan, Nils Thurey, Markus Gross, Greg Turk Introduction ž Presents a method for accurately tracking the moving

More information

Mass-Spring Systems. Last Time?

Mass-Spring Systems. Last Time? Mass-Spring Systems Last Time? Implicit Surfaces & Marching Cubes/Tetras Collision Detection & Conservative Bounding Regions Spatial Acceleration Data Structures Octree, k-d tree, BSF tree 1 Today Particle

More information

3D Modeling techniques

3D Modeling techniques 3D Modeling techniques 0. Reconstruction From real data (not covered) 1. Procedural modeling Automatic modeling of a self-similar objects or scenes 2. Interactive modeling Provide tools to computer artists

More information

Geometric Modeling in Graphics

Geometric Modeling in Graphics Geometric Modeling in Graphics Part 10: Surface reconstruction Martin Samuelčík www.sccg.sk/~samuelcik samuelcik@sccg.sk Curve, surface reconstruction Finding compact connected orientable 2-manifold surface

More information

A Multi-scale Approach to 3D Scattered Data Interpolation with Compactly Supported Basis Functions

A Multi-scale Approach to 3D Scattered Data Interpolation with Compactly Supported Basis Functions Shape Modeling International 2003 Seoul, Korea A Multi-scale Approach to 3D Scattered Data Interpolation with Compactly Supported Basis Functions Yutaa Ohtae Alexander Belyaev Hans-Peter Seidel Objective

More information

3D MORPHISM & IMPLICIT SURFACES

3D MORPHISM & IMPLICIT SURFACES 3D MORPHISM & IMPLICIT SURFACES ROMAIN BALP AND CHARLEY PAULUS Abstract. The purpose of this paper is to present a framework based on implicit surfaces that allows to visualize dynamic shapes, and see

More information

Interactive Shape Design Using Volumetric Implicit PDEs

Interactive Shape Design Using Volumetric Implicit PDEs Interactive Shape Design Using Volumetric Implicit PDEs Haixia Du Hong Qin Department of Computer Science State University of New York at Stony Brook ABSTRACT Solid modeling based on Partial Differential

More information

Motivation. Freeform Shape Representations for Efficient Geometry Processing. Operations on Geometric Objects. Functional Representations

Motivation. Freeform Shape Representations for Efficient Geometry Processing. Operations on Geometric Objects. Functional Representations Motivation Freeform Shape Representations for Efficient Geometry Processing Eurographics 23 Granada, Spain Geometry Processing (points, wireframes, patches, volumes) Efficient algorithms always have to

More information

CS205b/CME306. Lecture 9

CS205b/CME306. Lecture 9 CS205b/CME306 Lecture 9 1 Convection Supplementary Reading: Osher and Fedkiw, Sections 3.3 and 3.5; Leveque, Sections 6.7, 8.3, 10.2, 10.4. For a reference on Newton polynomial interpolation via divided

More information

Implicit Surfaces. Misha Kazhdan CS598b

Implicit Surfaces. Misha Kazhdan CS598b Implicit Surfaces Misha Kazhdan CS598b Definition: Given a function F the implicit surface S generated by this function is the set of zero points of F: S ( ) { p F = } = p The interior I is the set of

More information

A Toolbox of Level Set Methods

A Toolbox of Level Set Methods A Toolbox of Level Set Methods Ian Mitchell Department of Computer Science University of British Columbia http://www.cs.ubc.ca/~mitchell mitchell@cs.ubc.ca research supported by the Natural Science and

More information

Implicit Surfaces that Interpolate

Implicit Surfaces that Interpolate Implicit Surfaces that Interpolate Greg Turk and Huong Quynh Dinh GVU Center, College of Computing Georgia Institute of Technology James F O Brien EECS, Computer Science Division University of California,

More information

On the Velocity of an Implicit Surface

On the Velocity of an Implicit Surface On the Velocity of an Implicit Surface JOS STAM and RYAN SCHMIDT Autodesk Research In this paper we derive an equation for the velocity of an arbitrary timeevolving implicit surface. Strictly speaking

More information

PARAMETRIC SHAPE AND TOPOLOGY OPTIMIZATION WITH RADIAL BASIS FUNCTIONS

PARAMETRIC SHAPE AND TOPOLOGY OPTIMIZATION WITH RADIAL BASIS FUNCTIONS PARAMETRIC SHAPE AND TOPOLOGY OPTIMIZATION WITH RADIAL BASIS FUNCTIONS Michael Yu Wang 1 and Shengyin Wang 1 Department of Automation and Computer-Aided Engineering The Chinese University of Hong Kong

More information

Surfaces, meshes, and topology

Surfaces, meshes, and topology Surfaces from Point Samples Surfaces, meshes, and topology A surface is a 2-manifold embedded in 3- dimensional Euclidean space Such surfaces are often approximated by triangle meshes 2 1 Triangle mesh

More information

Homework 1: Implicit Surfaces, Collision Detection, & Volumetric Data Structures. Loop Subdivision. Loop Subdivision. Questions/Comments?

Homework 1: Implicit Surfaces, Collision Detection, & Volumetric Data Structures. Loop Subdivision. Loop Subdivision. Questions/Comments? Homework 1: Questions/Comments? Implicit Surfaces,, & Volumetric Data Structures Loop Subdivision Shirley, Fundamentals of Computer Graphics Loop Subdivision SIGGRAPH 2000 course notes Subdivision for

More information

Images from 3D Creative Magazine. 3D Modelling Systems

Images from 3D Creative Magazine. 3D Modelling Systems Images from 3D Creative Magazine 3D Modelling Systems Contents Reference & Accuracy 3D Primitives Transforms Move (Translate) Rotate Scale Mirror Align 3D Booleans Deforms Bend Taper Skew Twist Squash

More information

coding of various parts showing different features, the possibility of rotation or of hiding covering parts of the object's surface to gain an insight

coding of various parts showing different features, the possibility of rotation or of hiding covering parts of the object's surface to gain an insight Three-Dimensional Object Reconstruction from Layered Spatial Data Michael Dangl and Robert Sablatnig Vienna University of Technology, Institute of Computer Aided Automation, Pattern Recognition and Image

More information

A Developer s Survey of Polygonal Simplification algorithms. CS 563 Advanced Topics in Computer Graphics Fan Wu Mar. 31, 2005

A Developer s Survey of Polygonal Simplification algorithms. CS 563 Advanced Topics in Computer Graphics Fan Wu Mar. 31, 2005 A Developer s Survey of Polygonal Simplification algorithms CS 563 Advanced Topics in Computer Graphics Fan Wu Mar. 31, 2005 Some questions to ask Why simplification? What are my models like? What matters

More information

04 - Normal Estimation, Curves

04 - Normal Estimation, Curves 04 - Normal Estimation, Curves Acknowledgements: Olga Sorkine-Hornung Normal Estimation Implicit Surface Reconstruction Implicit function from point clouds Need consistently oriented normals < 0 0 > 0

More information

CGT 581 G Fluids. Overview. Some terms. Some terms

CGT 581 G Fluids. Overview. Some terms. Some terms CGT 581 G Fluids Bedřich Beneš, Ph.D. Purdue University Department of Computer Graphics Technology Overview Some terms Incompressible Navier-Stokes Boundary conditions Lagrange vs. Euler Eulerian approaches

More information

Computer Graphics Ray Casting. Matthias Teschner

Computer Graphics Ray Casting. Matthias Teschner Computer Graphics Ray Casting Matthias Teschner Outline Context Implicit surfaces Parametric surfaces Combined objects Triangles Axis-aligned boxes Iso-surfaces in grids Summary University of Freiburg

More information

Sung-Eui Yoon ( 윤성의 )

Sung-Eui Yoon ( 윤성의 ) CS480: Computer Graphics Curves and Surfaces Sung-Eui Yoon ( 윤성의 ) Course URL: http://jupiter.kaist.ac.kr/~sungeui/cg Today s Topics Surface representations Smooth curves Subdivision 2 Smooth Curves and

More information

Shape Representation Basic problem We make pictures of things How do we describe those things? Many of those things are shapes Other things include

Shape Representation Basic problem We make pictures of things How do we describe those things? Many of those things are shapes Other things include Shape Representation Basic problem We make pictures of things How do we describe those things? Many of those things are shapes Other things include motion, behavior Graphics is a form of simulation and

More information

Freeform Shape Representations for Efficient Geometry Processing

Freeform Shape Representations for Efficient Geometry Processing Freeform Shape Representations for Efficient Geometry Processing Leif Kobbelt Mario Botsch Computer Graphics Group RWTH Aachen Abstract The most important concepts for the handling and storage of freeform

More information

Medical Image Segmentation using Level Sets

Medical Image Segmentation using Level Sets Medical Image Segmentation using Level Sets Technical Report #CS-8-1 Tenn Francis Chen Abstract Segmentation is a vital aspect of medical imaging. It aids in the visualization of medical data and diagnostics

More information

CHAPTER 1 Graphics Systems and Models 3

CHAPTER 1 Graphics Systems and Models 3 ?????? 1 CHAPTER 1 Graphics Systems and Models 3 1.1 Applications of Computer Graphics 4 1.1.1 Display of Information............. 4 1.1.2 Design.................... 5 1.1.3 Simulation and Animation...........

More information

Real-Time Shape Editing using Radial Basis Functions

Real-Time Shape Editing using Radial Basis Functions Real-Time Shape Editing using Radial Basis Functions, Leif Kobbelt RWTH Aachen Boundary Constraint Modeling Prescribe irregular constraints Vertex positions Constrained energy minimization Optimal fairness

More information

CS123 INTRODUCTION TO COMPUTER GRAPHICS. Describing Shapes. Constructing Objects in Computer Graphics 1/15

CS123 INTRODUCTION TO COMPUTER GRAPHICS. Describing Shapes. Constructing Objects in Computer Graphics 1/15 Describing Shapes Constructing Objects in Computer Graphics 1/15 2D Object Definition (1/3) Lines and polylines: Polylines: lines drawn between ordered points A closed polyline is a polygon, a simple polygon

More information

Interactive Computer Graphics A TOP-DOWN APPROACH WITH SHADER-BASED OPENGL

Interactive Computer Graphics A TOP-DOWN APPROACH WITH SHADER-BASED OPENGL International Edition Interactive Computer Graphics A TOP-DOWN APPROACH WITH SHADER-BASED OPENGL Sixth Edition Edward Angel Dave Shreiner Interactive Computer Graphics: A Top-Down Approach with Shader-Based

More information

Parameterization. Michael S. Floater. November 10, 2011

Parameterization. Michael S. Floater. November 10, 2011 Parameterization Michael S. Floater November 10, 2011 Triangular meshes are often used to represent surfaces, at least initially, one reason being that meshes are relatively easy to generate from point

More information

2D Spline Curves. CS 4620 Lecture 13

2D Spline Curves. CS 4620 Lecture 13 2D Spline Curves CS 4620 Lecture 13 2008 Steve Marschner 1 Motivation: smoothness In many applications we need smooth shapes [Boeing] that is, without discontinuities So far we can make things with corners

More information

Feature Based Implicit Function Shaping with Isocontour Embedded Curves

Feature Based Implicit Function Shaping with Isocontour Embedded Curves Feature Based Implicit Function Shaping with Isocontour Embedded Curves Patrick Coleman December 19, 2005 Abstract Implicit functions are used for many applications, including shape modeling, shape editing,

More information

2.7 Cloth Animation. Jacobs University Visualization and Computer Graphics Lab : Advanced Graphics - Chapter 2 123

2.7 Cloth Animation. Jacobs University Visualization and Computer Graphics Lab : Advanced Graphics - Chapter 2 123 2.7 Cloth Animation 320491: Advanced Graphics - Chapter 2 123 Example: Cloth draping Image Michael Kass 320491: Advanced Graphics - Chapter 2 124 Cloth using mass-spring model Network of masses and springs

More information

Shape Modeling and Geometry Processing

Shape Modeling and Geometry Processing 252-0538-00L, Spring 2018 Shape Modeling and Geometry Processing Discrete Differential Geometry Differential Geometry Motivation Formalize geometric properties of shapes Roi Poranne # 2 Differential Geometry

More information

Parameterization of Triangular Meshes with Virtual Boundaries

Parameterization of Triangular Meshes with Virtual Boundaries Parameterization of Triangular Meshes with Virtual Boundaries Yunjin Lee 1;Λ Hyoung Seok Kim 2;y Seungyong Lee 1;z 1 Department of Computer Science and Engineering Pohang University of Science and Technology

More information

Let s start with occluding contours (or interior and exterior silhouettes), and look at image-space algorithms. A very simple technique is to render

Let s start with occluding contours (or interior and exterior silhouettes), and look at image-space algorithms. A very simple technique is to render 1 There are two major classes of algorithms for extracting most kinds of lines from 3D meshes. First, there are image-space algorithms that render something (such as a depth map or cosine-shaded model),

More information

From curves to surfaces. Parametric surfaces and solid modeling. Extrusions. Surfaces of revolution. So far have discussed spline curves in 2D

From curves to surfaces. Parametric surfaces and solid modeling. Extrusions. Surfaces of revolution. So far have discussed spline curves in 2D From curves to surfaces Parametric surfaces and solid modeling CS 465 Lecture 12 2007 Doug James & Steve Marschner 1 So far have discussed spline curves in 2D it turns out that this already provides of

More information

2.11 Particle Systems

2.11 Particle Systems 2.11 Particle Systems 320491: Advanced Graphics - Chapter 2 152 Particle Systems Lagrangian method not mesh-based set of particles to model time-dependent phenomena such as snow fire smoke 320491: Advanced

More information

Level-set and ALE Based Topology Optimization Using Nonlinear Programming

Level-set and ALE Based Topology Optimization Using Nonlinear Programming 10 th World Congress on Structural and Multidisciplinary Optimization May 19-24, 2013, Orlando, Florida, USA Level-set and ALE Based Topology Optimization Using Nonlinear Programming Shintaro Yamasaki

More information

Lecture 17: Solid Modeling.... a cubit on the one side, and a cubit on the other side Exodus 26:13

Lecture 17: Solid Modeling.... a cubit on the one side, and a cubit on the other side Exodus 26:13 Lecture 17: Solid Modeling... a cubit on the one side, and a cubit on the other side Exodus 26:13 Who is on the LORD's side? Exodus 32:26 1. Solid Representations A solid is a 3-dimensional shape with

More information

Vector Visualization. CSC 7443: Scientific Information Visualization

Vector Visualization. CSC 7443: Scientific Information Visualization Vector Visualization Vector data A vector is an object with direction and length v = (v x,v y,v z ) A vector field is a field which associates a vector with each point in space The vector data is 3D representation

More information

Computational Design. Stelian Coros

Computational Design. Stelian Coros Computational Design Stelian Coros Schedule for presentations February 3 5 10 12 17 19 24 26 March 3 5 10 12 17 19 24 26 30 April 2 7 9 14 16 21 23 28 30 Send me: ASAP: 3 choices for dates + approximate

More information

Navier-Stokes & Flow Simulation

Navier-Stokes & Flow Simulation Last Time? Navier-Stokes & Flow Simulation Pop Worksheet! Teams of 2. Hand in to Jeramey after we discuss. Sketch the first few frames of a 2D explicit Euler mass-spring simulation for a 2x3 cloth network

More information

Free-Form Deformation and Other Deformation Techniques

Free-Form Deformation and Other Deformation Techniques Free-Form Deformation and Other Deformation Techniques Deformation Deformation Basic Definition Deformation: A transformation/mapping of the positions of every particle in the original object to those

More information

COMPUTER AIDED GEOMETRIC DESIGN. Thomas W. Sederberg

COMPUTER AIDED GEOMETRIC DESIGN. Thomas W. Sederberg COMPUTER AIDED GEOMETRIC DESIGN Thomas W. Sederberg January 31, 2011 ii T. W. Sederberg iii Preface This semester is the 24 th time I have taught a course at Brigham Young University titled, Computer Aided

More information

2D rendering takes a photo of the 2D scene with a virtual camera that selects an axis aligned rectangle from the scene. The photograph is placed into

2D rendering takes a photo of the 2D scene with a virtual camera that selects an axis aligned rectangle from the scene. The photograph is placed into 2D rendering takes a photo of the 2D scene with a virtual camera that selects an axis aligned rectangle from the scene. The photograph is placed into the viewport of the current application window. A pixel

More information

Outline. Reconstruction of 3D Meshes from Point Clouds. Motivation. Problem Statement. Applications. Challenges

Outline. Reconstruction of 3D Meshes from Point Clouds. Motivation. Problem Statement. Applications. Challenges Reconstruction of 3D Meshes from Point Clouds Ming Zhang Patrick Min cs598b, Geometric Modeling for Computer Graphics Feb. 17, 2000 Outline - problem statement - motivation - applications - challenges

More information

An Intuitive Framework for Real-Time Freeform Modeling

An Intuitive Framework for Real-Time Freeform Modeling An Intuitive Framework for Real-Time Freeform Modeling Leif Kobbelt Shape Deformation Complex shapes Complex deformations User Interaction Very limited user interface 2D screen & mouse Intuitive metaphor

More information

GEOMETRIC TOOLS FOR COMPUTER GRAPHICS

GEOMETRIC TOOLS FOR COMPUTER GRAPHICS GEOMETRIC TOOLS FOR COMPUTER GRAPHICS PHILIP J. SCHNEIDER DAVID H. EBERLY MORGAN KAUFMANN PUBLISHERS A N I M P R I N T O F E L S E V I E R S C I E N C E A M S T E R D A M B O S T O N L O N D O N N E W

More information

Implicit Surface Reconstruction from 3D Scattered Points Based on Variational Level Set Method

Implicit Surface Reconstruction from 3D Scattered Points Based on Variational Level Set Method Implicit Surface econstruction from D Scattered Points Based on Variational Level Set Method Hanbo Liu Department ofshenzhen graduate school, Harbin Institute oftechnology, Shenzhen, 58055, China liu_hanbo@hit.edu.cn

More information

Physically Based Simulation

Physically Based Simulation CSCI 420 Computer Graphics Lecture 21 Physically Based Simulation Examples Particle Systems Numerical Integration Cloth Simulation [Angel Ch. 9] Jernej Barbic University of Southern California 1 Physics

More information

Overview of 3D Object Representations

Overview of 3D Object Representations Overview of 3D Object Representations Thomas Funkhouser Princeton University C0S 426, Fall 2000 Course Syllabus I. Image processing II. Rendering III. Modeling IV. Animation Image Processing (Rusty Coleman,

More information

Outline. Level Set Methods. For Inverse Obstacle Problems 4. Introduction. Introduction. Martin Burger

Outline. Level Set Methods. For Inverse Obstacle Problems 4. Introduction. Introduction. Martin Burger For Inverse Obstacle Problems Martin Burger Outline Introduction Optimal Geometries Inverse Obstacle Problems & Shape Optimization Sensitivity Analysis based on Gradient Flows Numerical Methods University

More information

CS337 INTRODUCTION TO COMPUTER GRAPHICS. Describing Shapes. Constructing Objects in Computer Graphics. Bin Sheng Representing Shape 9/20/16 1/15

CS337 INTRODUCTION TO COMPUTER GRAPHICS. Describing Shapes. Constructing Objects in Computer Graphics. Bin Sheng Representing Shape 9/20/16 1/15 Describing Shapes Constructing Objects in Computer Graphics 1/15 2D Object Definition (1/3) Lines and polylines: Polylines: lines drawn between ordered points A closed polyline is a polygon, a simple polygon

More information

3D Modeling Parametric Curves & Surfaces. Shandong University Spring 2013

3D Modeling Parametric Curves & Surfaces. Shandong University Spring 2013 3D Modeling Parametric Curves & Surfaces Shandong University Spring 2013 3D Object Representations Raw data Point cloud Range image Polygon soup Surfaces Mesh Subdivision Parametric Implicit Solids Voxels

More information

ERC Expressive Seminar

ERC Expressive Seminar ERC Expressive Seminar March 7th - 2013 Models and Intuitive Modeling Loïc Barthe VORTEX group IRIT Université de Toulouse Plan Context and introduction Intuitive modeling Modeling with meshes only Other

More information

Geometric Modeling. Bing-Yu Chen National Taiwan University The University of Tokyo

Geometric Modeling. Bing-Yu Chen National Taiwan University The University of Tokyo Geometric Modeling Bing-Yu Chen National Taiwan University The University of Tokyo What are 3D Objects? 3D Object Representations What are 3D objects? The Graphics Process 3D Object Representations Raw

More information

Inverse and Implicit functions

Inverse and Implicit functions CHAPTER 3 Inverse and Implicit functions. Inverse Functions and Coordinate Changes Let U R d be a domain. Theorem. (Inverse function theorem). If ϕ : U R d is differentiable at a and Dϕ a is invertible,

More information

Cloth Simulation. Tanja Munz. Master of Science Computer Animation and Visual Effects. CGI Techniques Report

Cloth Simulation. Tanja Munz. Master of Science Computer Animation and Visual Effects. CGI Techniques Report Cloth Simulation CGI Techniques Report Tanja Munz Master of Science Computer Animation and Visual Effects 21st November, 2014 Abstract Cloth simulation is a wide and popular area of research. First papers

More information

Dr. Ulas Bagci

Dr. Ulas Bagci Lecture 9: Deformable Models and Segmentation CAP-Computer Vision Lecture 9-Deformable Models and Segmentation Dr. Ulas Bagci bagci@ucf.edu Lecture 9: Deformable Models and Segmentation Motivation A limitation

More information

3D Object Representation. Michael Kazhdan ( /657)

3D Object Representation. Michael Kazhdan ( /657) 3D Object Representation Michael Kazhdan (601.457/657) 3D Objects How can this object be represented in a computer? 3D Objects This one? H&B Figure 10.46 3D Objects This one? H&B Figure 9.9 3D Objects

More information

Curves and Surfaces Computer Graphics I Lecture 10

Curves and Surfaces Computer Graphics I Lecture 10 15-462 Computer Graphics I Lecture 10 Curves and Surfaces Parametric Representations Cubic Polynomial Forms Hermite Curves Bezier Curves and Surfaces [Angel 10.1-10.6] September 30, 2003 Doug James Carnegie

More information

3D Modeling Parametric Curves & Surfaces

3D Modeling Parametric Curves & Surfaces 3D Modeling Parametric Curves & Surfaces Shandong University Spring 2012 3D Object Representations Raw data Point cloud Range image Polygon soup Solids Voxels BSP tree CSG Sweep Surfaces Mesh Subdivision

More information

2D Spline Curves. CS 4620 Lecture 18

2D Spline Curves. CS 4620 Lecture 18 2D Spline Curves CS 4620 Lecture 18 2014 Steve Marschner 1 Motivation: smoothness In many applications we need smooth shapes that is, without discontinuities So far we can make things with corners (lines,

More information

Fairing Scalar Fields by Variational Modeling of Contours

Fairing Scalar Fields by Variational Modeling of Contours Fairing Scalar Fields by Variational Modeling of Contours Martin Bertram University of Kaiserslautern, Germany Abstract Volume rendering and isosurface extraction from three-dimensional scalar fields are

More information

Level Set Methods and Fast Marching Methods

Level Set Methods and Fast Marching Methods Level Set Methods and Fast Marching Methods I.Lyulina Scientific Computing Group May, 2002 Overview Existing Techniques for Tracking Interfaces Basic Ideas of Level Set Method and Fast Marching Method

More information

Volumetric Particle Separating Planes for Collision Detection

Volumetric Particle Separating Planes for Collision Detection Volumetric Particle Separating Planes for Collision Detection by Brent M. Dingle Fall 2004 Texas A&M University Abstract In this paper we describe a method of determining the separation plane of two objects

More information

3D Modeling: Solid Models

3D Modeling: Solid Models CS 430/536 Computer Graphics I 3D Modeling: Solid Models Week 9, Lecture 18 David Breen, William Regli and Maxim Peysakhov Geometric and Intelligent Computing Laboratory Department of Computer Science

More information

Know it. Control points. B Spline surfaces. Implicit surfaces

Know it. Control points. B Spline surfaces. Implicit surfaces Know it 15 B Spline Cur 14 13 12 11 Parametric curves Catmull clark subdivision Parametric surfaces Interpolating curves 10 9 8 7 6 5 4 3 2 Control points B Spline surfaces Implicit surfaces Bezier surfaces

More information

Chemnitz Scientific Computing Preprints

Chemnitz Scientific Computing Preprints Roman Unger Obstacle Description with Radial Basis Functions for Contact Problems in Elasticity CSC/09-01 Chemnitz Scientific Computing Preprints Impressum: Chemnitz Scientific Computing Preprints ISSN

More information

CS-184: Computer Graphics Lecture #21: Fluid Simulation II

CS-184: Computer Graphics Lecture #21: Fluid Simulation II CS-184: Computer Graphics Lecture #21: Fluid Simulation II Rahul Narain University of California, Berkeley Nov. 18 19, 2013 Grid-based fluid simulation Recap: Eulerian viewpoint Grid is fixed, fluid moves

More information

Polygonization of Implicit Surfaces

Polygonization of Implicit Surfaces Polygonization of Implicit Surfaces Hongxin Zhang and Jieqing Feng 2007-01-11 State Key Lab of CAD&CG Zhejiang University Contents Polygonization of Implicit Surfaces Other Methods for Displaying Implicit

More information

Cloth Hair. and. soft bodies

Cloth Hair. and. soft bodies Cloth Hair Lesson 11 and soft bodies Lesson 08 Outline Problem definition and motivations Modeling deformable solids with mass-spring model Position based dynamics Modeling cloths with mass-spring model

More information

Curves & Surfaces. Last Time? Progressive Meshes. Selective Refinement. Adjacency Data Structures. Mesh Simplification. Mesh Simplification

Curves & Surfaces. Last Time? Progressive Meshes. Selective Refinement. Adjacency Data Structures. Mesh Simplification. Mesh Simplification Last Time? Adjacency Data Structures Curves & Surfaces Geometric & topologic information Dynamic allocation Efficiency of access Mesh Simplification edge collapse/vertex split geomorphs progressive transmission

More information

G 2 Interpolation for Polar Surfaces

G 2 Interpolation for Polar Surfaces 1 G 2 Interpolation for Polar Surfaces Jianzhong Wang 1, Fuhua Cheng 2,3 1 University of Kentucky, jwangf@uky.edu 2 University of Kentucky, cheng@cs.uky.edu 3 National Tsinhua University ABSTRACT In this

More information

Introduction to Computer Graphics. Animation (2) May 26, 2016 Kenshi Takayama

Introduction to Computer Graphics. Animation (2) May 26, 2016 Kenshi Takayama Introduction to Computer Graphics Animation (2) May 26, 2016 Kenshi Takayama Physically-based deformations 2 Simple example: single mass & spring in 1D Mass m, position x, spring coefficient k, rest length

More information

Variational Implicit Surfaces

Variational Implicit Surfaces Variational Implicit Surfaces Greg Turk James F O Brien Georgia Institute of Technology Abstract We introduce a new method of creating smooth implicit surfaces of arbitrary manifold topology These surfaces

More information