author's personal copylsec.cc.ac.cn/~xuguo/papers/1-s2.0-s0010448513001632-main.pdf ·...

11
This article appeared in a journal published by Elsevier. The attached copy is furnished to the author for internal non-commercial research and education use, including for instruction at the authors institution and sharing with colleagues. Other uses, including reproduction and distribution, or selling or licensing copies, or posting to personal, institutional or third party websites are prohibited. In most cases authors are permitted to post their version of the article (e.g. in Word or Tex form) to their personal website or institutional repository. Authors requiring further information regarding Elsevier’s archiving and manuscript policies are encouraged to visit: http://www.elsevier.com/authorsrights

Upload: others

Post on 05-Jul-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Author's personal copylsec.cc.ac.cn/~xuguo/papers/1-s2.0-S0010448513001632-main.pdf · interpolation constraints was proposed in [9]. Complicated surface shapes are often produced

This article appeared in a journal published by Elsevier. The attachedcopy is furnished to the author for internal non-commercial researchand education use, including for instruction at the authors institution

and sharing with colleagues.

Other uses, including reproduction and distribution, or selling orlicensing copies, or posting to personal, institutional or third party

websites are prohibited.

In most cases authors are permitted to post their version of thearticle (e.g. in Word or Tex form) to their personal website orinstitutional repository. Authors requiring further information

regarding Elsevier’s archiving and manuscript policies areencouraged to visit:

http://www.elsevier.com/authorsrights

Page 2: Author's personal copylsec.cc.ac.cn/~xuguo/papers/1-s2.0-S0010448513001632-main.pdf · interpolation constraints was proposed in [9]. Complicated surface shapes are often produced

Author's personal copy

Computer-Aided Design 46 (2014) 110–119

Contents lists available at ScienceDirect

Computer-Aided Design

journal homepage: www.elsevier.com/locate/cad

A unified method for hybrid subdivision surface design usinggeometric partial differential equationsQing Pan a, Guoliang Xu b,∗, Yongjie Zhang c

a Key Laboratory of High Performance Computing and Stochastic Information Processing, College of Mathematics and Computer Science, Hunan NormalUniversity, Changsha, Chinab LSEC, Institute of Computational Mathematics, Academy of Mathematics and System Sciences, Chinese Academy of Sciences, Beijing, Chinac Department of Mechanical Engineering, Carnegie Mellon University, USA

h i g h l i g h t s

• We composite surface subdivision and the GPDE to form a unified method for freeform surface design.• We present a novel technique to evaluate the finite element basis functions.• This is a first attempt for constructing the GPDE subdivision surface with hybrid control meshes.

a r t i c l e i n f o

Keywords:Hybrid subdivision surfaceGeometric partial differential equationsFinite element method

a b s t r a c t

Surface subdivision gains popularity in surface design owing to its flexible applications for geometry withcomplicated topology and simple computational scheme, and the geometric partial differential equation(GPDE) method is an advanced technology for constructing high-quality smooth surfaces. In this paper,we composite these two ingredients to form a unified method for freeform surface design. We choosethe mean curvature flow andWillmore flow as our driven GPDEs, and the finite element method coupledwith a hybrid Loop and Catmull–Clark subdivision algorithm as the numerical simulation method. Thisresearch presents a novel technique to evaluate the finite element basis functions and the first attemptfor constructing the GPDE subdivision surface with hybrid control meshes consisting of triangles andquadrilaterals. Numerical experiments show that the constructionmethod is efficient and robust, yieldinghigh-quality hybrid subdivision surfaces.

© 2013 Elsevier Ltd. All rights reserved.

1. Introduction

Freeform surface design has been extensively demanded in air-plane, ship, automobile and light industry. It helps us accomplishthe design and manufacture from a little screw to a big airplane(see Fig. 1). It has also been vividly developed in architecture de-sign. To be able to manipulate the designed surface, designersoften require extra flexibilities to model certain regions in de-tail with triangular (tri) patches, while preserving quadrilateral(quad) patches on regular areas. Hence, the designers will havemore degrees of freedom for designing more natural and reason-able surface shape if there is no limitation on the mesh structure.Consequently, it is always desirable to have surfaces with a hy-brid tri–quad patch structure which is obviously superior overonly one mesh form. In this paper, we aim to construct freeformsubdivision surfaces with tri–quad control meshes using specified

∗ Corresponding author. Tel.: +86 010 62624352.E-mail address: [email protected] (G. Xu).

geometric partial differential equations (GPDEs). In the following,we first briefly review the previous work on subdivision surfacesand GPDEs.

Previous work on subdivision surfaces. As classical tools for rep-resenting surface, Bézier, B-spline and NURBS (Non-Uniform Ra-tional B-spline) have been widely accepted and used. However, tojoin several such surface patcheswith specified continuity, compli-cated editing and blending tools are needed even for surfaces withsimple topology. To overcome this difficulty, subdivision surfaceshave been developed. There are plenty of research works on sub-division surfaces. Here we just review a few of them. For a com-prehensive description of the subdivision methods, we refer thereaders to the book by Warren [1].

The concept of discrete subdivision was first introduced byChaikin in 1974 (see [2]). Thereafter, many subdivision schemeshave been developed, such as Catmull–Clark (see [3]), Loop (see[4]), Doo–Sabin (see [5]), Butterfly (see [6]), and Kobbelt (see [7])techniques. Since the subdivision technology has been proposed, ithas rapidly gained popularity in computer graphics and computer-aided design because it can not only generate smooth surfaceswith

0010-4485/$ – see front matter© 2013 Elsevier Ltd. All rights reserved.http://dx.doi.org/10.1016/j.cad.2013.08.023

Page 3: Author's personal copylsec.cc.ac.cn/~xuguo/papers/1-s2.0-S0010448513001632-main.pdf · interpolation constraints was proposed in [9]. Complicated surface shapes are often produced

Author's personal copy

Q. Pan et al. / Computer-Aided Design 46 (2014) 110–119 111

Fig. 1. Mechanical part 1. (a) The boundaries, inner sharp feature curves and the prescribed co-normals (short perpendicular line segments) on the curves; (b) a simple andcoarse initial constructed surface; and (c) the final surface produced by theWillmore flow. The triangular surface patches are marked in yellow, and the quadrilateral surfacepatches are in gray. (For interpretation of the references to colour in this figure legend, the reader is referred to the web version of this article.)

aesthetically pleasing looking through a simple fundamental algo-rithm but also handle shapes of arbitrary topology, which over-comes the difficulty in joining regular NURBS surface patches. Asimple and computationally efficient algorithm for approximat-ing Catmull–Clark subdivision surfaces by a minimal set of bicubicpatches was presented in [8]. A method for using polygonal com-plexes to generate Catmull–Clark subdivision surfaces with curveinterpolation constraints was proposed in [9].

Complicated surface shapes are often produced by connectingsurface patches with non-uniform sizes and different shapes. Thisneeds adjustable curve frames to sketch their contours and keepcertain smoothness. These curves can be actual boundaries of thesurface, or lie on the surfaces. To address an input control meshwith marked edges/vertices and boundary features, such as con-cave corners, convex corners, sharp creases and smooth creases,several boundary subdivision rules have been proposed (see[10,5,11,12]). The subdivision scheme described in [13] combinestheCatmull–Clark subdivision and Loop’s subdivisionwhich allowsus to freely distribute quadrilaterals and triangles in the controlmesh. A 4–3 subdivision (see [13]) applies a 4-direction alternativeto the Catmull–Clark subdivision on quad submeshes and amodifi-cation of Loop’s scheme on triangle submeshes, which was provedto be C1-continuous and with bounded curvature everywhere.

Previous work on GPDE surfaces. There have been rich results(see [14–18]) since GPDEs were applied to surface modeling30 years ago. For a comprehensive description of the GPDE sur-faces, we refer the readers to the book [19]. This surface modelingtool can construct smooth surfaces which satisfy certain boundarycontinuity constraints. The obtained surfaces are completely de-termined by the chosen GPDEs and their boundary constraints.

A surface minimizing a global energy is often called a fair sur-face. These kinds of surfaces are important and preferred in theshape design and modeling because they share certain optimalproperties. Examples of such surfaces include: minimal surfaces(see [20]), constant mean curvature surfaces (see [21,22]), con-stant Gauss-curvature surfaces (see [23]), Willmore surfaces (see[24,25]), andminimalmean curvature variation surfaces (see [26]).All these surfaces are solutions of GPDEs.

A method was presented in [17] to approximate the solutionsurfaces of PDEs in terms of B-splines. Recently, Feng and Warren(see [27]) constructed biharmonic B-spline surfaces using discreteLaplace operators and derived a discrete refinement scheme forthese splines. Pan and Xu have done some research work on con-structing subdivision surfaces with prescribed G0 and G1 boundaryconditions using finite element methods, where the mesh topol-ogy of the initial surface is pure triangular (see [28]) or purequadrilateral (see [29]). However, the problem of constructingGPDE subdivision surface with hybrid control mesh has not been

attempted. In this paper, we intend to treat the hybrid tri–quadmesh topology.

Our contributions. The finite element methods for pure trian-gular (see [28]) or pure quadrilateral (see [29]) meshes are basedon the fast evaluation methods of subdivision surfaces proposedby Stam (see [30,31]). For the hybrid control mesh, a fast eval-uation method of subdivision surface could also be constructed.However, it is much more complicated than the pure triangularor pure quadrilateral case, due to the complexity of the topologystructure of the hybrid control mesh (see Remark 4 in Section 3.5).In this paper, we develop a novel technique to evaluate the finiteelement basis functions, which leads to a systematic and compre-hensive method for hybrid subdivision GPDE surface design withprescribed G0 and G1 boundary conditions. We contribute not onlya novelmethod for constructing a hybrid subdivisionGPDE surface,but also advanced computational tools. In particular, ourmain con-tributions are summarized as follows.

(i) Different from the earlier finite element methods (see[28,29]) based on Stam’s fast algorithms (see [30,31]) forthe pure triangular or quadrilateral subdivision surfaces, ourfinite element method does not involve surface evaluation ofirregular patches. It is very efficient and robust. Furthermore,the proposed method is simple and therefore it is easy toimplement.

(ii) The first attempt for constructing GPDE subdivision surfaceswith controlmeshes consisting of triangles and quadrilaterals.

(iii) A unified treatment for hybrid tri–quad control meshes withfixed boundaries and interior sharp feature curves. It thereforetreats pure triangular or quadrilateral control meshes as twospecial cases.

The remainder of this paper is organized as follows: Section 2provides problem description and algorithm outline. Section 3describes our geometric PDE methods based on subdivision tech-nology. Section 4 talks about the hybrid tri–quad surface meshregularization. Some examples are shown in Section 5. Finally,Section 6 draws conclusions and points out future work.

2. Problem description and algorithm outline

Given an initial open or closed surface whose control mesh hasa coarse arbitrary connectivity with a hybrid tri–quad polygon (seeFig. 1(b)), our approach produces a smooth subdivision geometricPDE surface (see Fig. 1(c)) with topology preservation. The inputhas fixed boundaries, inner sharp feature curves and prescribedtangential vectors (co-normal) (see Fig. 1(a)) on these curves. Eachboundary or inner sharp feature curve is defined as a piecewisecubic B-spline whose control points are equally-spaced. The

Page 4: Author's personal copylsec.cc.ac.cn/~xuguo/papers/1-s2.0-S0010448513001632-main.pdf · interpolation constraints was proposed in [9]. Complicated surface shapes are often produced

Author's personal copy

112 Q. Pan et al. / Computer-Aided Design 46 (2014) 110–119

interpolated boundary control points serve as the end-points of theB-spline curves. The generated surface not only possesses a certainglobal (G0 or G1) smoothness, but also satisfies certain boundaryconditions where the G0 boundary condition means interpolatingthe boundary and inner sharp feature curves, and the G1 boundarycondition means interpolating these curves and the prescribedtangential vectors. Our algorithm contains four main steps:Step 1: Specify the co-normal conditions on the given boundariesand inner sharp feature curves if the Willmore flow is used;Step 2: Evolve the hybrid mesh using our geometric PDEs;Step 3: Regularize the mesh control points using an L2 gradientflow; andStep 4: Check the termination condition and go to Step 2 if it is notsatisfied.

Since we adopt theWillmore flow and themean curvature flowin our algorithm, let us first review them. The governing equationfor the Willmore flow is as follows:∂x∂t

= −[∆sH + 2H(H2− K)]n,

S(0) = S0, ∂S(t) = Γ ,

nc(x) = n(Γ )c (x), ∀x ∈ Γ ,

(1)

where x is the surface point of S,∆s is the Laplace–Beltrami opera-tor defined on S,Γ is the boundary curve of the surface S, and n(Γ )cis the given co-normal on the boundary curveΓ .H, K andn denotethemean curvature, theGaussian curvature and the surface normalof S, respectively. To solve Eq. (1), we use the followingmixed vari-ational form (see [29] for details): find (x,H) ∈ H2(S)3 × H1(S)3

such that

S

∂x∂tφ dA +

S

[φ ⊘ H − n(∇sφ)T∇sH]n dA

+

S

2n(H2− K)φnTH dA = 0, ∀φ ∈ H1

0 (S),S

Hψ dA +12

S

(∇sx)T∇sψ dA

−12

∂S

ncψ ds = 0, ∀ψ ∈ H1(S),

S(0) = S0, ∂S(t) = Γ , nc(x) = n(Γ )c (x), ∀x ∈ Γ ,

(2)

where H is the mean curvature vector of S.The governing equation of the Mean Curvature Flow is∂x∂t

= ∆sx,S(0) = S0, ∂S(t) = Γ .

(3)

The mixed variational form for the mean curvature flow is asfollows (see [28] for details): find x ∈ H2(S)3, such that

S(t)

∂x∂tφ + (∇sx)T∇sφ

dA = 0, ∀φ ∈ H1

0 (S),

S(0) = S0, ∂S(t) = Γ .

(4)

Eqs. (2) and (4) are solved using the finite element method (seeSection 3) in the space defined by a hybrid surface subdivisionscheme.

3. Subdivision-based finite element method

The variational forms of the two adopted geometric PDEs arediscretized in certain finite element function spaces. Here, wechoose subdivision basis functionswhich are piecewise high-orderpolynomials. The superiority of using these high-order elementsover traditional linear/bilinear elements is listed in the following.

(i) If we choose the traditional linear elements to represent thegeometric terms of our variational formulation of the Will-more flow, the mean and Gaussian curvatures will vanish.Hence the flow cannot be correctly represented, and thus itcannot be correctly discretized.

(ii) The basis functions of the space defined by Loop’s and Cat-mull–Clark subdivision have the compact support within 2-ring neighboring vertices, which is stronger than the supportof the hat basis functions (within 1-ring neighboring vertices).Due to this reason, for linear elements, tiny surface patcheswill yield very small elements in the matrix of the discretizedlinear systems, which makes the numerical condition of thesystems worsen.

(iii) High-order elements can essentially represent surfaces moreaccurately than the traditional linear/bilinear elements. Withfinite dimensional high-order smooth functions instead of lin-ear elements, related quantities such as gradients, tangents,normals and curvatures can be computed directly and exactly.The framework of using high-order smooth basis functions al-lows us to trade off accuracy and speed with computationalcomplexity.

(iv) Curvature continuous surface can be achieved except the lo-cal region around extraordinary vertices, where the surface isC1-continuous (see [3,4]). While for linear/bilinear elements,the surface continuity is C0.

In the following subsections, we describe how the finite ele-ment space is defined, and how to evaluate the surface and finiteelement basis functions.

3.1. Definition of basis functions and finite element function space

Let x1, . . . , xn1 be the vertex set of the control mesh. Weassociate each control vertex xi of the surface S with a basisfunctionφi which depends upon themesh local topology around xi,and is independent of the vertex positions. The basis function φi isdefined as the limit function of the hybrid subdivision scheme andit takes 1 at vertex xi and 0 at all other neighboring vertices. Hencethe support of φi is local and it covers the 2-ring neighborhood ofvertex xi.

Let x1, . . . , xn0 (n0 ≤ n1) be the set of all the interior vertices.Then we define the following two finite element spaces to repre-sent the subdivision surface and its mean curvature, respectively,

E(0)h = spanφ1, . . . , φn0, E(1)h = spanφ1, . . . , φn1.

The unknowns x and H in Eqs. (2) and (4) are represented as

x(t) =

n0j=1

φjxj(t)+

n1j=n0+1

φjxj, (5)

H(t) =

n1j=1

φjHj(t), (6)

where xj(t) ∈ R3 (j = 1, . . . , n0) are the unknown interior ver-tices, xj ∈ R3 (j = n0 + 1, . . . , n1) are the fixed boundary vertices,and Hj(t) ∈ R3 (j = 1, . . . , n1) are the unknown mean curvaturenormals.

Substituting (5) and (6) into (2) and (4), respectively, by takingH1

0 (S) = E(0)h and H1(S) = E(1)h , we obtain two linear systems(see [28,29]). The computation of the matrix elements involves in-tegration over boundary curves and surface patches. The boundarycurves are cubic splines over equidistant knots. The integrations onthese curves are computed by 4-point Gaussian quadrature formu-las. The integration over surface is computed as a summation of thenumerical integrations of Gaussian quadrature formulas over sur-face patches (see Section 3.4). Each surface patch is defined locally

Page 5: Author's personal copylsec.cc.ac.cn/~xuguo/papers/1-s2.0-S0010448513001632-main.pdf · interpolation constraints was proposed in [9]. Complicated surface shapes are often produced

Author's personal copy

Q. Pan et al. / Computer-Aided Design 46 (2014) 110–119 113

a b

Fig. 2. (a) A regular triangular patch with its neighboring 12 control vertices; and(b) a regular quadrilateral patch with its neighboring 16 control vertices.

by its control vertices and their 1-ring neighboring vertices; there-fore the bandwidth of the coefficient matrix in the linear systemsis the number of 3-ring neighbors. For each time step of the evolu-tion, the systems need to be updated since the surface is changed.However, the values of the basis functions do not need to be re-computed.We speed up our PDE evolution through pre-computingbasis functions and storing them in a data structure.

3.2. Hybrid subdivision scheme

The control vertices of the hybrid mesh are classified as bound-ary vertices, sub-boundary vertices and interior vertices. Edges aretagged as boundary edges, sub-boundary edges and interior edges.Boundary edges are at the boundary of the controlmesh in general,but they could also lie in the interior of the mesh and are calledsharp features. The sub-boundary edges are the ones that are notboundary edges but incident to boundary vertices. The remaindersare called interior ones. Then patches can be named as boundarypatches, sub-boundary patches and interior patches. The patchescontaining boundary vertices are named as boundary patches. Theones adjacent to the boundary patches are called sub-boundarypatches. All the others are called interior ones.

To handle a control mesh consisting of triangles and quadrilat-erals, we need a hybrid subdivision scheme. In this paper, we adopta generalized hybrid subdivision algorithm proposed by Stam andLoop (see [32] for the algorithm details) that unifies the well-known Loop’s and Catmull–Clark subdivision schemes and resultsin C1 subdivision surface everywhere except at the boundaries. Thesubdivision scheme is a linear and local refinement algorithm. Itincludes the rules of vertex recomputation, edge insertion pointsand additional face insertion points only for quadrilateral patches.Rules of vertex recomputation require that all old vertices of the re-finedmesh get new positions except boundary vertices to be fixed.Rules of edge insertion points require generating a new vertex oneach edge where it needs to be redefined around boundary andsub-boundary edges (see [10]). Only for quadrilateral patches, rulesof face insertion points require generating a new vertex in themid-dle of each patch. Therefore, each quadrilateral is subdivided lin-early into four sub-quadrilaterals, and each triangle is subdividedlinearly into four sub-triangles.

The limit surface of the hybrid subdivision consists of triangu-lar and quadrilateral surface patches. An interior triangular patch,whose 1-ring neighboring patches are triangular and three controlvertices have a valence of 6, can be exactly described by a quarticbox-spline. We name such a patch as a regular patch. An interiorquadrilateral patch, whose 1-ring neighboring patches are quadri-lateral and the control vertices have a valence of 4, can be exactlydescribed by a uniformbicubic B-spline.We also name such a patchas a regular one. In this paper, the finite element method only in-volves the surface evaluation of regular patches by bringing theintegration knots into regular patches (see Section 3.5). The evalu-ations of the regular patches are described in the next subsection.

Remark 1. An important feature of the hybrid subdivision scheme(see [32]) we adopted here is that at the boundaries (includinginterior boundaries), vertices of the refined control mesh are notrelated to the interior vertices of the original control mesh. Due tothis reason, the basis functions φi at the interior vertices vanishat the boundaries. This feature is the basis for achieving sharpfeatures in the subdivision surface.

3.3. Evaluation of regular surface patches

A regular triangular patch can be controlled by 12 basis func-tions (see [4]):

x(u, v) =

12i=1

Ni(u, v)xi,

where the label i refers to the local numbering of 12 control ver-tices that is shown in Fig. 2(a). The basis Ni are given as follows:

N1 =112(w4

+ 2w3u), N2 =112(w4

+ 2w3v),

N3 =112

[w4+ u4

+ 6w3u + 6wu3+ 12w2u2

+ (2w3+ 2u3

+ 6w2u + 6wu2)v],

N4 =112

[6w4+ 24w3(u + v)+ w2(24u2

+ 60uv + 24v2)

+w(8u3+ 36u2v + 36uv2 + 8v3)

+ (u4+ 6u3v + 12u2v2 + 6uv3 + v4)],

where (w, u, v) are barycentric coordinates of the triangle withvertices numbered as 4, 7, 8, and w = 1 − u − v. We get N10,N6,N11,N7 by replacing (w, u, v) by (u, v, w) inN1,N2,N3,N4, and getN9,N12,N5,N8 by replacing (w, u, v) by (v,w, u) inN1,N2,N3,N4.

A regular quadrilateral patch can be represented by 16 basisfunctions (see [3]):

x(u, v) =

16i=1

Bi(u, v)xi,

where the label i refers to the local sorting of 16 control verticesshown in Fig. 2(b), and u, v are the barycentric coordinates of thisshaded patch in Fig. 2(b). The 16 basis functions Bi are

Bi(u, v) = N(i−1)%4(u)N(i−1)/4(v),

where ‘‘%’’ and ‘‘/’’ stand for the remainder and division respec-tively. The functions Ni(t) are the cubic uniform B-spline basisfunctions:

N0(t) = (1 − 3t + 3t2 − t3)/6, N1(t) = (4 − 6t2 + 3t3)/6,

N2(t) = (1 + 3t + 3t2 − 3t3)/6, N3(t) = t3/6.

3.4. Numerical integration over subdivision surface

The discretizations of Eqs. (2) and (4) lead to two linear systems.The matrix elements of these systems are computed as a summa-tion of the numerical integrations over the unit triangle and unitsquare. These integrations are computed using the 4-point Gaus-sian quadrature formula. It is known that the algebraic precisionof the 4-point Gaussian quadrature rules is three. Hence, the erroris O(h4), where h is the maximal edge length of the control mesh.In order to increase the precision of the numerical integration, thecurrent control mesh needs k times subdivision before the numer-ical integration, that is, the integration over each surface patch iscomputed by first dividing the patch into 4k sub-patches, and thenthe 4-point Gaussian quadrature rule is used on each sub-patch.

Page 6: Author's personal copylsec.cc.ac.cn/~xuguo/papers/1-s2.0-S0010448513001632-main.pdf · interpolation constraints was proposed in [9]. Complicated surface shapes are often produced

Author's personal copy

114 Q. Pan et al. / Computer-Aided Design 46 (2014) 110–119

Table 1Gaussian knots for quadrilateral patches.

Knots Coordinates Sub-domain Local coordinates

q1 (0.211324, 0.211324) Ω22 (0.690598, 0.690598)q2 (0.211324, 0.788675) Ω27 (0.690598, 0.309401)q3 (0.788675, 0.211324) Ω72 (0.309401, 0.690598)q4 (0.788675, 0.788675) Ω77 (0.309401, 0.309401)

Let M(0) be the current control mesh and M(k) be the meshafter k times subdivision using the hybrid subdivision schemedescribed in Section 3.2. It is well known that the 4-point Gaussianintegration rule has an error ofO(h4

k) over each patch of the controlmeshM(k), where hk is themaximal edge length ofM(k). Therefore,we take the number k of the subdivision such that

h4k < ϵ, (7)

where ϵ is a small value like ϵ = 0.0001. Then we compute theGaussian integration over each sub-patch after the initial subdivi-sion.

Remark 2. In the error bound O(h4k) = Ch4

k , the constant C is un-known in general. In determining the number k of subdivisions, wesimply ignore the constant (means taking C = 1). Furthermore, theerror bound O(h4

k) holds only for properly smooth functions. Forthe irregular surface patches, the smoothness is C1 only. Hence, thedetermination of the subdivision number k does not guarantee thatthe integration error is within the control bound ϵ. A more elabo-rate integration scheme could be devised by subdividing each sur-face patch defined byM(0) locally and adaptively till the differenceof the integrations on the patch is within a given threshold. How-ever, the computational cost and the implementation complexitywould be high. Therefore, we prefer to use a simple and fast inte-gration strategy.

3.5. Bring Gaussian knots into regular patches

Each sub-quadrilateral patch has only one old control vertexand three newly generated control vertices after each refinementstep. To evaluate the surface and the basis functions exactly, weneed to subdivide the surface repeatedly such that each Gaussianknot locates in a regular patch. Let us first consider a localparametrization of the sub-quadrilateral patch. We define T asT = (u, v) ∈ R2, 0 ≤ u ≤ 1, 0 ≤ v ≤ 1. The unit square T inthe (u, v)-plane may be used as a master element domain. Let theparameter coordinate of the old control vertex be (u, v) = (0, 0). Itis easy to see that the outside domain adjacent to the boundaries ofthe unit square domain with the parametric value u = 0 or v = 0canbequadrilateral, triangular or empty; however the outside sub-patch adjacent to the boundaries of the unit square domain withthe parametric value u = 1 or v = 1 is still quadrilateral. Theparameter values (u, v) of the 4 Gaussian points for the numericalintegration are q1, . . . , q4, which are listed in the second columnof Table 1. Each Gaussian knot locates in a regular sub-domain (seeFig. 3(a) and (b)) after subdividing the unit square three times. Thethird columnof Table 1 lists the sub-domains that containGaussianknots. The fourth column lists the local coordinates of the Gaussianknots with respect to the sub-domains that contain the Gaussianknots.

Three sub-triangle patches have only one old control vertex andtwo newly generated control vertices; the remaining sub-trianglepatch in the middle has three newly generated control vertices af-ter each refinement step. Nowwe consider a local parametrizationof the sub-triangle patch. We define T as T = (u, v) ∈ R2, u ≥

0, v ≥ 0, u + v ≤ 1. The unit triangle T in the (u, v)-plane maybe used as a master element domain. For the three sub-patches

a b

Fig. 3. A unit square. (a) The black dots are the Gaussian knots on the unit square;and (b) the square is subdivided three times to bring the Gaussian knots into regularsub-squares.

a b

Fig. 4. Aunit triangle. (a) The black dots are the Gaussian knots on the unit triangle;and (b) the triangle is subdivided three times to bring the Gaussian knots intoregular sub-triangles.

Table 2Gaussian knots for triangular patches.

Knots Coordinates Sub-domain Local coordinates

t1 1115 ,

215 ,

215

Ω22

1315 ,

115 ,

115

t2

215 ,

215 ,

1115

Ω62

115 ,

115 ,

1315

t3

215 ,

1115 ,

215

Ω26

115 ,

1315 ,

115

t4

13 ,

13 ,

13

Ω33

13 ,

13 ,

13

respectively with only one old control vertex, we let the param-eter coordinate of the old control vertex be (u, v) = (0, 0). Theoutside domain adjacent to the boundaries of their unit triangledomainwith the parametric value u = 0 or v = 0 can be quadrilat-eral, triangular or empty; however the outside sub-patch adjacentto the boundaries of the unit triangle domain with the paramet-ric value w = 0 is still triangular. For the middle sub-patch, all ofits three sub-patches adjacent to the boundaries are triangles. Theparameter values (u, v) of the 4 Gaussian points for the numeri-cal integration are chosen to be t1, . . . , t4, which are listed in thesecond column of Table 2. Each Gaussian knot locates in a regularsub-domain (see Fig. 4(a) and (b)) after subdividing the unit trian-gle three times. The third column of Table 2 lists the sub-domains.The fourth column lists the local coordinates of the Gaussian knotswith respect to the sub-domains that contain the Gaussian knots.

In summary, we have in fact proved the following lemma byusing the above square and triangle patches.

Lemma 1. Subdividing the controlmesh 3 times brings all the 4-pointGaussian knots over triangles and quadrilaterals into regular patches.

Let K = k + 3. Then we subdivide the current control mesh Ktimes and then evaluate the surface and basis functions. Now allthe Gaussian knots are in regular patches. The subdivision surfaceand the basis functions can be evaluated exactly at the Gaussianknots using the formulas given in Section 3.3.

Now let us summarize the algorithm steps. LetM(0) be the cur-rent control mesh and M(k) be the mesh after k times subdivisionusing the hybrid subdivision scheme described in Section 3.2.

Page 7: Author's personal copylsec.cc.ac.cn/~xuguo/papers/1-s2.0-S0010448513001632-main.pdf · interpolation constraints was proposed in [9]. Complicated surface shapes are often produced

Author's personal copy

Q. Pan et al. / Computer-Aided Design 46 (2014) 110–119 115

Algorithm outline

(i) Subdivide the control mesh M(0) repeatedly till condition (7)is satisfied, obtaining control meshM(k).

(ii) On each surface patch defined byM(k), form the linear systemsfrom discretizing Eqs. (2) and (4) as follows.(a) Subdivide the control meshM(k)3 times, obtaining control

mesh M(K) with K = k + 3.(b) On each sub-patch, whose domains (domains Ω22,Ω27,

Ω72 andΩ77 for quadrilateral patches; domainsΩ22,Ω26,Ω62 and Ω33 for triangular patches) contain Gaussianknots, compute the related basis functions and their par-tial derivatives up to the second order.

(c) Compute the subdivision surface and its geometric entriesthat appear in Eqs. (2) and (4), such as curvatures, metric,at the Gaussian knots using the information of the basisfunctions and the control meshM(K).

(d) Compute the matrix elements in the linear systems.(iii) Solve the linear systems; then obtain a new controlmeshM(0).(iv) Stop the computation if the termination condition is satisfied,

otherwise go back to step (i). The termination condition is

max1≤i≤n0

∥xi(tk+1)− xi(tk)∥ < ϵτ (k),

where ϵ is a given threshold value; we take it as 10−5. x(tk+1)and x(tk) respectively are the approximate solution at the timetk+1 and tk where tk+1 = tk + τ (k).

Remark 3. To speed up the computation, basis functions and theirpartial derivatives up to the second order in step (ii)b can be pre-computed, since they are independent of the control mesh.

Remark 4. Through repeated subdivision using the hybridmethodpresented in Section 3.2, we bring all the Gaussian knots into reg-ular patches that can be exactly and easily evaluated. This strat-egy avoids the evaluation of the basis function at irregular patches.For evaluation of a pure triangular subdivision surface or purequadrilateral subdivision surface, fast algorithms have been pro-posed by Stam (see [30,31]). The key step in the fast algorithm isthe efficient evaluation of the eigenvalues of the subdivision ma-trix Av around the vertex with valence v. The eigenvalues of thesubdivision matrix Av have been computed and stored in a datastructure for v = 3, 4, . . . , 500 by Stam. However, for the hybridcontrol mesh, a similar fast algorithm has not been proposed yet.The main difficulty is that for each valence v, there are too many(about 2v) combinations of triangles and quadrilaterals aroundeach vertex. Our algorithm is not based on this kind of fast eval-uation algorithm.

Remark 5. In the above algorithm description, we did not clearlyaddress the issue of boundary conditions. One may wonder howthe boundary conditions are satisfied. It is easy to observe that theboundary vertices are fixed in Eq. (5) and the basis functions at theinterior vertices vanish at the boundary (see Remark 1). Hence, theG0 boundary condition is automatically satisfied. Sharp featuresare achieved at the boundaries because the adopted subdivisionscheme has such a property. For the Willmore flow, the G1

boundary condition is satisfied because the boundary integrationterm

∂S

ncψ ds is included in Eq. (2).

Remark 6. It should be pointed out that the construction algo-rithm can be used to solve other second order and fourth orderGPDEs, such as averaged mean curvature flow, Gaussian curva-ture flow, surface diffusion flow, and quasi surface diffusion flow(see [19] for more second and fourth order GPDEs). The controlmesh could be pure triangular, pure quadrilateral or hybrid. Hence,the proposed method is quite general. However, it cannot be useddirectly to solve sixth order equations.

4. Hybrid tri–quad surface mesh regularization

The surface evolution process driven by geometric PDEs mayproduce very irregularmeshwhich results in ill-conditioned linearsystems, and there even appears singular phenomena. A recentwork [33] considers the questionwhether themean curvature flowcan be modified to avoid the formation of singularities. In thispaper we adopt mesh regularization to reduce the possibility ofthe collapse of geometric PDE evolution, and make our resultingsurfaces with high quality. Suppose S is a piece of surface patchconsisting of triangular and quadrilateral control polygons withfixed boundaries and inner sharp feature curves, we intend toregularize it by relocating its interior vertices on their tangentialplane because the tangent movement does not change the shapeof surfaces. Let A1 be the sum area of all triangular polygons withthe numberm1 and A2 be the sum area of all quadrilateral polygonswith the numberm2. Denote

a =

24√3

A1m1

+

A2m2

2,

where a is the expected edge length if all triangles are equilateraland all quads are squares. We define the regularization energy as

E(S) =12

ni=1

j∈N(i)

(∥xj − xi∥ − a)2,

where N(i) is the index set of all the 1-ring neighboring interiorvertices of xi. We relocate every interior vertex xi asxi → xi + ϵiΦi, Φi ∈ R3, i = 1, . . . , n,for a given Φi ∈ R3. E(S) can be denoted as E(S, ϵ1, . . . , ϵn). Wehave∂E(S, ϵ1, . . . , ϵn)

∂ϵi

ϵi=0

=

j∈N(i)

(∥xj − xi∥ − a)ΦT

i (xi − xj)∥xi − xj∥

.

We construct a system of two sets of L2 gradient flow to minimizeE(S)

dxidt

+ e(l)i (e(l)i )

Tj∈N(i)

(∥xj − xi∥ − a)xi − xj

∥xi − xj∥= 0,

i = 1, 2, . . . , n, l = 1, 2, (8)

where e(1)i and e(2)i are the two tangential directions at xi. Wediscretize (8) as

x(k+1)i + τe(l)i (e

(l)i )

T

j∈N(i)

(∥x(k)j − x(k)i ∥ − a)x(k+1)i − x(k+1)

j

∥x(k)i − x(k)j ∥

= x(k)i , i = 1, 2, . . . , n, l = 1, 2.

The initial value is chosen as x(0)i = xi. e(1)i and e(2)i are computed

using the surface data at the time step k. We also use Saad’siterative method (see [34]), named GMRES, to solve this system.The time step-size is chosen to be O(h), where h is the maximumlength of the controlmesh. The regularization step is stoppedwhenthe difference between the maximum and the minimum edgelength is less than half of the minimum edge length. We show theeffect of our regularization technology in Fig. 5. It is obvious thatthe control points in the surface patch become notably uniformthrough our L2 gradient flow action.

5. Examples and discussion

In this section, we present several examples to illustrate thatthe proposed method is effective. Suppose we are given severalboundaries and inner sharp feature curves which need to beinterpolated for the G0 boundary condition for the mean curvatureflow, and additional co-normals on them as the G1 boundarycondition for the Willmore flow.

Page 8: Author's personal copylsec.cc.ac.cn/~xuguo/papers/1-s2.0-S0010448513001632-main.pdf · interpolation constraints was proposed in [9]. Complicated surface shapes are often produced

Author's personal copy

116 Q. Pan et al. / Computer-Aided Design 46 (2014) 110–119

Fig. 5. (a) The hybrid tri–quad control mesh of a surface patch before regularization; and (b) the hybrid tri–quad control mesh of the surface patch after regularization. Theregularization is looped 10 times with the time step-size 0.05.

Fig. 6. Mechanical part 2. (a) shows the inner sharp feature curves where the prescribed co-normals on them are rendered by short straight lines. (b) is an initial surfacewith randomly distributed tri–quad polygons. (c) describes the final surface produced by the Willmore flow. The yellow part consists of triangular surface patches, and thegray part consists of quadrilateral surface patches. (For interpretation of the references to colour in this figure legend, the reader is referred to the web version of this article.)

5.1. Examples of the Willmore flowFigs. 1, 6 and 7 show three models designed by using the

Willmore flow. The G1 boundary conditions are the inner sharpfeature curves and the prescribed co-normals on them as shown in(a). The initial constructions are described in (b) where the modelin Fig. 6 has randomly distributed tri–quad meshes. To show thatthe adopted geometric PDEs have the capability of improving thequality of the constructed surfaces, noises are added to the initialcontrol meshes. The resulting subdivision PDE surfaces are shownin (c).

The final shape of the constructed surfaces is determined by:(1) the boundary curves; (2) the co-normals at the boundarycurves; and (3) the driven geometric PDE. It is well known thatthe Willmore flow minimizes the total squared mean curvature.Table 3 lists the total squared mean curvatures of the initialsurfaces and the final surfaces for each case. It is easy to see thatthe total squared mean curvatures are significantly reduced. Onemay wonder: could the total squared mean curvature be close tozero? Our observation is that the total squared mean curvaturedepends on how the co-normal is given. If the co-normals are givenas the co-normals of the minimal surface, the total squared meancurvature will be close to zero. The total squared mean curvatureis computed by the Gaussian quadrature described in Section 3.

Playing with the co-normals at the boundary, the designershave an instrument to alter the surface shape to obtain thedesirable design. However, sometimes specifying co-normals maynot be an easy task for the shape designer, and a default choice ofthe co-normals is to take themas zeros. This implies that there is nonormal control for the shape. In this case, the minimal surface willbe the final surface. From Eq. (1), we know that a surface with zeromean curvature is indeed the steady solution of theWillmore flow.

Table 3Total squared mean curvature (TSMC) forinitial surface (IS) and final surface (FS).

Models TSMC for IS TSMC for FS

Fig. 1 491.291 17.9231Fig. 6 296.969 1.8162Fig. 7 715.663 13.3834

5.2. Examples of the mean curvature flowWe present two examples for the mean curvature flow. The

streamline architecture design has a distant origin and a long de-velopment in Chinese old architecture, which was especially em-bodied in the roof design. They are myriads of changes and fullof magnificent carriage with the remarkable character of smoothcurves and upturned eaves. The roof in Fig. 8 resulted from themean curvature flow, which is an outstanding Chinese old archi-tecture, named Yueyanglou. In addition, we designed an outdoorpavilion; see Fig. 9. The pavilion consists of four parts which areopen surfaces. We achieved four minimum surfaces by using themean curvature flow. The boundary curves are given in (a). The ini-tial construction result and the final PDE surfaces are shown in (b)and (c).

Since the steady solution of the mean curvature flow is theminimal surface, the mean curvatures of the final surface are closeto zero and the area of the surface is minimized. Table 4 lists thearea and themaximal absolute values of themean curvature for theinitial construction result and the final surface. It is easy to observethat the area is significantly reduced and the maximal absolutevalue of the mean curvature is close to zero. This verifies that theproposed method is effective. The area of the subdivision surfaceis computed by the Gaussian quadrature described in Section 3.

Page 9: Author's personal copylsec.cc.ac.cn/~xuguo/papers/1-s2.0-S0010448513001632-main.pdf · interpolation constraints was proposed in [9]. Complicated surface shapes are often produced

Author's personal copy

Q. Pan et al. / Computer-Aided Design 46 (2014) 110–119 117

Fig. 7. Mechanical part 3. (a) shows the boundaries and inner sharp feature curves where the prescribed co-normals on them are rendered by short straight lines; (b)describes a simple and coarse initial constructed surface mesh; and (c) is the final surface produced by the Willmore flow. The yellow part consists of triangular surfacepatches, and the gray part consists of quadrilateral surface patches. (For interpretation of the references to colour in this figure legend, the reader is referred to the webversion of this article.)

Fig. 8. Chinese architecture YueYanglou. (a) shows the boundary and inner sharp feature curves. (b) describes a simple and coarse initially constructed surface. (c) is thefinal surface which is produced by the mean curvature flow. The yellow part consists of triangular surface patches, and the golden part consists of quadrilateral surfacepatches. (For interpretation of the references to colour in this figure legend, the reader is referred to the web version of this article.)

Fig. 9. An outdoor pavilion. (a) shows the boundary and inner sharp feature curves; (b) describes a simple and coarse initially constructed surface; and (c) is the final surfacewhich is produced by the mean curvature flow. The yellow part consists of triangular surface patches, and the golden part consists of quadrilateral surface patches. (Forinterpretation of the references to colour in this figure legend, the reader is referred to the web version of this article.)

The maximal mean curvature is approximated by computing themaximal mean curvature at the Gaussian knots.

Table 5 shows the time cost for the fivemodels.WeusedC++ inthe Linux system running on a Dell PC with a 2.4 GHz Q6600Intel CPU. In this table, the second column shows the adoptedgeometric PDEs, and the third column is the number of triangu-lar/quadrilateral patches. The fourth and fifth columns are the time

Table 4Area and maximal mean curvature (MMC) for initial surface (IS) and final surface(FS).

Models Area for IS Area for FS MMC for IS MMC for FS

Fig. 8 252.718 168.378 15.591 0.00598Fig. 9 86.445 47.932 13.325 0.00749

Page 10: Author's personal copylsec.cc.ac.cn/~xuguo/papers/1-s2.0-S0010448513001632-main.pdf · interpolation constraints was proposed in [9]. Complicated surface shapes are often produced

Author's personal copy

118 Q. Pan et al. / Computer-Aided Design 46 (2014) 110–119

Fig. 10. (a) is the initial construction of a tri-pipe. (b)–(d) show the given G1 boundary condition where we specify zero co-normals on the given boundary curves in (b).(b′)–(d′) are their corresponding results through ourmethod. The black curves rendered on the surfaces from (b′′) to (d′′) are the iso-curves of themean curvature. All resultsare obtained using the Willmore flow evolution with 80 iteration steps, and the time step-size is set as 0.0005.

Table 5Time cost for six models.

Models Flow Tris/Quadrics B. F. C. M. τ One GMRES Steps

Fig. 1 WF 1088/3096 3.02 0.76 0.005 0.01171 32Fig. 6 WF 2990/1449 4.87 0.87 0.005 0.01378 41Fig. 7 WF 24,960/10,880 26.1 11.88 0.00005 0.18324 88Fig. 8 MCF 3072/5120 3.01 1.12 0.05 0.00822 42Fig. 9 MCF 1408/2048 1.38 0.34 0.05 0.00133 26

cost (in second) for computing their corresponding basis functionsand forming the coefficient matrix of the linear systems, respec-tively. The sixth column is the temporal step-size for geometricPDE evolution. The seventh column is the time cost of one stepGMRES iteration, and the eighth column is the number of itera-tion steps to obtain the final results where the threshold is 10−5.We should mention that the computation in the fourth column isperformed one time before the flow evolution, and the computa-tion in the fifth column should be performed in every step of theflow evolution.

We use the Willmore flow to show, in Fig. 10, the effect ofour approach for different boundary conditions. The initial surfacewith a tri–quad topological mesh is rendered in (a). The boundarycurves with different specified co-normals are rendered in (b),(c) and (d). Three different shapes of resulting surfaces whichcorrespond to three different G1 boundary conditions are rendered(b′), (c′) and (d′). In (b) we do not specify the co-normals (zeroco-normals) on the boundaries. From this example, we can seethat setting the co-normals to zero is a desirable default becauseit removes the trouble of co-normal specification. The black curvesrendered on the surfaces from (b′′) to (d′′) are the iso-curves of themean curvature. The smoother the iso-curves, the more uniformlydistributed the mean curvature. This example shows the power ofour approach for the freeform shape design.

6. Conclusion and future work

In this paper we introduced a novel and unified hybrid sub-division geometric PDE method to design freeform surfaces con-taining both triangular and quadrilateral patches. Our method isefficient, and we can uniformly treat both outer boundaries and

inner sharp feature conditions. We have successfully completedshape design and modification with the facilitation of geomet-ric PDEs and boundary condition control. We believe that our re-search provides an efficient and advanced tool to design high-quality freeform surfaces. It can greatly give more freedom enrich-ing the design space, and improve the control and quality of surfaceshapes.

We do not give the convergence proof for our finite elementmethod based on the subdivision technology which will be part ofour future work. Moreover, it is important to further construct thesubdivision surface using higher-order geometric PDEs in specialindustry manufacture, such as the design of car bodies and shiphulls. We intend to investigate how to use this subdivision finiteelement system to design a G2 smooth surface in the future.

Acknowledgments

The first author (Qing Pan) of this paper was supported in partby National Natural Science Foundation of China (No. 11171103)and Scientific Research Fund of Hunan Provincial EducationDepartment (No. 12K029). The second author (Guoliang Xu) wassupported in part byNSFC under the grants (11101401, 81173663),NSFC key project under the grant (10990013) and NSFC Fundfor Creative Research Groups of China (grant No. 11021101). Thethird author (Yongjie Zhang) was supported in part by her NSFCAREER Award OCI-1149591, ONR-YIP award N00014-10-1-0698and AFOSR grant FA9550-11-1-0346.

References

[1] Warren J, Weimer H. Subdivision methods for geometric design. MorganKaufmann publisher; 2001.

[2] Chaikin G. An algorithm for high speed curve generation. Computer Graphicsand Image Processing 1974;3(4):346–9.

Page 11: Author's personal copylsec.cc.ac.cn/~xuguo/papers/1-s2.0-S0010448513001632-main.pdf · interpolation constraints was proposed in [9]. Complicated surface shapes are often produced

Author's personal copy

Q. Pan et al. / Computer-Aided Design 46 (2014) 110–119 119

[3] Catmull E, Clark J. Recursively generated B-spline surfaces on arbitrarytopological meshes. Computer-Aided Design 1978;10(6):350–5.

[4] Loop C. Smooth subdivision surfaces based on triangles. Master’s thesis,Department of Mathematices, University of Utah; 1978.

[5] Doo D, Sabin M. Behavious of recursive division surfaces near extraordinarypoints. Computer-Aided Design 1978;10(6):356–60.

[6] Dyn N, Levin D, Gregory JA. A butterfly subdivision scheme for surfaceinterpolation with tension control. ACM Transactions on Graphics 1990;9(2):160–9.

[7] Kobbelt L. A variational approach to subdivision. Computer Aided GeometricDesign 1996;13(8):743–61.

[8] Loop C, Schaefer S. Approximating Catmull–Clark subdivision surfaces withbicubic patches. ACM Transactions on Graphics 2008;27(1):1–11.

[9] Nasri AH, Abbas A. Designing Catmull–Clark subdivision surfaces with curveinterpolation constraints. Computers & Graphics 2002;26(3):393–400.

[10] Biermann H, Levin A, Zorin D. Piecewise-smooth subdivision surfaces withnormal control. In: SIGGRAPH, 2000. p. 113–20.

[11] Hoppe H, DeRose T, Duchamp T, HalstendM, Jin H,McDonald J. et al. Piecewisesmooth surfaces reconstruction. In: Computer graphics proceedings, annualconference series, ACM SIGGRAPH. 1994. p. 295–302.

[12] Nasri AH. Surface interpolation on irregular networks with normal conditions.Computer Aided Geometric Design 1991;8:89–96.

[13] Peters J, Shiue L. Combining 4- and 3-direction subdivision. ACM Transactionson Graphics 2004;23(4):980–1003.

[14] Cirak F, Ortiz M, Schroder P. Subdivision surfaces: a new paradigm for thin-shell finite-element analysis. International Journal for Numerical Methods inEngineering 2000;47(12):2039–72.

[15] Jacobson A, Tosun E, Sorkine O, Zorin D. Mixed finite elements for variationalsurface modeling. In: Computer graphics forum, Vol. 29. Wiley Online Library;2010. p. 1565–74.

[16] Mandal C, Qin H, Vemuri BC. A novel FEM-based dynamic framework forsubdivision surfaces. In: Proceedings of the fifth ACM symposium on solidmodeling and applications. 1999. p. 191–202.

[17] Bloor MIG, Wilson MJ. Representing PDE surfaces in terms of B-splines.Computer-Aided Design 1990;22(6):324–31.

[18] Schneider R, Kobbelt L. Geometric fairing of irregular meshes for free-formsurface design. Computer Aided Geometric Design 2001;18(4):359–79.

[19] Xu G, Zhang Q. Geometric partial differential equation methods in computa-tional geometry. Beijing (China): Science Press; 2013.

[20] Mullins WW. Two-dimensional motion of idealised grain boundaries. Journalof Applied Physics 1956;27:900–4.

[21] Escher J, Simonett G. The volume preserving mean curvature flow nearspheres. Proceedings of the American Mathematical Society 1998;126(9):2789–96.

[22] Sapiro G, Tannenbaum A. Area and length preserving geometric invariantscale-spaces. IEEE Transactions on Pattern Analysis and Machine Intelligence1995;17:67–72.

[23] Firey WJ. On the shapes of worn stones. Mathematika 1974;21:1–11.[24] Bryant R. A duality theorem for Willmore surfaces. Journal of Differential

Geometry 1984;20:23–53.[25] Simon L. Existence of surfaces minimizing the Willmore functional. Commu-

nications in Analysis and Geometry 1993;1(2):281–326.[26] Xu G, Zhang Q. G2 surface modeling using minimal mean-curvature-variation

flow. Computer-Aided Design 2007;39(5):342–51.[27] Feng P, Warren JD. Discrete bi-Laplacians and biharmonic B-splines. ACM

Transactions on Graphics 2012;31(4):115.[28] Pan Q, Xu G. Construction of minimal subdivision surface with a given

boundary. Computer-Aided Design 2011;43(4):374–80.[29] PanQ, XuG. Construction of quadrilateral subdivision surfaceswith prescribed

G1 boundary conditions. Computer-Aided Design 2011;43(6):605–11.[30] Stam J. Fast evaluation of Catmull-Clark subdivision surfaces at arbitrary

parameter values. In: SIGGRAPH’98 proceedings, 1998, pp. 395–404.[31] Stam J. Fast evaluation of Loop triangular subdivision surfaces at arbitrary

parameter values. In: SIGGRAPH’98 proceedings, CD-ROM supplement. 1998.[32] Stam J, Loop C. Quad/triangle subdivision. Computer Graphics Forum 2003;

22(1):1–7.[33] Kazhdan M, Solomon J, Ben-Chen M. Can mean-curvature flow be modified to

be non-singular? Computer Graphics Forum 2012;31(5):1745–54.[34] Saad Y. Iterative methods for sparse linear systems. 2nd ed. Philadelphia (PA):

SIAM; 2003.