Metamorphosis of Arbitrary Triangular Meshes

Size: px
Start display at page:

Download "Metamorphosis of Arbitrary Triangular Meshes"

Transcription

1 Feature Article Metamorphosis of Arbitrary Triangular Meshes Metamorphosis of 3D objects achieves shape transformation between objects. We present an efficient framework for morphing between two topologically equivalent, arbitrary meshes with user control of surface correspondences. Three-dimensional metamorphosis (or morphing) establishes a smooth transition from a source object to a target object. The primary issue in 3D metamorphosis is to establish surface correspondence between the source and target objects, by which each point on the surface of the source object maps to a point on the surface of the target object. Having established this correspondence, we can generate a smooth transition by interpolating corresponding points from the source to the target positions. We handle 3D geometric metamorphosis between two objects represented as triangular meshes. To improve the quality of 3D morphing between two triangular meshes, we particularly consider the following two issues:. Metamorphosis of arbitrary meshes. In general, the two meshes have different topological structures, that is, vertex/edge/face graph structures. Moreover, meshes may have complicated geometric shapes such as nonconvex regions. We must establish surface correspondence between two such different or complicated meshes.. Metamorphosis with user control. We need an appropriate method for the user to control surface correspondence. For example, the user may wish to map a bunny s nose onto a tiger s nose. We need a method to incorporate such user-specified surface correspondence with minimum user intervention. We can address the first issue using our recently proposed method based on harmonic mapping. In our earlier work, we developed each of the two meshes Takashi Kanai Institute of Physical and Chemical Research, Japan Hiromasa Suzuki and Fumihiko Kimura University of Tokyo topologically equivalent to a disk and having geometrically complicated shapes into a D unit circle by harmonic mapping. 3 Combining those two embeddings produces surface correspondence between the two meshes. However, this method doesn t consider the second issue: how to let the user control surface correspondence. In this article we develop an effective method for 3D morphing between two arbitrary meshes of the same topology. We extend our previously proposed method to achieve user control of surface correspondence. Background First, we begin with a problem statement, as follows. Then we consider related work and its relevance to our goal. Problem statement We deal with 3D morphing between two topologically equivalent, two-manifold, arbitrary meshes, from the source mesh M to the target mesh M. A mesh M refers to a piecewise linear surface consisting of a set of triangular polygons. A mesh consists of two realizations: topological realization K is a vertex(v)/edge(e)/face(f) graph structure, and geometric realization V is a set of vertex coordinates V = {v, v,, v n} R 3 (3D real space). The mesh can be arbitrary, that is, no special restrictions are imposed on those realizations. We can also handle a mesh with boundaries. A boundary of a mesh M is a closed loop consisting of a set of edges, each having only one neighbor face. We call two meshes topologically equivalent if a continuous, invertible, one-to-one mapping between points on the two meshes exists. We refer to such a mapping as homeomorphism. We call a mesh Euler-valid if its topology obeys Euler s formula: n v n e + n f = g where n v, n e, and n f denote the number of vertices, edges, and faces, respectively, and g denotes the genus of a mesh. If two meshes are topologically equivalent, the 6 March/April /00/$ IEEE

2 left-side members of Euler s formula (called Euler s characteristic) are equal for both meshes. Here, we assume that g equals zero. We discuss the extendability to the case for non-zero g later, in the Results section. In this article, 3D metamorphosis means to interpolate two given meshes M and M. Its more precise definition appears later. Related work Techniques known as metamorphosis or morphing were originally referred to as image metamorphosis or image morphing. These popular techniques create a smooth transition between two images by approximately interpolating both color information and geometric shapes (for details, see Gomes et al. s survey 4 ). To establish metamorphosis between two 3D objects using image-based techniques requires at least two images, one displaying one object and another displaying the other object. Whenever viewing or lighting parameters change, all processes of D morphing must be recomputed. Direct geometric interpolation of two 3D objects 3D metamorphosis (or morphing) is independent of such viewing or lighting parameters. Therefore, it has become an area of active research in recent years. 4,5 Approaches for establishing 3D metamorphosis divide into two categories: volumetric and mesh-based. Volumetric metamorphosis. One class of 3D metamorphosis algorithms deals with sampled or volumetric representation of the objects. Hughes 6 proposed transforming objects into the Fourier domain and then interpolating low frequencies over time while slowly adding in the high frequencies, thus minimizing the object distortion caused by the high-frequency components. Intermediate objects are obtained from the inverse transform of the interpolated results. Cheung et al. 7 proposed a similar method for use in simulating a metal-forming process. A wavelet-based approach proposed by He et al. 8 for use instead of Fourier transformation would further improve performance. Lerios et al. 9 extended Beier and Neely s feature-based image metamorphosis method 0 to volumetric representation. Two objects are translated into volumes, and each corresponding pair of volume values is interpolated according to the primitive shapes, defined by the user. Lucas et al. proposed a very similar method, using a 3D line set directly for controlling interpolation between two volumetric objects. Cohen-Or et al. proposed an approach based on the distance field interpolation (DFI) method. This approach divides into two phases, warp and interpolation. In the warp phase, each object is first decomposed into contour-level volume sets, then at each level a volume space is deformed so that two sets of feature points, extracted by the user, are coincident with each other. In the interpolation phase, volumes are transformed to a distance field, and linear interpolation is established between the two distance fields deformed in the previous phase. These methods can deal with the topological changes in the surface mesh during transformation. It s also possible to apply these methods for meshes if you transform them to volumes. However, the intermediate shape is represented as a volume, and obtaining meshes requires extraction to an isosurface by such means as the marching cubes method. 3 Moreover, these objects may not be homogeneous with their original shapes. Mesh-based metamorphosis. Another class of algorithms deals with polyhedron-based objects. In this class, an approach to the transformation from M to M usually involves two problem steps. The first step establishes a correspondence from each point of M to a point of M. Using this correspondence, the next step creates a series of intermediate objects by interpolating corresponding points from their original positions on M to the target positions on M. These steps are called the correspondence problem and the interpolation problem, respectively. Our approach falls in this class and follows these steps. We primarily discuss the former issue. Kent et al.,4 offered an algorithm for morphing two polyhedral objects topologically equivalent to a sphere (g = 0). First, two objects are mapped onto a sphere and merged by clipping one sphere to another. Then, a new shape is created that has combined graph information (vertices, edges, and faces) for the two objects. However, the technique described 4 applies only to star-shaped polyhedral objects. It was further extended to other types of objects such as tubular (swept or revolutionary) objects, which involve objects reconstructed from cylindrical scan-type range images. To establish correspondences over these types of objects, the user must specify skeletons along the center of the contour of an object and project it to a convex-hull as an intermediate object. This approach can handle various types of objects, but it seems rather troublesome for the user to specify such skeletons so as to establish correspondences especially for geometrically complicated objects. Parent 5 presented a recursive algorithm that automatically finds a correspondence between the surfaces of two objects of equivalent topologies. This algorithm uses several sheets to cover the whole object. The two objects must have an equal number of sheets, and sheet boundaries must consist of the object s edges. Objects of genus g are automatically subdivided into (g+) sheets, with each sheet recursively subdivided down to the face level. This approach completely establishes vertex-to-vertex interpolations and thus deformations between the two objects. Delingette et al. 6 used a simplex mesh. They proposed basic mesh operations to alter shape topologies, thus restricting their method to this type of mesh. The interpolation is performed using a physically based deformation approach in concert with a method derived from a data-fitting process. The process, however, seems timeconsuming. DeCarlo and Gallier 7 described another framework for the metamorphosis between two objects with different topologies, for example, the metamorphosis from a sphere to a torus. This method has a methodology similar to ours. To make the surface correspondence between two objects with different topologies, each of two meshes is divided into a set of submeshes accord- IEEE Computer Graphics and Applications 63

3 Feature Article ing to a set of the user-specified triangular or quadrilateral reference faces, called a control mesh. Metamorphosis between two objects with different topologies results from ensuring that each triangular face in one control mesh changes to the corresponding quadrilateral face in the other. One difference between DeCarlo s method and ours is that our approach establishes correspondences more easily for the user. For example, we impose no restriction on the number of edges of the control mesh. Another difference involves the relationship between subdividing meshes and parameterizing each submesh. DeCarlo and Gallier s method uses Kent et al. s parametrization, which limits the type of meshes. In our method, the user need not consider whether or not each submesh can be parameterized successfully. Thus, our method presents a more sophisticated approach for the user to establish correspondences. Recently, Gregory et al. presented a similar approach, 8 treating the metamorphosis between two objects with the same topological types. First the user specifies a network of curves, called a feature net, on each mesh. Each curve consists of vertices and edges of the mesh. The mesh is divided into several submeshes according to this net. Then area-preserving mapping establishes surface correspondences between each submesh of two objects. The user can generate desirable metamorphoses based on local refinements of a feature net. One difference between Gregory et al. s method and our method is an approach for cutting the mesh to divide into submeshes. We use an approximate geodesic curve on the mesh, whereas they use the shortest path of the vertices/edges graph on the mesh. The other difference is the parametrization of meshes. We use a harmonic mapping for parameterization, while Gregory et al. proposed an alternative parameterization approach called area-preserving mapping. We discuss these issues later in this article. Surface correspondence problem In this section we overview a central part of constructing the surface correspondence we proposed earlier. Our basic idea is to construct the surface correspondence by combining two meshes in a common domain. First, we embed each of the two meshes in an n-gonal region lying on a unit circle in R by harmonic mapping as the parametrization of the mesh. Second, those two n-gonal embeddings are combined with each other for the construction of surface correspondences. Third, another mesh F c is created for interpolation based on these surface correspondences. F c has the merged graph structure of F and F so that it can represent both shapes by alternating the vertex positions. Finally, by smoothly transitioning the vertex positions of F c from positions of F to those of F, we achieve 3D metamorphosis. Harmonic mapping To achieve the surface correspondence between two meshes, we prepare H R in the D unit circle for embedding. We map a 3D topological disk F M to H, where F is a subset of M and is homeomorphic to the topological disk. Harmonic mapping, h: F H, is one of the mappings that realizes such an embedding. Note that F and H have the same graph structure of vertices, edges, and faces, and thus have a one-to-one correspondence between their vertices, edges, and faces. Note that a polyhedron M is usually homeomorphic to the topological sphere or torus of genus n. However, by inserting proper cuts to M, we can divide M to a set of F, each of which is homeomorphic to the disk. We describe our approach for cutting meshes in the section Partitioning meshes. To construct this mapping, we adopt a method proposed by Eck et al. 3 Strictly speaking, their mapping method is a piecewise linear approximation method for realizing embedding from F to H. Our method for creating an embedding H from F divides into two steps:. boundary mapping g: F H where F is the boundary of F and H is the boundary of H, and. harmonic mapping h, which maps internal vertices of F into H. At the boundary-mapping step, n vertices are chosen from F and positioned to a regular n-gon on the unit circle in R whose center lies at the origin. We call such a vertex a corresponding vertex (CV) (see the section Partition control mesh ). The rest of the vertices in F sit on the edges of the n-gon in the same order and in such a way that the ratios of the mapped edge lengths in H equal those of their original edge lengths in F. At the harmonic mapping step, the positions of the rest of the vertices are calculated to minimize a total energy function E. E can be a sum of the elastic energy of springs placed along the edges of H: () () where V i, V j denote D positions of the two end vertices of an edge {v H i, v } in H and l i,j denotes the length of edge {v F v F E = κ i, j Vi Vj { Vi, Vj} H l l l / A + l + l l / A κ i, j = + i, k j, k i, j i, k j, k i, j i, j, k i, j, k j } as measured in F. A i,j,k, A i,j,k denote the areas of faces {vi F, vj F,vk F }, {vi F, vj F,vk F } as measured in F respectively. An unique solution that minimizes E comes from solving a linear system E = 0, where E is the gradient of E over V, because E is a positive quadratic function over V. We order x, y components of V into a N-dimensional vector V: V (V.x, V.y, V.x, V.y,, V N.x, V N.y) (3) where N denotes the number of vertices in H. E is a quadratic function of every component in V, so it can be represented as the quadratic form E = V T HV. Then the gradient of E can be expressed as E = E/ V. As just mentioned, vertices on the boundary are fixed. i, 64 March/April 000

4 y V j H H F δf v i F V i H x An embedding H from hand model F. F, a closed boundary of F, consists of 36 vertices, of which three are corresponding vertices. V k H v k F v j F H H H c Combining two embeddings generates H c. It has a combined graph structure of H and H. To solve a linear system, we first divide a variable vector V into two parts: a free part V h and a fixed part V g; the constant matrix H is also divided accordingly. Thus, the energy function E is rewritten as follows: E T h = [ ] V V (4) Since this energy function remains constant for a fixed part, we only have to solve a linear equation for the free parts V h to minimize E: = E E = H hhvh + H hgvg = 0 V h g T H H hh gh H hg h gg V H Vg (5) Note that in H hh a non-diagonal element at the ith row and jth column is non-zero only when there exists some edge connecting vertices related to the ith and jth column. Since the number of edges connecting to a vertex is much less than the total number of vertices of H, H hh is a sparse matrix. We use a biconjugate gradient method 9 to solve a sparse linear system in Equation 5. Its computation time is approximately O(n). Figure illustrates an example of embedding. An original 3D hand model F(nv=,44, F nf=4,760) F is topologically equivalent to a disk and has a closed boundary F along its wrist. It has 36 vertices. Boundary mapping g positions the three CVs {vi F, vj F,vk} F in F (the big spheres in Figure ) on the regular triangle as shown. The rest of the 33 vertices of F (the small spheres in Figure ) are positioned on the edges of the triangle. Internal vertices in F are mapped into the triangle by harmonic mapping h. The result shows that fingers which include concave regions develop into a disk without self-intersections. The computation time for this example is about five seconds on a 50-MHz MIPS R4400. Combining two embeddings We combine two embeddings H and H to generate a combined embedding H c, as shown in Figure. H c has a combined graph structure of H and H. Surface correspondence between H and H and thus between F and F can be established by using H c. An algorithm for generating H c consists of the following four steps:. Investigate intersections between edges of H and H.. Sort intersection points to split edges of H and H for generating vertices and edges of H c. 3. Create a clockwise edge cycle at each vertex in H c. 4. Create faces of H c. We use Kent et al. s algorithms to implement steps and. Step uses topological information generated in step. When an intersection point is found in step, we obtain information about which adjacent faces the inter- IEEE Computer Graphics and Applications 65

5 Feature Article 3 (a) Four intersecting edges create an edge cycle at an intersection point. (b) Faces of H c are created by vertices, edges, and edge cycles along a vertex in H c. (a) Intersection point (b) secting edge crosses. We record this information for sorting intersection points along edges to be split. The vertices and edges of H c are generated in step. The vertices of H c consist of the vertices of H and H (original type) and intersection points between the edges of H and H (split type). The edges of H c consist of the edges of H and H, some of which are subdivided by intersection points. At step 3 a clockwise edge cycle is generated at each vertex of H c for creating faces in step 4. This is carried out according to the vertex type, original or split. An original vertex inherits its edge cycle from its original edge cycle of H or H. For a split vertex, its edge cycle is generated for intersection edges (Figure 3a) by using links to the four intersecting edges. These links are set to the vertices at step. In step 4 faces of H c are created with those vertices, edges, and clockwise edge cycles (Figure 3b). The following traversal method creates faces of H c : We start from some vertex of H c and traverse one of its incident edges. Then we arrive at the other vertex of that edge and choose the next edge connected counterclockwise by using the edge cycle information. We repeat these steps until we arrive at the start vertex. Consequently, a counterclockwise vertex loop is identified to generate a face. The faces this method creates may not be triangular faces. Therefore, we finally triangulate those faces. The subdivision is straightforward because the faces are all convex. Interpolation mesh For an interpolation between F and F, it is not enough to create H c. We need a mesh for interpolating between the two meshes. Interpolation mesh F c has the same graph structure as H c. We first determine the geometric realization of F c for F and call it F c. The idea here is to let F c take on the same shape as F. While the graph structure of F c differs from that of F, we can make the total shape of F c the same as F. We also define F c, which is the geometric realization of F c for F. To do this, we must determine v Fc, the 3D coordinates of F c in F. Some of the vertices of F c come from F. We define the positions of those vertices as the original positions in F. The other vertices either come from F or are generated by edge intersection in step. We have to compute the 3D coordinates for those vertices (see Figure 4). Each of the vertices coming from F corresponds to a vertex in F, which is mapped to a v H in H. Since H and H are just overlapping, a triangle face of H involving v H exists. We compute the barycentric coordinates of v H in this triangle. In this figure, f H ={v H α, v H β, v H γ } denotes the face involving vertex v H, and (α, β, γ) (α+β+γ = ) denotes its barycentric coordinate. v F α, v F β, v F γ denotes corresponding 3D coordinates of vertices v H α, v H β, v H γ in F. We calculate coordinates v Fc for v F by F c F F F α β γ v = αv + βv + γv For each vertex generated by edge intersection, we obtain its v Fc from the barycentric coordinates of its corresponding V Hc in a similar manner as those coming from F. We can compute v Fc in the same way as v Fc. Metamorphosis over F c Now we can represent two different shapes of F and F in a new mesh structure of F c. While F c and F c have the same shape as F and F, they also have the same graph structure as F c. So by interpolating vertex positions from v Fc to v Fc, F c gradually changes its shape to F c. Applying a simple linear interpolation method to the vertex positions realizes the 3D metamorphosis from F to F. For interpolation parameter t(0 t ), v Fc (t) can be computed by using two 3D coordinates v Fc (t),v Fc (t) as follows: 4 Calculating 3D coordinates of vertices in F c from the barycentric coordinates in the face involving a vertex. F F H, H v F v F β v F α v F c v F γ V H β f H V H α V H (α, β, γ) V H γ 66 March/April 000

6 ( ) + F c F c F c v ( t ) = t v tv (7) F c represents an intermediate shape at t with the geometric realization v Fc (t). Surface correspondence with user control Here, we extend the method for establishing surface correspondence between the two M and M meshes just discussed, so that (minimum) user control of correspondence can be achieved. Though we can think of many kinds of user control, we focus only on control of vertex correspondence. The vertex correspondence is a set of vertices pairs, one from the source mesh and the other from the target. We call this pair the corresponding vertex pair. CVP is constrained so that the source vertex is transferred to the target vertex. It can be regarded as the most primitive control method. One straightforward way to incorporate such constraints is to add constraint equations to Equation 5. For instance, for v F to correspond with v F, their images of harmonic mapping, v H and v H, must be coincident. We could add the contraint equation of V H =V H to Equation 5 to achieve the vertex correspondence. Unfortunately, our experiments showed that this method does not work well. If we solve Equation 5 with the condition that several internal vertices of H are on the fixed constraint, an undesirable self-intersection usually occurs along fixed vertices. Instead, we take another approach. We divide the mesh into several regions named tile and establish surface correspondence for each tile. By allocating such corresponding vertices to the boundaries of those tiles, we automatically satisfy the vertex correspondence. Figure 5 is an overview of our proposed method. The process consists of user definition and system calculation. In the user definition process, the user specifies corresponding vertex CV for the control of a desired interpolation. Using CVs, the user also defines the partition Meshes M M User definition Vertex correspondence Partition control meshes C C Interpolation meshes M c control meshes (PCMs) C and C. In the system calculation process, each of the two M and M meshes is partitioned by grouping its faces according to C and C to obtain ˆM and ˆM : c c n f n f U j U j j j Mˆ = F, Mˆ = F System calculation H j H j Tiles Combined embeddings (8) We apply the method discussed in the Surface correspondence problem section to each pair of F j ˆM and F j ˆM. Merging partial interpolation meshes F c j creates interpolation mesh M c. Partition control mesh Figure 6 shows the basic elements of this approach. In Figure 6a the user first selects pairs of CVs, one from each of the two meshes M and M to define the CVP. F j H c j Partial interpolation mesh F c j F j Embeddings H j 5 An overview of our method for 3D metamorphosis between two meshes M and M with user control of surface correspondence. (a) (b) (c) (d) (e) (f) 6 Surface correspondence controls: (a)-(c) and (d)-(f) are different controls specified by the user. (a) shows five CVPs, the green spheres, while (d) shows 6 CVPs. (b) shows PCMs C,C with five vertices, nine edges, the yellow pipes, and six faces. (e) shows PCMs C,C with 6 vertices, 38 edges, and 4 faces. (c) and (f) show partitioned meshes ˆM and ˆM with red lines indicating the shortest paths. IEEE Computer Graphics and Applications 67

7 Feature Article Shortest path 7 (a) Subdivision of faces of M on a shortest path. (b) Three patterns for a face subdivision. (a) (b) Next, as shown in Figure 6b, the user connects CVs to create C and C PCMs. By sequentially picking CVs to form a vertex loop, we define the faces of PCMs. The faces are not necessarily triangular. The directions of their vertex loops must be the same as those of the faces on the original meshes (in a counterclockwise direction). C (C ) is designed to be topologically equivalent to its original mesh M (M ). C and C must have the same graph structure with only the 3D coordinates of the vertices differing. As Figure 6c and 6f show, according to C (C ), the mesh M (M ) is partitioned into tiles. For each face of C (C ), one tile is defined. How much control of surface correspondence is necessary depends on the number of CVPs. Their minimum number is determined by the parameterization we adopt. For the mesh topologically equivalent to a sphere, we need at least two faces in a PCM to divide a topological sphere into two topological disks. As the minimum component of such a disk is a triangle, we need at least three CVPs per each face of a PCM. If the number of CVPs is only three, the user must define two faces that have the same three vertices. In our current implementation, we added a restriction that more than four CVPs are needed to define a tetrahedral PCM. Such a definition seems useful for the user to understand a PCM intuitively. Partitioning meshes According to the topology of PCMs C and C, M and M are automatically divided into tiles F j ˆM and F j ˆM (j = n c f, where n F f =n c f )respectively. The method for partitioning a mesh consists of the following three steps:. Each edge of C is projected onto its original mesh M to generate a path on the mesh so that its two end points are CVs.. Each face of M over which those paths cross is subdivided into triangular faces. 3. Applying a mesh-grouping algorithm gathers the faces of M as a tile. Projecting edges of C to M. One approach to cut the mesh that is, to project edges of C onto M is to use a vertex-edge graph of M and calculate a shortest path on a graph as described in Gregory et al. 8 However, our experiment showed that a set of such paths composed by original vertices and edges of M causes some problems. First, it usually occurs that two close paths overlap each other. Moreover, it is quite a hard task for the user to specify vertices so they do not overlap. Especially important is that the finer we create a PCM, the more frequently overlapping occurs. We regard the projecting edges of C onto M as a calculation of the shortest path (also called a geodesic curve) between two vertices of M. However, in general, finding the exact shortest path between two vertices on a mesh is a difficult problem. 0 For example, Chen et al. proposed a method for an exact solution of this problem in O(n ) time. They based their method on transforming the faces of meshes onto a plane. As 3D rotations are used, numerical errors for the paths or geometric structures can occur. Instead, we use a method for calculating an approximate shortest path between two vertices. Before the calculation, intermediate edges are created on the faces of M. First, several intermediate vertices (called a Steiner point) are created on the edges of M. The number of added vertices per edge is determined according to its length so that more vertices are added to a longer edge. Now each face f M i (i= n M f ) of M has intermediate vertices on its edges in addition to the original vertices. From the total set of these vertices, we choose every pair of vertices v a, v b and create an intermediate edge for the face if the pair satisfies either of two conditions: v a and v b are on the different edges, or v a and v b are on the same edge and adjacent. Approximate shortest paths are calculated based on a graph composed of vertices and edges of M and intermediate vertices and edges using Dijkstra s algorithm March/April 000

8 (Edge) vertex next HalfEdge mate face Face vertex next start_halfedge Vertex end_vertex PathEdge HalfEdge right_halfedge left_halfedge start_vertex Vertex (a) (b) (c) A path edge The direction of a shortest path 8 (a) Half-edge data structure. (b) Data structure of a path edge for grouping meshes. (c) Create directions of path edges along a tile. The computation time for this method is approximately O(n log n). This method does not compute the shortest path exactly, but the difference is too small to recognize visually. Moreover, compared to Chen et al. s method that calculates real paths, this method is not only fast but also reduces the accumulation of numerical errors caused from frequent 3D rotation computations. Figures 6c and 6f show the calculated shortest paths. In all approaches (ours included) cutting the mesh based on calculating shortest paths does not always hold up well in all situations. For an extreme example, the number of shortest paths between a north pole and a south pole of a sphere clearly are infinite. A path far from the desirable one for the user can be generated, if the geodesic distance between the two user-selected vertices of a mesh is long. In our implementation, if an undesirable path is generated, we avoid such inconveniences by specifying more CVPs along failure paths. This recomputes shorter distance paths. Subdivision of faces in M. Next, we subdivide into triangular faces the faces that these shortest paths cross (Figure 7a). Such faces can be classified into three subdivision patterns, as shown in Figure 7b. Subdivision is needed for the middle and right cases. Subdivided faces are not always triangular faces, and those faces must be triangulated. The triangulation is trivial because those faces are planar convex quadrilaterals. We repeat this process for each edge of C. At each repetition, we recomputed the intermediate edges of those subdivided faces. After the process is finished, the intermediate edges and vertices that do not contribute to the paths are removed. Mesh-grouping algorithm. After inserting all the shortest paths according to the PCM s edges and subdividing/triangulating faces, we define the tiles bounded by some shortest paths. A tile is a set of continuous faces and is thus obtained by grouping faces. Here we describe our mesh-grouping algorithm. Before applying the mesh-grouping algorithm, we have to prepare some data structures. We represent a mesh M with a half-edge data structure 4 (See Figure 8a). In addition to this structure, we also define a data structure for the edges of the shortest path and call them path edges (Figure 8b). We define edge direction as the direction from a start vertex to an end vertex. It also has two links to left_halfedge and to right_halfedge based on this direction. In addition, we define a link from a path edge to each corresponding half-edge. As shown in Figure 8c, a shortest path is generated for an edge of C. For a face of C we can think of a loop of edges that turns around a tile in a counterclockwise direction. Referring to these edge directions, we can determine the directions of the shortest paths. We also set a direction for each path edge to the same direction as the direction of the path. Then, the left half edges of those path edges are subject to grouping. Figure 9 shows a pseudocode of our mesh-grouping algorithm called GroupingMesh. This algorithm can partition faces into tiles and attach a certain identifier id to the faces in the same tile. In GroupingMesh, the search of grouping faces begins from the left face of a path edge in a tile. For this face, recursive function GroupingFace is executed. GroupingFace traces the half-edges of a face. GroupingFace is recursively executed to a face that the mate of a halfedge has. The traced face is marked id. This algorithm totally traces all faces in H once. At the worst case, all half-edges of each face are traced. How- void GroupingMesh (Mesh M, Id id) { e one of path edges of group id; f e.left_halfedge.face; GroupingFace (f, id); } void GroupingFace (Face f, Id id) { f.group_id id; he f.start_halfedge; do if ((he.mate nil) && (he.pathedge = nil)) nf he.mate.face ; if (nf.group_id id) GroupingFace (nf, id); } he he.next ; while (he f.start_halfedge); } 9 Pseudocode of the meshgrouping algorithm. IEEE Computer Graphics and Applications 69

9 Feature Article 0 Creating embeddings of tiles and. v a V b V c v c v b V a V b V c v c v a v b ever, the number of half-edges in a face is always three because a face is a triangle. It is quite smaller than the number of faces of a mesh in general. Thus, the execution time of this greedy-like algorithm is approximately O(n). In practice, the partitioning of M and M occurs separately. The faces of M and M that have the same id are stored as a tile F id and F id respectively. Vertices and edges that consist of faces of a tile are also stored together. Vertices that consist of CVP and path edges belong to more than two tiles. Generating a partial interpolation mesh We apply our method for each pair of tiles F j and F j of partitioned meshes ˆM and ˆM (Figure 0). First, we create H j and H j by developing F j and F j into the D unit circle respectively. F j and F j are mapped onto the Table. Statistics for 3D metamorphosis examples. T s, T h, and T c denote the calculation of shortest paths, of embeddings, and of combining two embeddings, respectively. All of the time data were collected on a 50-MHz MIPS R4400. Examples Figure a Figure b Figure 3 Figure 4 Figure 5 M M n M v , n M f , n M v 54 54,76, n M f ,3 4, C nv C ne C nf C M c n Mc v,865,30 9,74 77,69 4,965 n Mc f 3,76 4,636 9,65 54,534 9,930 Time T s (seconds) T h T c V a edges of the n-gonal region on the unit circle. CVs in F j and F j are mapped into the same vertices of the n-gon. Next, those two embeddings are combined, creating a combined embedding Hj. c Third, a partial interpolation mesh c is created. We compute 3D coordinates of vertices in c for F j and F j from barycentric coordinates of the face, which involves the vertex of H j or H j. Finally, we create the total interpolation mesh M c by merging all the. c CVs and path edges belonging to several partitions are unified. Surface correspondence for meshes with boundaries Our proposed method can also apply to the mesh M that has closed boundaries M provided that we define proper CVPs, PCMs, and shortest paths. The user must create more than three CVs on a closed boundary and also an edge loop of C using those vertices along the boundary. Moreover, when the edges of C both of whose end vertices consist of CVs on a closed boundary are projected to M, these paths must consist of part of the boundary edges. To create those paths, we simply search the boundary edges of M. Results We implemented a prototype system on a graphics workstation, an SGI Indigo High Impact (MIPS R4400, 50-MHz CPU, 8 Mbytes of memory). We examined several different examples using our proposed method for 3D metamorphosis. Table summarizes the number of vertices, faces, and three computation times for those examples. First, we used two different controls of 3D metamorphosis between the bunny s head model and tiger s head model, as shown in Figure 6. These two meshes are topologically equivalent to a sphere. Figure 6a through 6c shows an example of the control with only 5 CVPs and a PCM that has 6 faces. Figure a illustrates the results in the middle of an interpolation, the tiger s left ear grows in the middle of the bunny s ear! Insufficient control causes such a poor result. Figure 6d through 6f shows an example of finer control using 6 CVPs and a PCM of 4 faces. To interpolate between the bunny s ear and the tiger s ear, we specify 4 CVPs around the base of both ears. Figure b illustrates the results, where we achieved more sophisticated control of the interpolation. Next, we examined a 3D metamorphosis between two car bodies, from the Delorean model to the Porsche 9 Carrera model, as shown in Figure a. These two meshes are topologically equivalent to a disk. Figure b shows an example of the control with 40 CVPs and a PCM of 9 faces. Figure 3a illustrates the result of the metamorphosis. The tires aren t included in 70 March/April 000

10 (a) Result of metamorphosis from the bunny s head model to the tiger s head model. (a) and (b) indicate the results of metamorphosis with the user control shown in Figure 6a through 6c and in Figure 6d through 6f, respectively. In the upper right of (a), the tiger s ear sticks out of the middle of the bunny s ear. Refining the PCM as shown in Figure 6e removes this undesired deformation (b). (b) (a) Metamorphosis from the Delorean model to the Porsche 9 Carrera model. (a) Original meshes M and M. (b) PCMs C and C (40 vertices, 68 edges, and 9 faces). (b) (a) 3 Result of metamorphosis from the Delorean model to the Porsche 9 Carrera model. (a) Views of the whole shape. (b) Magnifications of a headlight region. (c) Magnifications of a door mirror region. (b) (c) IEEE Computer Graphics and Applications 7

11 Feature Article 4 Metamorphosis from the star model to the pai model, both of which have large faces. (a) Original meshes M and M. (b) PCMs C and C (8 vertices, 55 edges, and 9 faces). (c) Result of metamorphosis. (a) (c) 5 Result of metamorphosis from the torus model to the body of the bottle model as a simple example of the nonzero genus (g = ) objects. We defined 7 CVPs and a PCM (7 vertices, 35 edges, and 8 faces) for control of the surface correspondence. (b) the interpolation objects; we translated and scaled them by offline editing. Figure 3b and 3c show magnified results of the metamorphed right headlight and rightdoor mirror. For an interpolation of both headlights, we specified 4 CVs at the rims of the shapes. Figure 3b shows successful interpolation of the metamorphosis between different shapes. For the interpolation between the mirror and the flat shape, we specified 4 CVs at the base of the mirror and at the corners of a rectangular area of the other flat shape. Figure 3c shows that the mirror grows from a flat shape. To test the robustness of our approach, we examined a metamorphosis between two large meshes. Figure 4a shows a star model and a pai (a karate fighter) model. Both models are topologically equivalent to a sphere and have more than 0,000 polygons. We created the star model with a commercial modeling system, while the pai model was reconstructed from range images scanned by a 3D digitizer. Figure 4b denotes an example of the control by 8 CVPs and 9 faces of a PCM, which involves nontriangular faces. Figure 4c shows the result of the metamorphosis. The three examples discussed match the case where the genus of a mesh equals zero (g = 0) topologically equivalent to a sphere (which may include boundaries). But it s also possible to show the result of metamorphosis between the torus model and the bottle model. The genus of these two models equals (g = ). We defined a PCM that has 7 CVPs and 8 faces. In addition to the homeomorphism condition, those two models must be tamely homeomorphic. 5 M is tamely homeomorphic to M if there exists a homeomorphism of E 3 onto itself that carries M onto M. This condition relates to mesh knots. Moreover, we have to define proper PCMs. Although we cannot at this moment demonstrate the complete condition of the proper PCMs for transforming g 0 objects, we can say at least from Figure 5 that the PCMs must cover the object s holes. Discussion In evaluating our method, we considered robustness, quality of the metamorphosis, and performance, as follows. Robustness One part of our approach for which we should consider the robustness is the generation of embeddings. As described elsewhere, 3 the parameterization based on harmonic mapping for generating embeddings occasionally doesn t work well if the number of faces is large. In our implementation, the number of faces to be computed for the parameterization is much smaller than that of the original mesh, because a PCM partitions it to a set of tiles. In Figure 4, the average number of faces in each tile is approximately,000; the maximum is less than 3,000. In all of the tiles for generating embeddings, a self-intersection occurs only at a tile having the largest number of faces. In our current approach, if such a selfintersection occurs, the algorithm checks it before proceeding to the next step and avoid it by recomputing an embedding with κ i,j in Equation set as a uniform constant. It produces a good result. 3 (Recently proposed methods 6,7 can parameterize robustly and fast.) The other geometric algorithm in our method for which we should ensure robustness is the combination of two embeddings. Kent et al. pointed out that for large meshes, small numerical inaccuracies in the geometric computations cause construction of the combined embedding to fail. Our algorithm only needs to judge an intersection between two edges in the D unit circle essential for the combined embedding construction, while Kent et al. s construction algorithm needs to judge intersections between two arcs. We think it s also possible to apply an exact-arithmetic approach such as in Sugihara and Iri. 8 Even in our implementation for combining embeddings using double floating-point calculations, such numerical inconsistencies don t occur for all our examples. Quality Seen from the viewpoint of the correspondence, we can divide the main components of our method having significant influences on the metamorphosis quality into two different levels: user-specified vertex correspondence and surface correspondence. The latter depends heavily on the parameterization. 7 March/April 000

12 In the vertex correspondence level, we can improve the quality of correspondences by adding CVPs or by suitably rearranging CVs on the mesh. Our experiment indicates that we can establish a rough correspondence between each feature part of two original meshes by specifying only several (three to four) vertices along the boundary of such a feature part (the base of the ear or the shoulder joint, for example). A user wishing more sophisticated correspondences should add additional CVPs in the internal region of a feature part (the top of the ear, an elbow joint, or the wrist) or along a feature part s boundary. However, too many CVPs densely specified in a certain region don t improve the quality, they only require extra time-consuming work. Moreover, it seems that a larger number of CVPs aren t always needed for a larger number of faces in the original mesh. If anything, the number of features in one mesh mainly determines the number of CVPs. The more complicated shapes need a larger number of CVPs to establish a high-quality correspondence. Our current strategy in creating the PCM follows. First, the user creates a rough PCM with as small a number of faces as possible. Next, a metamorphosis result from a current PCM is displayed. CVPs are added along a part of a PCM, causing a visually poor interpolation. Finally, faces of a PCM that involve added CVPs are subdivided. These operations repeat until the user achieves a satisfactory result. In the surface correspondence level, the parameterization based on harmonic mapping minimizes the metric distortion of a triangle or preserves the aspect ratio of a triangle, but doesn t preserve the area. Because of this, a large number of triangles can become crowded in a narrow region (for example, fingers in Figure ). We recognize that this property causes the wrong effect the surface correspondence of a tile tends to be unbalanced within a particular region. (Gregory et al. proposed an alternative parameterization approach called area-preserving mapping. 8 ) In our method, we can avoid such an imbalanced parameterization by specifying additional CVPs in the corresponding region. For the shape in Figure, specifying CVPs onto the base of a finger and also onto a second joint, or onto the top, offers a better way to establish a uniformly sampled surface correspondence. Performance For users, the performance achieved by specifying CVPs or by creating a PCM depends largely on that of the graphics display and thus on the number of faces in the original mesh. The specification of CVPs itself is not a difficult task because the user need only pick vertices on the mesh. Moreover, the user picks CVPs sequentially to create a PCM while looking at the original mesh, so creating a PCM isn t a hard task either. Finally, the user only needs to create a PCM for one of two original meshes because a vertex of a PCM (CVP) corresponds to each vertex of two meshes. In our experiment with the prototype system, it took several minutes to create the PCM in Figure 6b and 6e. Even the PCM in Figure 4b for large meshes can be created within 30 minutes. In this example, a bottleneck is the time needed for displaying the original mesh. From the user s point of view, two issues should be taken into consideration to determine whether our approach for creating a PCM really proves useful. First, it may seem a rather cumbersome undertaking, since the user must specify not only CVPs but also a PCM. We think, however, that the work needed is determined case by case. Creating a PCM plays an important role for the grouping of meshes used in the surface correspondence. When a user wants to establish the surface correspondence between a feature region of one mesh to a region of the other, creating a face in PCM is equivalent to clearly specifying the surface correspondence between two (rough) regions of the feature. We also think that it s both natural and important for the user to understand the surface correspondence intuitively. If the user doesn t need a clear specification such as a region unit, a method for creating such a region automatically from a feature net (proposed by Gregory et al. 8 ) seems useful for reducing the user s tasks. Second, it might seem difficult to select vertices on each mesh so that two sets of submeshes divided by a PCM are topologically equivalent. The more CVPs there are, the clearer this difficulty appears. We could improve the situation to some extent by specifying a certain constraint in our strategy for creating a PCM. In our strategy, once a rough (few CVPs) PCM is created, a constraint can be added for selecting a vertex of M in the next addition of CVPs as follows. When a vertex on a submesh in one mesh is selected, a corresponding vertex selected by the user must be on a corresponding submesh in the other mesh. For the user, this constraint can be a guideline to select a vertex for creating a CVP. On the other hand, the process of creating a rough PCM puts a burden on the user. This issue invites future work. Future work We believe the following future work is essential for improving the quality of these metamorphoses. In our method the number of faces of M c becomes very large. Therefore, it is slow in displaying animation during metamorphosis. To establish real-time animation of metamorphosis, we need a method for decreasing the number of faces without losing the surface features of the original objects. We have primarily discussed the correspondence problem, but we haven t spent much time on the interpolation problem. We noticed that our linear interpolation method can cause some problems (self intersection, shape distortion, and so forth). Some approaches address this problem for D polygon cases 9 and for 3D polyhedron cases. 30 Unfortunately, these prove useful only for cases where two models have quite similar shapes. We hope to find an interpolation algorithm that can work well with our correspondence algorithm. We also think it quite difficult to avoid self-intersections during the animation in any case. However, it seems possible to reduce them or make them unremarkable. In this article, we partitioned the mesh into tiles and applied the interpolation uniformly to all the tiles. Now we are extending the mesh to make nonuniform interpolation, by which each tile is interpolated individually. This gives us more flexibility for deforming the objects shapes. IEEE Computer Graphics and Applications 73

13 Feature Article Acknowledgments Part of this research was supported by the Ookawa Foundation for Information and Telecommunication. The bunny mesh is from the Stanford University Computer Graphics Laboratory. The tiger, Delorean, Porsche 9 Carrera, and bottle models are courtesy of Viewpoint DataLabs. We wish to thank Tetsuya Yamamoto of Toshiba Corp. and Jun Mitani of the University of Tokyo, for help in creating color results. We would like to thank Kinji Odaka and members of the development division, Nabla Inc. Japan, for their useful comments. We would also like to thank all the reviewers for making us aware of references and giving us a lot of useful comments. Some additional materials (images, movies, and references) are available via the Internet: References. J.R. Kent, W.E. Carlson, and R.E. Parent, Shape Transformation for Polyhedral Objects, Proc. Siggraph 9, ACM Press, New York, 99, pp T. Kanai, H. Suzuki, and F. Kimura, Three-Dimensional Geometric Metamorphosis Based on Harmonic Maps, The Visual Computer, Vol. 4, No. 4, 998, pp M. Eck et al., Multiresolution Analysis of Arbitrary Meshes, Proc. Siggraph 95, ACM Press, New York, 995, pp J. Gomes et al., Warping and Morphing of Graphical Objects, Morgan Kaufmann, San Francisco, Calif., F. Lazarus and A. Verroust, Three-Dimensional Metamorphosis: A Survey, The Visual Computer, Vol. 4, No. 8/9, 998, pp J.F. Hughes, Scheduled Fourier Volume Morphing, Proc. Siggraph 9, ACM Press, New York, 99, pp K.K. Cheung, K. Yu, and K. Kui, Volume Invariant Metamorphosis for Solid and Hollow Rolled Shape, Proc. Shape Modeling Int l, IEEE Computer Society Press, Los Alamitos, Calif., 997, pp T. He, S. Wang, and A. Kaufman, Wavelet-Based Volume Morphing, Proc. IEEE Visualization 94, IEEE Computer Society Press, Los Alamitos, Calif., 994, pp A. Lerios, C.D. Garfinkle, and M. Levoy, Feature-Based Volume Metamorphosis, Proc. Siggraph 95, ACM Press, New York, 995, pp T. Beier and S. Neely, Feature-Based Image Metamorphosis, Proc. Siggraph 9, ACM Press, New York, 99, pp L. Lucas, F. Trund, and N. Bonnet, Time-Dependent 3D Data Sets Rendering: An Extension of the Morphing Technique, J. Visualization and Computer Animation, Vol. 7, No. 4, 996, pp D. Cohen-Or, D. Levin, and A. Solomovici, Three-Dimensional Distance Field Metamorphosis, ACM Trans. on Graphics, Vol. 7, No., April 998, pp W.E. Lorensen and H.E. Cline, Marching Cubes: A High- Resolution 3D Surface Construction Algorithm, Proc. Siggraph 87, ACM Press, New York, 987, pp J.R. Kent, R.E. Parent, and W.E. Carlson, Establishing Correspondences by Topological Merging: A New Approach to 3D Shape Transformation, Proc. Graphics Interface, Morgan Kaufmann, San Francisco, Calif., June 99, pp R.E. Parent, Shape Transformation by Boundary Representation Interpolation: A Recursive Approach to Establishing Face Correspondences, J. Visualization and Computer Animation, Vol. 3, No. 4, 99, pp H. Delingette, Y. Watanabe, and Y. Suenaga, Simplex Based Animation, Proc. Computer Animation, N.M. Thalmann and D. Thalmann, eds., Springer-Verlag, Berlin, 993, pp D. DeCarlo and J. Gallier, Topological Evolution of Surfaces, Proc. Graphics Interface, Morgan Kaufmann, San Francisco, Calif., May 996, pp A. Gregory et al., Feature-Based Surface Decomposition for Correspondence and Morphing Between Polyhedra, Proc. Computer Animation, IEEE Computer Society Press, Los Alamitos, Calif., June 998, pp W.H. Press et al., Numerical Recipes in C, Cambridge University Press, Cambridge, UK, J.S.B. Mitchell, D.M. Mount, and C.H. Papadimitriou, The Discrete Geodesic Problem, SIAM J. Computing, Vol. 6, No. 4, 987, pp J. Chen and Y. Han, Shortest Paths on a Polyhedron, Proc. 6th ACM Symp. on Computational Geometry, ACM Press, New York, 990, pp M. Lanthier, A. Maheshwari, and J.-R. Sack, Approximating Weighted Shortest Paths on Polyhedral Surfaces, Proc. 3th ACM Symp. on Computational Geometry, ACM Press, New York, June 997, pp A.V. Aho, J.E. Hopcroft, and J.D. Ullman, Data Structures and Algorithms, Addison-Wesley, Reading, Mass., M. Mäntylä, An Introduction to Solid Modeling, Computer Science Press, Rockville, Md., M. Boyer and N.F. Stewart, Modeling Spaces for Toleranced Objects, Int. J. Robotics Research, Vol. 0, No. 5, 99, pp T. Duchamp et al., Hierarchical Computation of PL Harmonic Embeddings, University of Washington preprint, Seattle, Wash., July 997, 7. A.W.F. Lee et al., MAPS: Multiresolution Adaptive Parameterization of Surfaces, Proc. Siggraph 98, ACM Press, New York, 998, pp K. Sugihara and M. Iri, A Solid Modelling System Free from Topological Inconsistency, J. of Imformation Processing, Vol., No. 4, 989, pp T.W. Sederberg et al., D Shape Blending: An Intrinsic Solution to the Vertex Path Problem, Proc. Siggraph 93, ACM Press, New York, 993, pp Y.M. Sun, W. Wang, and F.Y.L. Chin, Interpolating Polyhedral Models Using Intrinsic Shape Parameters, Proc. Pacific Graphics, World Scientific, Singapore, 995, pp March/April 000

14 Takashi Kanai is a postdoctoral researcher in the Institute of Physical and Chemical Research (Riken). His research interests include geometric modeling and its application to computer-aided design and computer graphics. He received his doctorate in precision machinery engineering from the University of Tokyo in 998. He is a member of the ACM, IEEE Computer Society, JSPE (Japan Society for Precision Engineering), and IPSJ (Information Processing Society of Japan). Hiromasa Suzuki is an associate professor in the Department of Precision Machinery Engineering at the University of Tokyo. His research interests include geometric modeling and physically based modeling, and their applications to mechanical CAD/CAM systems. He received his doctorate in precision machinery engineering from the University of Tokyo in 986. He is a member of the JSPE, JSME (Japan Society for Mechanical Engineering), IEEE, and ACM, among others. Fumihiko Kimura is a professor in the Department of Precision Machinery Engineering at the University of Tokyo. His research interests now include virtual manufacturing, product life cycle engineering, environmentally conscious manufacturing, and preventive maintenance. He is involved in ISO/TC84/SC4 and is a national representative of Interntaion Federation for Information Processing (IFIP) TC5, a member of IFIP WG5. and WG5.3, and a member of International Institution for Production Engineering Research (CIRP). He graduated from the Department of Aeronautics at the University of Tokyo in 968 and received a DrEng degree in 974. Readers may contact Kanai at the Materials Fabrication Laboratory, the Institute of Physical and Chemical Research (Riken), - Hirosawa, Wako-shi, Saitama, , Japan, kanai@postman.riken.go.jp. 000 EDITORIAL CALENDAR LOOK WHAT WE RE FEATURING THIS YEAR IN CiSE! JAN/FEB Top 0 Algorithms of the Millennium Jack Dongarra, dongarra@cs.utk.edu, University of Tennessee, and Francis Sullivan, fran@super.org, IDA Center for Computing Sciences The 0 algorithms that have had the largest influence on the development and practice of science and engineering in the 0th century (also the challenges facing us in the st century). MAR/APR ASCI Centers Robert Voigt, rvoigt@compsci.wm.edu, and Merrell Patrick, mpatr@concentric.net Status report on the five university Centers of Excellence funded in 997 along with their accomplishments. MAY/JUN Earth Systems Science John Rundle, rundle@hopfield.colorado.edu, Colorado Center for Chaos and Complexity The articles featured in this special issue will document the progress being made in modeling and simulating the earth as a planet. JUL/AUG Computing in Medicine Martin S. Weinhous, weinhous@radonc.ccf.org, Cleveland Clinic, and Joseph M. Rosen, joseph.m.rosen@hitchcock.org In medicine, computational methods have let us predict the outcomes of our procedures through mathematical simulation methods. Modeling the human body remains a challenge for computational mathematics. SEP/OCT Computational Chemistry Donald G. Truhlar, truhlar@chem.umn.edu, University of Minnesota, and B. Vincent McKoy, mckoy@its.caltech.edu, California Institute of Technology Overviews of the state of the art in diverse areas of computational chemistry with an emphasis on the computational science aspects. NOV/DEC Materials Science Rajiv Kalia, kalia@bit.csc.lsu.edu, Louisiana State University This issue will focus on the impact of multiscale materials simulations, parallel algorithms and architectures, and immersive and interactive virtual environments on experimental efforts to design novel materials. To submit an article, visit computer.org/cise for author guidelines IEEE Computer Graphics and Applications 75

Metamorphosis of Arbitrary Triangular Meshes

Metamorphosis of Arbitrary Triangular Meshes to appear in IEEE Computer Graphics and Applications Metamorphosis of Arbitrary Triangular Meshes Takashi Kanai Materials Fabrication Laboratory, The Institute of Physical and Chemical Research (RIKEN),

More information

3D Geometric Metamorphosis based on Harmonic Map

3D Geometric Metamorphosis based on Harmonic Map 3D Geometric Metamorphosis based on Harmonic Map Takashi KANAI Hiromasa SUZUKI Fumihiko KIMURA Department of Precision Machinery Engineering The University of Tokyo 7-3-1, Hongo, Bunkyo-ku, Tokyo 113,

More information

Research Article Polygon Morphing and Its Application in Orebody Modeling

Research Article Polygon Morphing and Its Application in Orebody Modeling Mathematical Problems in Engineering Volume 212, Article ID 732365, 9 pages doi:1.1155/212/732365 Research Article Polygon Morphing and Its Application in Orebody Modeling Hacer İlhan and Haşmet Gürçay

More information

Shape Blending Using the Star-Skeleton Representation

Shape Blending Using the Star-Skeleton Representation Shape Blending Using the Star-Skeleton Representation Michal Shapira Ari Rappoport Institute of Computer Science, The Hebrew University of Jerusalem Jerusalem 91904, Israel. arir@cs.huji.ac.il Abstract:

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

3-D Morphing by Direct Mapping between Mesh Models Using Self-organizing Deformable Model

3-D Morphing by Direct Mapping between Mesh Models Using Self-organizing Deformable Model 3-D Morphing by Direct Mapping between Mesh Models Using Self-organizing Deformable Model Shun Matsui Ken ichi Morooka Hiroshi Nagahashi Tokyo Institute of Technology Kyushu University Tokyo Institute

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

Feature-based Surface Decomposition for Correspondence and Morphing between Polyhedra

Feature-based Surface Decomposition for Correspondence and Morphing between Polyhedra Feature-based Surface Decomposition for Correspondence and Morphing between Polyhedra Arthur Gregory, Andrei State, Ming C. Lin, Dinesh Manocha, Mark A. Livingston Department of Computer Science, University

More information

Polyhedron Realization for Shape Transformation

Polyhedron Realization for Shape Transformation Polyhedron Realization for Shape Transformation Avner Shapiro Ayellet Tal Department of Computer Science Department of Electrical Engineering The Hebrew University Technion Israel Institute of Technology

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

Intrinsic Morphing of Compatible Triangulations. VITALY SURAZHSKY CRAIG GOTSMAN

Intrinsic Morphing of Compatible Triangulations. VITALY SURAZHSKY CRAIG GOTSMAN International Journal of Shape Modeling Vol. 9, No. 2 (2003) 191 201 c World Scientific Publishing Company Intrinsic Morphing of Compatible Triangulations VITALY SURAZHSKY vitus@cs.technion.ac.il CRAIG

More information

Mesh Morphing. Ligang Liu Graphics&Geometric Computing Lab USTC

Mesh Morphing. Ligang Liu Graphics&Geometric Computing Lab USTC Mesh Morphing Ligang Liu Graphics&Geometric Computing Lab USTC http://staff.ustc.edu.cn/~lgliu Morphing Given two objects produce sequence of intermediate objects that gradually evolve from one object

More information

Using Semi-Regular 4 8 Meshes for Subdivision Surfaces

Using Semi-Regular 4 8 Meshes for Subdivision Surfaces Using Semi-Regular 8 Meshes for Subdivision Surfaces Luiz Velho IMPA Instituto de Matemática Pura e Aplicada Abstract. Semi-regular 8 meshes are refinable triangulated quadrangulations. They provide a

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

Approximate Shortest Path on a Polyhedral Surface Based on Selective Refinement of the Discrete Graph and Its Applications

Approximate Shortest Path on a Polyhedral Surface Based on Selective Refinement of the Discrete Graph and Its Applications Approximate Shortest Path on a Polyhedral Surface Based on Selective Refinement of the Discrete Graph and Its Applications Takashi Kanai RIKEN Materials Fabrication Lab.. Hiromasa Suzuki University of

More information

Scanning Real World Objects without Worries 3D Reconstruction

Scanning Real World Objects without Worries 3D Reconstruction Scanning Real World Objects without Worries 3D Reconstruction 1. Overview Feng Li 308262 Kuan Tian 308263 This document is written for the 3D reconstruction part in the course Scanning real world objects

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

Computer Graphics Prof. Sukhendu Das Dept. of Computer Science and Engineering Indian Institute of Technology, Madras Lecture - 24 Solid Modelling

Computer Graphics Prof. Sukhendu Das Dept. of Computer Science and Engineering Indian Institute of Technology, Madras Lecture - 24 Solid Modelling Computer Graphics Prof. Sukhendu Das Dept. of Computer Science and Engineering Indian Institute of Technology, Madras Lecture - 24 Solid Modelling Welcome to the lectures on computer graphics. We have

More information

Computergrafik. Matthias Zwicker Universität Bern Herbst 2016

Computergrafik. Matthias Zwicker Universität Bern Herbst 2016 Computergrafik Matthias Zwicker Universität Bern Herbst 2016 Today Curves NURBS Surfaces Parametric surfaces Bilinear patch Bicubic Bézier patch Advanced surface modeling 2 Piecewise Bézier curves Each

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

Local Modification of Subdivision Surfaces Based on Curved Mesh

Local Modification of Subdivision Surfaces Based on Curved Mesh Local Modification of Subdivision Surfaces Based on Curved Mesh Yoshimasa Tokuyama Tokyo Polytechnic University tokuyama@image.t-kougei.ac.jp Kouichi Konno Iwate University konno@cis.iwate-u.ac.jp Junji

More information

Topology Preserving Tetrahedral Decomposition of Trilinear Cell

Topology Preserving Tetrahedral Decomposition of Trilinear Cell Topology Preserving Tetrahedral Decomposition of Trilinear Cell Bong-Soo Sohn Department of Computer Engineering, Kyungpook National University Daegu 702-701, South Korea bongbong@knu.ac.kr http://bh.knu.ac.kr/

More information

Level Set Extraction from Gridded 2D and 3D Data

Level Set Extraction from Gridded 2D and 3D Data Level Set Extraction from Gridded 2D and 3D Data David Eberly, Geometric Tools, Redmond WA 98052 https://www.geometrictools.com/ This work is licensed under the Creative Commons Attribution 4.0 International

More information

Computergrafik. Matthias Zwicker. Herbst 2010

Computergrafik. Matthias Zwicker. Herbst 2010 Computergrafik Matthias Zwicker Universität Bern Herbst 2010 Today Curves NURBS Surfaces Parametric surfaces Bilinear patch Bicubic Bézier patch Advanced surface modeling Piecewise Bézier curves Each segment

More information

Topic: Orientation, Surfaces, and Euler characteristic

Topic: Orientation, Surfaces, and Euler characteristic Topic: Orientation, Surfaces, and Euler characteristic The material in these notes is motivated by Chapter 2 of Cromwell. A source I used for smooth manifolds is do Carmo s Riemannian Geometry. Ideas of

More information

CS 177 Homework 1. Julian Panetta. October 22, We want to show for any polygonal disk consisting of vertex set V, edge set E, and face set F:

CS 177 Homework 1. Julian Panetta. October 22, We want to show for any polygonal disk consisting of vertex set V, edge set E, and face set F: CS 177 Homework 1 Julian Panetta October, 009 1 Euler Characteristic 1.1 Polyhedral Formula We want to show for any polygonal disk consisting of vertex set V, edge set E, and face set F: V E + F = 1 First,

More information

Multiresolution Remeshing Using Weighted Centroidal Voronoi Diagram

Multiresolution Remeshing Using Weighted Centroidal Voronoi Diagram Multiresolution Remeshing Using Weighted Centroidal Voronoi Diagram Chao-Hung Lin 1, Chung-Ren Yan 2, Ji-Hsen Hsu 2, and Tong-Yee Lee 2 1 Dept. of Geomatics, National Cheng Kung University, Taiwan 2 Dept.

More information

Curve Corner Cutting

Curve Corner Cutting Subdivision ision Techniqueses Spring 2010 1 Curve Corner Cutting Take two points on different edges of a polygon and join them with a line segment. Then, use this line segment to replace all vertices

More information

Digital Image Processing Fundamentals

Digital Image Processing Fundamentals Ioannis Pitas Digital Image Processing Fundamentals Chapter 7 Shape Description Answers to the Chapter Questions Thessaloniki 1998 Chapter 7: Shape description 7.1 Introduction 1. Why is invariance to

More information

Parallel Computation of Spherical Parameterizations for Mesh Analysis. Th. Athanasiadis and I. Fudos University of Ioannina, Greece

Parallel Computation of Spherical Parameterizations for Mesh Analysis. Th. Athanasiadis and I. Fudos University of Ioannina, Greece Parallel Computation of Spherical Parameterizations for Mesh Analysis Th. Athanasiadis and I. Fudos, Greece Introduction Mesh parameterization is a powerful geometry processing tool Applications Remeshing

More information

Hyperbolic structures and triangulations

Hyperbolic structures and triangulations CHAPTER Hyperbolic structures and triangulations In chapter 3, we learned that hyperbolic structures lead to developing maps and holonomy, and that the developing map is a covering map if and only if the

More information

On 3D Shape Synthesis

On 3D Shape Synthesis On 3D Shape Synthesis Heung-yeung Shum Martial Hebert Katsushi Ikeuchi November 1995 CMU-CS-95-213 School of Computer Science Carnegie Mellon University Pittsburgh, Pennsylvania 15213 c 1995 Carnegie Mellon

More information

THE HALF-EDGE DATA STRUCTURE MODELING AND ANIMATION

THE HALF-EDGE DATA STRUCTURE MODELING AND ANIMATION THE HALF-EDGE DATA STRUCTURE MODELING AND ANIMATION Dan Englesson danen344@student.liu.se Sunday 12th April, 2011 Abstract In this lab assignment which was done in the course TNM079, Modeling and animation,

More information

6.2 Classification of Closed Surfaces

6.2 Classification of Closed Surfaces Table 6.1: A polygon diagram 6.1.2 Second Proof: Compactifying Teichmuller Space 6.2 Classification of Closed Surfaces We saw that each surface has a triangulation. Compact surfaces have finite triangulations.

More information

Geometric Modeling Mortenson Chapter 11. Complex Model Construction

Geometric Modeling Mortenson Chapter 11. Complex Model Construction Geometric Modeling 91.580.201 Mortenson Chapter 11 Complex Model Construction Topics Topology of Models Connectivity and other intrinsic properties Graph-Based Models Emphasize topological structure Boolean

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

Geometric Algorithms in Three Dimensions Tutorial. FSP Seminar, Strobl,

Geometric Algorithms in Three Dimensions Tutorial. FSP Seminar, Strobl, Geometric Algorithms in Three Dimensions Tutorial FSP Seminar, Strobl, 22.06.2006 Why Algorithms in Three and Higher Dimensions Which algorithms (convex hulls, triangulations etc.) can be generalized to

More information

Metamorphosis of Polyhedral Surfaces using Decomposition

Metamorphosis of Polyhedral Surfaces using Decomposition EUROGRAPHICS 22 / G. Drettakis and H.-P. Seidel (Guest Editors) Volume 2 (22), Number 3 Metamorphosis of Polyhedral Surfaces using Decomposition Shymon Shlafman, Ayellet Tal and Sagi Katz Department of

More information

Dgp _ lecture 2. Curves

Dgp _ lecture 2. Curves Dgp _ lecture 2 Curves Questions? This lecture will be asking questions about curves, their Relationship to surfaces, and how they are used and controlled. Topics of discussion will be: Free form Curves

More information

Collision Detection. Jane Li Assistant Professor Mechanical Engineering & Robotics Engineering

Collision Detection. Jane Li Assistant Professor Mechanical Engineering & Robotics Engineering RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON S RBE 550 Collision Detection Jane Li Assistant Professor Mechanical Engineering & Robotics Engineering http://users.wpi.edu/~zli11 Euler Angle RBE

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

Final Project, Digital Geometry Processing

Final Project, Digital Geometry Processing Final Project, Digital Geometry Processing Shayan Hoshyari Student #: 81382153 December 2016 Introduction In this project an adaptive surface remesher has been developed based on the paper [1]. An algorithm

More information

Isosurface Rendering. CSC 7443: Scientific Information Visualization

Isosurface Rendering. CSC 7443: Scientific Information Visualization Isosurface Rendering What is Isosurfacing? An isosurface is the 3D surface representing the locations of a constant scalar value within a volume A surface with the same scalar field value Isosurfaces form

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

Interactive Shape Metamorphosis

Interactive Shape Metamorphosis Interactive Shape Metamorphosis David T. Chen Andrei State Department of Computer Science University of North Carolina Chapel Hill, NC 27599 David Banks Institute for Computer Applications in Science and

More information

Topological Issues in Hexahedral Meshing

Topological Issues in Hexahedral Meshing Topological Issues in Hexahedral Meshing David Eppstein Univ. of California, Irvine Dept. of Information and Computer Science Outline I. What is meshing? Problem statement Types of mesh Quality issues

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 Surface Simplification Motivation Basic Idea of LOD Discrete LOD Continuous LOD Simplification Problem Characteristics

More information

Processing 3D Surface Data

Processing 3D Surface Data Processing 3D Surface Data Computer Animation and Visualisation Lecture 12 Institute for Perception, Action & Behaviour School of Informatics 3D Surfaces 1 3D surface data... where from? Iso-surfacing

More information

Surface Topology ReebGraph

Surface Topology ReebGraph Sub-Topics Compute bounding box Compute Euler Characteristic Estimate surface curvature Line description for conveying surface shape Extract skeletal representation of shapes Morse function and surface

More information

Bands: A Physical Data Structure to Represent Both Orientable and Non-Orientable 2-Manifold Meshes

Bands: A Physical Data Structure to Represent Both Orientable and Non-Orientable 2-Manifold Meshes Bands: A Physical Data Structure to Represent Both Orientable and Non-Orientable 2-Manifold Meshes Abstract This paper presents a physical data structure to represent both orientable and non-orientable

More information

Lofting 3D Shapes. Abstract

Lofting 3D Shapes. Abstract Lofting 3D Shapes Robby Prescott Department of Computer Science University of Wisconsin Eau Claire Eau Claire, Wisconsin 54701 robprescott715@gmail.com Chris Johnson Department of Computer Science University

More information

A New Constrained Texture Mapping Method

A New Constrained Texture Mapping Method A New Constrained Texture Mapping Method Yan-Wen Guo 1,2,,JinWang 1,Xiu-FenCui 1, and Qun-Sheng Peng 1,2 1 State Key Lab of CAD&CG, Zhejiang University, Hangzhou 310027, China 2 Department of Mathematics,

More information

A new method of quality improvement for quadrilateral mesh based on small polygon reconnection

A new method of quality improvement for quadrilateral mesh based on small polygon reconnection Acta Mech. Sin. (2012) 28(1):140 145 DOI 10.1007/s10409-012-0022-x RESEARCH PAPER A new method of quality improvement for quadrilateral mesh based on small polygon reconnection Jian-Fei Liu Shu-Li Sun

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

Image Morphing. The user is responsible for defining correspondences between features Very popular technique. since Michael Jackson s clips

Image Morphing. The user is responsible for defining correspondences between features Very popular technique. since Michael Jackson s clips Image Morphing Image Morphing Image Morphing Image Morphing The user is responsible for defining correspondences between features Very popular technique since Michael Jackson s clips Morphing Coordinate

More information

GEOMETRIC LIBRARY. Maharavo Randrianarivony

GEOMETRIC LIBRARY. Maharavo Randrianarivony GEOMETRIC LIBRARY Maharavo Randrianarivony During the last four years, I have maintained a numerical geometric library. The constituting routines, which are summarized in the following list, are implemented

More information

On a nested refinement of anisotropic tetrahedral grids under Hessian metrics

On a nested refinement of anisotropic tetrahedral grids under Hessian metrics On a nested refinement of anisotropic tetrahedral grids under Hessian metrics Shangyou Zhang Abstract Anisotropic grids, having drastically different grid sizes in different directions, are efficient and

More information

Subdivision Curves and Surfaces: An Introduction

Subdivision Curves and Surfaces: An Introduction Subdivision Curves and Surfaces: An Introduction Corner Cutting De Casteljau s and de Boor s algorithms all use corner-cutting procedures. Corner cutting can be local or non-local. A cut is local if it

More information

Interactive Editing of Multiresolution Meshes

Interactive Editing of Multiresolution Meshes Interactive Editing of Multiresolution Meshes Frutuoso G. M. Silva and Abel J. P. Gomes IT - Networks and Multimedia Group Department of Computer Science and Engineering University of Beira Interior, Portugal

More information

Rendering Subdivision Surfaces Efficiently on the GPU

Rendering Subdivision Surfaces Efficiently on the GPU Rendering Subdivision Surfaces Efficiently on the GPU Gy. Antal, L. Szirmay-Kalos and L. A. Jeni Department of Algorithms and their Applications, Faculty of Informatics, Eötvös Loránd Science University,

More information

L1 - Introduction. Contents. Introduction of CAD/CAM system Components of CAD/CAM systems Basic concepts of graphics programming

L1 - Introduction. Contents. Introduction of CAD/CAM system Components of CAD/CAM systems Basic concepts of graphics programming L1 - Introduction Contents Introduction of CAD/CAM system Components of CAD/CAM systems Basic concepts of graphics programming 1 Definitions Computer-Aided Design (CAD) The technology concerned with the

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

Free-form deformation (FFD)

Free-form deformation (FFD) T.D. DeRose, M. Meyer, Harmonic Coordinates. Pixar Technical Memo #06-02 Free-form deformation (FFD) Advanced Computer Animation Techniques Aug-Dec 2014 cesteves@cimat.mx Free-form deformation (FFD) 2d

More information

Explicit Control of Topological Transitions in Morphing Shapes of 3D Meshes

Explicit Control of Topological Transitions in Morphing Shapes of 3D Meshes Explicit Control of Topological Transitions in Morphing Shapes of 3D Meshes Shigeo Takahashi Department of Graphics and Computer Science Graduate School of Arts and Sciences University of Tokyo takahashis@acm.org

More information

Interactive Deformation with Triangles

Interactive Deformation with Triangles Interactive Deformation with Triangles James Dean Palmer and Ergun Akleman Visualization Sciences Program Texas A&M University Jianer Chen Department of Computer Science Texas A&M University Abstract In

More information

Cross-Parameterization and Compatible Remeshing of 3D Models

Cross-Parameterization and Compatible Remeshing of 3D Models Cross-Parameterization and Compatible Remeshing of 3D Models Vladislav Kraevoy Alla Sheffer University of British Columbia Authors Vladislav Kraevoy Ph.D. Student Alla Sheffer Assistant Professor Outline

More information

751 Problem Set I JWR. Due Sep 28, 2004

751 Problem Set I JWR. Due Sep 28, 2004 751 Problem Set I JWR Due Sep 28, 2004 Exercise 1. For any space X define an equivalence relation by x y iff here is a path γ : I X with γ(0) = x and γ(1) = y. The equivalence classes are called the path

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

Using Isosurface Methods for Visualizing the Envelope of a Swept Trivariate Solid

Using Isosurface Methods for Visualizing the Envelope of a Swept Trivariate Solid Using Isosurface Methods for Visualizing the Envelope of a Swept Trivariate Solid Jason Conkey Kenneth I. Joy Center for Image Processing and Integrated Computing Department of Computer Science University

More information

INTRODUCTION TO 3-MANIFOLDS

INTRODUCTION TO 3-MANIFOLDS INTRODUCTION TO 3-MANIFOLDS NIK AKSAMIT As we know, a topological n-manifold X is a Hausdorff space such that every point contained in it has a neighborhood (is contained in an open set) homeomorphic to

More information

Morphing Planar Graphs in Spherical Space

Morphing Planar Graphs in Spherical Space Morphing Planar Graphs in Spherical Space Stephen G. Kobourov and Matthew Landis Department of Computer Science University of Arizona {kobourov,mlandis}@cs.arizona.edu Abstract. We consider the problem

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

An Investigation of Closed Geodesics on Regular Polyhedra

An Investigation of Closed Geodesics on Regular Polyhedra An Investigation of Closed Geodesics on Regular Polyhedra Tony Scoles Southern Illinois University Edwardsville May 13, 2008 1 Introduction This paper was undertaken to examine, in detail, results from

More information

Texture Mapping using Surface Flattening via Multi-Dimensional Scaling

Texture Mapping using Surface Flattening via Multi-Dimensional Scaling Texture Mapping using Surface Flattening via Multi-Dimensional Scaling Gil Zigelman Ron Kimmel Department of Computer Science, Technion, Haifa 32000, Israel and Nahum Kiryati Department of Electrical Engineering

More information

A TESSELLATION FOR ALGEBRAIC SURFACES IN CP 3

A TESSELLATION FOR ALGEBRAIC SURFACES IN CP 3 A TESSELLATION FOR ALGEBRAIC SURFACES IN CP 3 ANDREW J. HANSON AND JI-PING SHA In this paper we present a systematic and explicit algorithm for tessellating the algebraic surfaces (real 4-manifolds) F

More information

Geometric structures on manifolds

Geometric structures on manifolds CHAPTER 3 Geometric structures on manifolds In this chapter, we give our first examples of hyperbolic manifolds, combining ideas from the previous two chapters. 3.1. Geometric structures 3.1.1. Introductory

More information

Hexahedral Mesh Generation using the Embedded Voronoi Graph

Hexahedral Mesh Generation using the Embedded Voronoi Graph Hexahedral Mesh Generation using the Embedded Voronoi Graph Alla Sheffer, Michal Etzion, Ari Rappoport, Michel Bercovier Institute of Computer Science, The Hebrew University, Jerusalem 91904, Israel. sheffa

More information

Geodesics in heat: A new approach to computing distance

Geodesics in heat: A new approach to computing distance Geodesics in heat: A new approach to computing distance based on heat flow Diana Papyan Faculty of Informatics - Technische Universität München Abstract In this report we are going to introduce new method

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

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

Lecture 25: Bezier Subdivision. And he took unto him all these, and divided them in the midst, and laid each piece one against another: Genesis 15:10

Lecture 25: Bezier Subdivision. And he took unto him all these, and divided them in the midst, and laid each piece one against another: Genesis 15:10 Lecture 25: Bezier Subdivision And he took unto him all these, and divided them in the midst, and laid each piece one against another: Genesis 15:10 1. Divide and Conquer If we are going to build useful

More information

Scalar Field Visualization. Some slices used by Prof. Mike Bailey

Scalar Field Visualization. Some slices used by Prof. Mike Bailey Scalar Field Visualization Some slices used by Prof. Mike Bailey Scalar Fields The approximation of certain scalar function in space f(x,y,z). Most of time, they come in as some scalar values defined on

More information

The orientability of small covers and coloring simple polytopes. Nishimura, Yasuzo; Nakayama, Hisashi. Osaka Journal of Mathematics. 42(1) P.243-P.

The orientability of small covers and coloring simple polytopes. Nishimura, Yasuzo; Nakayama, Hisashi. Osaka Journal of Mathematics. 42(1) P.243-P. Title Author(s) The orientability of small covers and coloring simple polytopes Nishimura, Yasuzo; Nakayama, Hisashi Citation Osaka Journal of Mathematics. 42(1) P.243-P.256 Issue Date 2005-03 Text Version

More information

Joe Warren, Scott Schaefer Rice University

Joe Warren, Scott Schaefer Rice University Joe Warren, Scott Schaefer Rice University Polygons are a ubiquitous modeling primitive in computer graphics. Their popularity is such that special purpose graphics hardware designed to render polygons

More information

Tiled Textures What if Miro Had Painted a Sphere

Tiled Textures What if Miro Had Painted a Sphere Tiled Textures What if Miro Had Painted a Sphere ERGUN AKLEMAN, AVNEET KAUR and LORI GREEN Visualization Sciences Program, Department of Architecture Texas A&M University December 26, 2005 Abstract We

More information

Matching and Planarity

Matching and Planarity Matching and Planarity Po-Shen Loh June 010 1 Warm-up 1. (Bondy 1.5.9.) There are n points in the plane such that every pair of points has distance 1. Show that there are at most n (unordered) pairs of

More information

Clipping & Culling. Lecture 11 Spring Trivial Rejection Outcode Clipping Plane-at-a-time Clipping Backface Culling

Clipping & Culling. Lecture 11 Spring Trivial Rejection Outcode Clipping Plane-at-a-time Clipping Backface Culling Clipping & Culling Trivial Rejection Outcode Clipping Plane-at-a-time Clipping Backface Culling Lecture 11 Spring 2015 What is Clipping? Clipping is a procedure for spatially partitioning geometric primitives,

More information

Topology-Free Cut-and-Paste Editing over Meshes

Topology-Free Cut-and-Paste Editing over Meshes Topology-Free Cut-and-Paste Editing over Meshes Hongbo Fu, Chiew-Lan Tai, Hongxin Zhang Department of Computer Science Hong Kong University of Science and Technology Abstract Existing cut-and-paste editing

More information

: Mesh Processing. Chapter 8

: Mesh Processing. Chapter 8 600.657: Mesh Processing Chapter 8 Handling Mesh Degeneracies [Botsch et al., Polygon Mesh Processing] Class of Approaches Geometric: Preserve the mesh where it s good. Volumetric: Can guarantee no self-intersection.

More information

A Flavor of Topology. Shireen Elhabian and Aly A. Farag University of Louisville January 2010

A Flavor of Topology. Shireen Elhabian and Aly A. Farag University of Louisville January 2010 A Flavor of Topology Shireen Elhabian and Aly A. Farag University of Louisville January 2010 In 1670 s I believe that we need another analysis properly geometric or linear, which treats place directly

More information

Who has worked on a voxel engine before? Who wants to? My goal is to give the talk I wish I would have had before I started on our procedural engine.

Who has worked on a voxel engine before? Who wants to? My goal is to give the talk I wish I would have had before I started on our procedural engine. 1 Who has worked on a voxel engine before? Who wants to? My goal is to give the talk I wish I would have had before I started on our procedural engine. Three parts to this talk. A lot of content, so I

More information

Treewidth and graph minors

Treewidth and graph minors Treewidth and graph minors Lectures 9 and 10, December 29, 2011, January 5, 2012 We shall touch upon the theory of Graph Minors by Robertson and Seymour. This theory gives a very general condition under

More information

Extracting Surface Representations From Rim Curves

Extracting Surface Representations From Rim Curves Extracting Surface Representations From Rim Curves Hai Chen 1, Kwan-Yee K. Wong 2, Chen Liang 2, and Yue Chen 1 1 College of Software Technology, Zhejiang University, Hangzhou, Zhejiang, China 310027 chenhai@gmail.com

More information

1 Appendix to notes 2, on Hyperbolic geometry:

1 Appendix to notes 2, on Hyperbolic geometry: 1230, notes 3 1 Appendix to notes 2, on Hyperbolic geometry: The axioms of hyperbolic geometry are axioms 1-4 of Euclid, plus an alternative to axiom 5: Axiom 5-h: Given a line l and a point p not on l,

More information

Flavor of Computational Geometry. Convex Hull in 2D. Shireen Y. Elhabian Aly A. Farag University of Louisville

Flavor of Computational Geometry. Convex Hull in 2D. Shireen Y. Elhabian Aly A. Farag University of Louisville Flavor of Computational Geometry Convex Hull in 2D Shireen Y. Elhabian Aly A. Farag University of Louisville February 2010 Agenda Introduction Definitions of Convexity and Convex Hulls Naïve Algorithms

More information

pα i + q, where (n, m, p and q depend on i). 6. GROMOV S INVARIANT AND THE VOLUME OF A HYPERBOLIC MANIFOLD

pα i + q, where (n, m, p and q depend on i). 6. GROMOV S INVARIANT AND THE VOLUME OF A HYPERBOLIC MANIFOLD 6. GROMOV S INVARIANT AND THE VOLUME OF A HYPERBOLIC MANIFOLD of π 1 (M 2 )onπ 1 (M 4 ) by conjugation. π 1 (M 4 ) has a trivial center, so in other words the action of π 1 (M 4 ) on itself is effective.

More information

Solid Modelling. Graphics Systems / Computer Graphics and Interfaces COLLEGE OF ENGINEERING UNIVERSITY OF PORTO

Solid Modelling. Graphics Systems / Computer Graphics and Interfaces COLLEGE OF ENGINEERING UNIVERSITY OF PORTO Solid Modelling Graphics Systems / Computer Graphics and Interfaces 1 Solid Modelling In 2D, one set 2D line segments or curves does not necessarily form a closed area. In 3D, a collection of surfaces

More information

GAUSS-BONNET FOR DISCRETE SURFACES

GAUSS-BONNET FOR DISCRETE SURFACES GAUSS-BONNET FOR DISCRETE SURFACES SOHINI UPADHYAY Abstract. Gauss-Bonnet is a deep result in differential geometry that illustrates a fundamental relationship between the curvature of a surface and its

More information

The Cyclic Cycle Complex of a Surface

The Cyclic Cycle Complex of a Surface The Cyclic Cycle Complex of a Surface Allen Hatcher A recent paper [BBM] by Bestvina, Bux, and Margalit contains a construction of a cell complex that gives a combinatorial model for the collection of

More information

Brain Surface Conformal Spherical Mapping

Brain Surface Conformal Spherical Mapping Brain Surface Conformal Spherical Mapping Min Zhang Department of Industrial Engineering, Arizona State University mzhang33@asu.edu Abstract It is well known and proved that any genus zero surface can

More information