Metamorphosis of Arbitrary Triangular Meshes
|
|
- Naomi Martin
- 5 years ago
- Views:
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
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 information3D 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 informationResearch 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 informationShape 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 informationThe 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 information3-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 information2D 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 informationFeature-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 informationPolyhedron 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 informationParameterization 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 informationIntrinsic 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 informationMesh 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 informationUsing 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 informationGeometric 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 informationApproximate 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 informationScanning 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 informationPhysically-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 informationComputer 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 informationComputergrafik. 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 informationcoding 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 informationLocal 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 informationTopology 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 informationLevel 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 informationComputergrafik. 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 informationTopic: 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 informationCS 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 informationMultiresolution 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 informationCurve 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 informationDigital 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 informationParallel 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 informationHyperbolic 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 informationOn 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 informationTHE 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 information6.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 informationGeometric 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 informationA 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 informationGeometric 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 informationMetamorphosis 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 informationDgp _ 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 informationCollision 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 informationLecture 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 informationFinal 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 informationIsosurface 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 informationHomework 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 informationInteractive 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 informationTopological 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 informationGeometric 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 informationProcessing 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 informationSurface 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 informationBands: 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 informationLofting 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 informationA 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 informationA 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 informationShape 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 informationImage 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 informationGEOMETRIC 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 informationOn 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 informationSubdivision 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 informationInteractive 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 informationRendering 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 informationL1 - 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 informationSurface 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 informationFree-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 informationExplicit 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 informationInteractive 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 informationCross-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 information751 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 informationImages 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 informationUsing 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 informationINTRODUCTION 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 informationMorphing 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 informationFrom 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 informationAn 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 informationTexture 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 informationA 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 informationGeometric 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 informationHexahedral 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 informationGeodesics 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 informationMeshless 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 informationFree-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 informationLecture 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 informationScalar 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 informationThe 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 informationJoe 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 informationTiled 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 informationMatching 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 informationClipping & 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 informationTopology-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
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 informationA 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 informationWho 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 informationTreewidth 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 informationExtracting 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 information1 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 informationFlavor 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 informationpα 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 informationSolid 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 informationGAUSS-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 informationThe 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 informationBrain 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