An Improved Subdivision Algorithm Based On Quadrilateral Meshes Xumin Liu Xianpeng Yang Department of Information Engineering Capital Normal University Beijing, China liuxumin@126.com Department of Information Engineering Capital Normal University Beijing, China yangxianpeng0917@126.com Yong Guan Department of Information Engineering Capital Normal University Beijing, China guanyong@mail.cnu.edu.cn commonly used subdivision algorithm make the number of meshes increase 3 times than before, the data elements increase so fast that it greatly limits its application field, such as network transmission of 3D signal etc. In recent years, to solve this issue, some corresponding new subdivision algorithms are proposed. In 2000 Kobbelt proposed a kind of 3 subdivision algorithm in SIGGRAPH conference [4]. After each subdivision, the number of meshes increase 2 times than before, but if the number of subdivision is odd, the model rotate some certain angle, and if the number is even, the model rotates back to the original position. Velho proposed a kind of 4-8 subdivision algorithm which was aim at mixed quadrilateral and triangular meshes [5]. After each subdivision-operating, the number of meshes became twice. But the topological of mesh is complex, it need a lot of preprocessing work. In this paper, an improved subdivision algorithm based on quadrilateral mesh is proposed. It makes the number of meshes increase approximately twice after each subdivisionoperating, have the advantages of simple geometrical structure, slowing growth in data and simple preprocessing structure etc. Abstract—This paper proposed an improved subdivision algorithm that based on quadrilateral mesh. Firstly, we implement quadrilateral mesh preprocessing to polygon mesh by paired method, and then adopt the strategy of slowing growth in the number of edges. After each subdivision, the number of meshes increase approximately 1 times, the result of twice subdivision nearly equal to the traditional 1-4 subdivision once. The subdivision surface is generated by the improved algorithm has C2 continuity in the regular vertex and C1 continuity in the extraordinary vertex. The experiment show that the improved algorithm is effective, it can slow down the growth rate of meshes effectively, be good to the multi-resolution analysis of model, can keep the character of original model splendidly, and make the generated surface smooth and connection. Keywords-Surface subdivision; Quadrilateral mesh; Preprocessing I. INTRODUCTION In the field of Computer Aided Geometric Design subdivision scheme is an iterative process that defines a smooth surface as the limit of a sequence of successive refinements applied to an initial control polygon mesh. Because of their capability in representing any shape with only one surface, these years, it is becoming popular in many areas such as animation, geometric modeling and games. A subdivision surface is determined by the way the control mesh is refined, i.e., the subdivision scheme. A subdivision scheme is include two steps that topological connect the generated vertices in the new meshes and geometric positioning of vertices. The usual subdivision algorithm is mainly based on triangular or quadrilateral meshes. In 1978, Catmull-Clark [1] and Doo-Sabin [2] respectively proposed subdivision-algorithm that made the B-spline surface extend to arbitrary topological meshes. In 1987, Loop proposed the famous Loop subdivision algorithm which applied to triangular mesh [3]. At present, after each subdivision, the II. MESH PREPROCESSING In general, polygon mesh is mostly consisting of triangle and quadrangle under the environment of Computer Graphics. The initial mesh that mainly consists of triangle or quadrangle is not many. In this paper, because the subdivision algorithm is based on quadrilateral mesh, in order to make the polygon mesh transform into quadrilateral mesh, we need do some mesh preprocessing to polygon mesh [6]. There is two mainly kinds of traditional preprocessing methods, one is based on surface-split. Its ideology is that figure out the barycentre of each mesh and midpoint of each edge on the corresponding surface firstly, and then connect the barycentre of each mesh and midpoint of each edge on the corresponding surface. In this way, we can transform _____________________________________ 978-1-4244-5539-3/10/$26.00 ©2010 IEEE 571 polygon into n quadrangles. This kind of method make lesser change in topology information and has the advantage of none triangle mesh appear in the boundary (all polygon meshes transform into quadrilateral meshes), but it makes the number of meshes grow fast. Another is based on paired method .Its ideology is that firstly figure out the barycentre of each mesh, then connect the barycentre and each vertex on the corresponding mesh so as to generate new edges, and then remove the old edges (retain the boundary edges)after connection. This kind of method makes great change in topology information and all polygon meshes transform into quadrilateral meshes except triangle meshes in boundary, but it have the advantage of slowing growth in the number of meshes. In this paper, we adopt the second mesh preprocessing method. The subdivision scheme of the triangle meshes on the boundary, we will describe in the follow section. III. P0 = 1 ( P00 + P01 + P11 + P10 ) 4 (1) and the formula for the location of new V-vertex is: Q = 1 1 P+ 4 8 4 1 4 ∑ P + 16 ∑ P i =1 i j =1 j (2) Where vertex Pi is the vertex which directly connect with vertex P, for example, the formula for the new V-vertex Q11 Corresponding to the vertex P11 is: 1 1 Q11 = P11 + (P01 + P12 + P21 + P10 ) 4 16 (3) SUBDIVISION SCHEME Usually, each subdivision-operating of the subdivision surface has two step [7], First is topological rules, After inserting the new vertices into the meshes, we should describe the relationship of all vertices ,Second is geometric rule, It is used to calculate the geometric location information of all new vertices. Definition: the vertex P on the quadrilateral mesh are divided into two categories: regular vertices and extraordinary vertices. If vertex P is an inner vertex and its valence is 4 or P is a boundary vertex and its valence is not 3 or 2, P is extraordinary vertex. Otherwise, vertex P is called regular vertex . Figure 1. geometric positioning of the regular vertex, for example, P0 is a new F-vertex, Q11 is a new V-vertex . 2) For the extraordinary vertex The geometric positioning for the extraordinary vertex can be divided into two categories [8]: a) when the vertex P is entirely surrounded by the quadrilateral meshes, as show in the Figure 2. A. Topological Connection Rules Firstly, we describe the topological connection rules: The center of the quadrilateral mesh is inserted a new point (we define it as F-vertex), if the mesh is triangular mesh in the boundary, the new inserted point is the same as the quadrilateral mesh. Corresponding to each vertex on the mesh generates a new vertex (we define it as V-vertex, we retain the boundary vertices and do not generate new vertices for them). It will generates 4 new edges by connecting Fvertex and V-vertex which is surround it (for the boundary mesh, connect F-vertex and the boundary vertices), and then remove the old edges (except for the boundary edges), This has completed once subdivision-operating of subdivision surface, In such subdivision scheme, it can find that the result of once subdivision makes the number of the meshes growth approximately twice than the original, which slowing the growth rate of the meshes effectively. After analysis, We could discover that the number of the neighborhood edges of the new inserted point is four. After subdivision, except the boundary vertices and the extraordinary vertices inheriting from the upper-layer, all the rest are the regular vertices. Figure 2. geometric positioning of extraordinary vertex which is only surrounded by quadrilateral meshes, for example, P0 is a new V-vertex. The formula for the location of the new V-vertex P0 is : n m i =1 j =1 P0 = cP + ∑ dPi + ∑ eP j B. Geometric Positioning Rule 1) For the regular vertex The geometric positioning for the regular vertex, as show in the Figure 1, the formula of the new F-vertex P0 of one quadrilateral mesh P00P01P11P10 is: (4) Where vertex Pi is the vertex which directly connect with vertex P, n is the number of the edges which are directly connect with vertex P, m is the number of the quadrilateral meshes which surround vertex P, c=(n-3)/n, d=2/n2, e=1/n2, 572 the formula for the new V-vertex of regular vertex is one particular case when n=m=4. b) when the vertex P is surrounded by quadrilateral and triangle meshes, as show in the Figure 3. the formula for the location of the new V-vertex P0 is: P0 = fP + n m ∑ gP + ∑ hP i =1 i j =1 j continuous [9], the subdivision surface generated by the tensor product is C2 continuous in the regular vertex and C1 continuous in the extraordinary vertex [10] . IV. RESULTS In order to identify the effect of the improved algorithm. We implement the improved algorithm under the environment of Microsoft Visual C++ 6.0, and compare the improved algorithm with the Catmull-Clark algorithm [11]. As show in the Figure 5, the above line is the effect drawings about that the cow model used the improved algorithm to subdivide twice and used the Catmull-Clark algorithm to subdivide once. The below line is the effect drawings about the cubic model used the improved algorithm to subdivide four times and used the Catmull-Clark algorithm to subdivide twice. Because the number of subdivision using the improved algorithm is twice than the number of subdivision using the Catmull-Clark algorithm. As can be seen from the experimental results, the subdivision effect drawings of the improved algorithm looks more smooth. On the whole, the result of twice subdivision using the improved algorithm is not very different from that of once subdivision using the Catmull-Clark algorithm. It can be learned that the smoothness of subdivision surface of the improved algorithm is little different from the Catmull-Clark algorithm. It also confirms the smoothness analysis, the improved subdivision algorithm is same as the Catmull-Clark algorithm, has C2 continuity in the regular vertex and C1 continuity in the extraordinary vertex. (5) Figure 3. geometric positioning of extraordinary vertex which is surrounded by quadrilateral and triangle meshes, for example, P0 is a new V-vertex. Where vertex Pi is the vertex which directly connect with vertex P, n is the number of the edges which are directly connect with vertex P, m is the number of the quadrilateral meshes which surround vertex P, f=1/(1+n/2+m/4), g=f/2, so g=1/2(1+n/2+m/4), h=f/4, so h=1/4(1+n/2+m/4). 3) For the original mesh on the boundary Consider that if the initial meshes has boundary, as the description in the chapter about mesh preprocessing, the boundary will generate triangle meshes. We should do some special treatment to these triangle meshes during the subdivision-operating. As show in the Figure 4, suppose the boundary triangle is VPQ , the new F-vertex is P0. Figure 5. example of models respectively using Catmull-Clark algorithm and the improved algorithm in this paper(Catmull-Clark≡C-C,the improved subdivision algorithm ≡P-S ),(a)(d) two initial meshes,(b)twice P-S, (c) once C-C, (e) four times P-S, (f) twice C-C. Figure 4. the case of triangle meshes on the boundary, for example, P0 is the new V-vertex. The formula for the new F-vertex P0 of the boundary triangle is: 1 (6) P0 = (V + P + Q ) 3 Because implement the improved subdivision twice is approximate equivalent to once 1-4 subdivision, the smoothness of the subdivision is same as the smoothness of the traditional 1-4 subdivision. However, the improved subdivision algorithm can effectively slow down the growth speed of the meshes during subdivision-operating. Because the subdivision curves generated by the cubic B-spline is C2 TABLE I. THE TEST RESULTS OF THE TWO SUBDIVISION ALGORITHM The data experimental result of the two models Respectively using the improved algorithm and the Catmull- 573 and Funding Project for Academic Human Resources Development in Institutions of Higher Learning Under the Jurisdiction of Beijing Municipality (IHLB). Clark algorithm is given in the Table 1. From the data in the Table 1, we can learn that the number of the meshes generated by twice subdivision using the improved algorithm is slightly more than the meshes generated by once subdivision using the Catmull-Clark algorithm, but the difference is little. So the improved algorithm can effectively slow down the growth speed of the meshes during subdivision-operating. Therefore, it has great advantage in many fields such as graphic transmission, multi-resolution analysis and network transmission of 3D signal etc [12]. REFERENCES [1] Catmull E, Clark J. Recursively generated B-spline surfaces on arbitrary topological meshes. Computer-Aided Design, 1978, 10(6): 350-355. [2] Doo D, Sabin M. Behaviour of recursive division surfaces near extraordinary points. Computer-Aided Design, 1978,10(6): 356-360. [3] Loop C.Smooth Subdivision Surface Based On Triangles [Mster thesis] Dept.Math, Univ.Utah, 1987. [4] Kobbelt K. 3 -subdivision [C].In Computer Graphics Proceedings. Annual Conference Series, ACM SIGGRAPH, 2000.103-112. [5] Luiz V, Denis Z.4-8 Subdivisiom CAGD, 2001, 18 (5):345-357. [6] WangQihua. SunLijuan. The study of new subdivision algorithm which based on Catmull-Clark subdivision. Computer Tec- hnology and Development .2008,18(3): 40-42. [7] Zheng J, Cai Y Y. Interpolation over arbitrary topology meshes using a two-phase subdivision scheme. IEEE Trans.Visual- ization and Computer Graphics, 2006, 12(3): 301-310. [8] Stam J, Loop C. Quad-tirangle subdivision [J].Computer Graphics Forum 22. 2003, 1: 79-85. [9] Peters J, Reif U . Analysis of algorithms generalizing B-spline subdivision [J].SIAM Journal on Numerical Analysis 35, 1998, 2: 728-748. [10] Schaefer S,Warren J. On C2 triangle/ ruad subdivision [J]. ACM Transactions on Graphics 24. 2005, 1 : 28-36. [11] Lai S, Cheng F. Similarity based interpolation using Catmull-Clark subdivision surfaces. The Visual Computer,2006,22 (9) : 865-873. [12] Zorin D, SchrÄoder P, DeRose T, Kobbelt L, Levin A, Sweldens W. Subdivision for modeling and animation. In SIGGRAPH 2000 Course Notes, ACM SIGGRAPH, Boston, USA, 2006,pp.30-50. V. CONCLUSION Focus on the issue that the data element grow too fast in traditional mesh subdivision algorithm, we proposed an improved subdivision algorithm which is based on quadrilateral meshes. The algorithm not only has the advantage that the data element grow relatively slowly which similar to the 4-8 subdivision algorithm, but can keep the characteristics of the original model well and can generate smooth surface. In addition, the improved algorithm and its implementation still have some details should be further mature and perfect. Owing to the topology of the mesh has been changed, the model will distort at the beginning of the subdivision. However, with the number of subdivision increase, the surface will becomes more and more smooth. So more work will be done in the deficient aspect in the future. ACKNOWLEDGMENT This research was supported by the National Natural Science Foundation (60873006), Beijing Natural Science Foundation (4082009), Beijing Nova Program (2008B57), 574