Journal of Computational and Applied Mathematics 215 (2008) 114 – 126 www.elsevier.com/locate/cam Optimal multi-degree reduction of triangular Bézier surfaces with corners continuity in the norm L2 Qian-Qian Hu, Guo-Jin Wang∗ Department of Mathematics, State Key Laboratory of CAD&CG, Zhejiang University, Hangzhou 310027, PR China Received 10 August 2006; received in revised form 19 April 2007 Abstract This paper derives an approximation algorithm for multi-degree reduction of a degree n triangular Bézier surface with corners continuity in the norm L2 . The new idea is to use orthonormality of triangular Jacobi polynomials and the transformation relationship between bivariate Jacobi and Bernstein polynomials. This algorithm has a very simple and explicit expression in matrix form, i.e., the reduced matrix depends only on the degrees of the surfaces before and after degree reduction. And the approximation error of this degree-reduced surface is minimum and can get a precise expression before processing of degree reduction. Combined with surface subdivision, the piecewise degree-reduced patches possess global C 0 continuity. Finally several numerical examples are presented to validate the effectiveness of this algorithm. © 2007 Elsevier B.V. All rights reserved. Keywords: Triangular Bézier surface; Multi-degree reduction; Boundary constraint; Bivariate Bernstein polynomial; Bivariate Jacobi polynomial 1. Introduction Bézier curve/surface is one of the main mathematical models in CAD/CAM system [4]. Degree reduction of Bézier curve/surface is an important technique in geometric computation and geometric approximation [10], and has great significance for shape design. First it embodies in data transfer and exchange between CAD systems or in CAD system, because the highest allowable degree of Bernstein polynomial for curve/surface is generally different in different CAD systems or models. Next, degree reduction of curve/surface is favorable for data compression. With the popularization of digitized and network product design, data communication between design systems becomes quite frequent [8], and geometric data in design system has come to mass [18]. Therefore, the operation of degree reduction attracts a good deal of attention. Moreover, with the combination of surface subdivision, surface intersection can be reduced to plane intersection. And then surface can be rendered quickly. As for Bézier curves, research on degree reduction started about 20 years ago, and has an amount of publications on this subject. These fruits can be classified according to different norms used to error estimate. However, it is worth mentioning that these algorithms usually cannot preserve endpoints continuity, and then go against shape design. ∗ Corresponding author. Tel.: +86 571 87951609 8306. E-mail addresses: qianqianhu@hotmail.com (Q.-Q. Hu), wanggj@zju.edu.cn (G.-J. Wang). 0377-0427/$ - see front matter © 2007 Elsevier B.V. All rights reserved. doi:10.1016/j.cam.2007.04.022 Q.-Q. Hu, G.-J. Wang / Journal of Computational and Applied Mathematics 215 (2008) 114 – 126 115 Especially they do not work when a degree-reduced curve within a user-specified tolerance should be obtained by combining degree reduction with curve subdivision. Therefore, in the last 10 years, people attached importance to the technique on multi-degree reduction of Bézier curves with endpoints continuity. And some research papers came forth [1,3,6,21]. Although the practical technique most needed in engineering is degree reduction for surfaces but not for curves, relatively little has been published about degree reduction of Bézier surfaces. As for tensor product Bézier surfaces, Hu [12] and Chen [7], respectively, proposed the algorithms of one-degree reduction and multi-degree reduction with corners interpolation. The former perturbed its B-mesh and applied the technique of constrained optimization, and the latter used degree elevation of Bézier curves and approximation theory of Chebyshev polynomials. With regard to degree reduction of triangular Bézier surfaces, only Rababah [19] presented an algorithm for one-degree reduction based on the reverse process of degree elevation and further improved it for the condition of common tangent planes at the vertices [20]. And Hu [13] gave a method for one-degree reduction similar to [12]. As for multi-degree reduction of triangular Bézier surfaces, especially for multi-degree reduction with corners continuity, there is still little research about it. But it is a key algorithm which is frequently needed to use in current CAD system. Triangular Bézier surfaces are a more natural generalization of Bézier curves than tensor product surfaces [10]. Triangular Bézier surfaces possess a series of beautiful geometric properties [5]. People have recognized that triangular Bézier surfaces have flexible shape, wider application than tensor product surfaces in geometric modeling system, and are adapted to surface interpolation from scattered data and surface design on arbitrary topology mesh. Therefore, it is worth to study multi-degree reduction of triangular Bézier surfaces with corners continuity. The reason for we being interested in multi-degree reduction of surfaces is that degree reduction step by step brings accumulated error and increases time consuming; the reason for we being interested in degree reduction with corners constraint is for urgent needs in modeling system. In surface modeling, if the original triangular surface is approximated by a degree-reduced one, we hope that there is no excursion for corners position or derived vectors at the endpoints of its boundary curves. In other words, we need the original and degree-reduced surfaces possessing the same continuities at the endpoints of their boundary curves in two parameter directions. This request is for preserving the continuity for high times at the endpoints along its two corresponding boundary directions, which can be called corners continuity, corners interpolation, or corners constraint. Except for the two basic requests: multi-degree reduction and corners continuity, we think that a “good” algorithm for degree reduction should possess the following four characters: error forecast, explicit expression, less time consuming, and best precision. This paper is a summary of the research results to address these issues. We propose a novel algorithm for multi-degree reduction of triangular Bézier surfaces with different continuities at three corners in the norm L2 . This degree-reduced approximation not only has an explicit expression, but also has the minimum and exactly divinable approximation error. And it can be used to establish a criterion for the reduction within a user-specified tolerance, so that one can avoid unnecessary computation for degree reduction when the forecast error is not less than the tolerance. If the criterion is satisfied, the explicit formula for optimal multi-degree reduction with corners continuity is given. Whatever the judgment of feasibility for degree reduction or the calculation of the degree-reduced surface, its formula is very simple in matrix form. And the matrix depends only on the degrees of the surfaces before and after degree reduction. That is, we can calculate this series of matrices one time, and store them into a database before processing of degree reduction. It guarantees to quickly calculate the degree-reduced surface. As we all know, C a (a 0) continuity is always needed between adjacent patches in many practical CAD/CAM systems [10]. For piecewise triangular patches, the method preserves C 0 or C 1 continuity of the piecewise degree-reduced patches at boundary curves. It gains potential application in surface data communication and surface data compression in design system. The main idea of deriving our algorithm is to apply orthonormality of triangular Jacobi polynomials into geometric approximation, and to recur to the latest fruit about the transformation relationship between triangular Bernstein and Jacobi polynomials [15]. The paper is laid out as follows. We first give a brief introduction to triangular Bézier surfaces and describe the problem of multi-degree reduction with corners continuity in Section 2. In Section 3, we propose an efficient algorithm for constrained multi-degree reduction recurring to the orthonormality of weighted triangular Jacobi polynomials. Finally, the approximation error is analyzed and examples presented in Section 4 confirm the effectiveness of this approach. 116 Q.-Q. Hu, G.-J. Wang / Journal of Computational and Applied Mathematics 215 (2008) 114 – 126 2. Triangular Bézier surfaces and description of the problem Definition 1. A Bézier surface of degree n over a triangle T := {(s, t) : s, t 0, 1 − s − t 0} is defined by [10] Rn (u) = BIn (u)pnI , (1) |I|=n where I = (i, j, k), |I| = i + j + k, u = (s, t, r), |u| = s + t + r = 1,BIn (u) = i!jn!!k! s i t j r k are the bivariate Bernstein basis functions of degree n, and pnI = (px nI , py nI , pznI ) are the control points. There are (n + 1)(n + 2)/2 basis functions of degree n, which generally correspond (n + 1)(n + 2)/2 control points of the surface, respectively. n (s, t), and pn as pn . And we introduce a sorting method to For notational convenience, we rename BIn (u) as Bi,j i,j I arrange triangular Bernstein and Jacobi polynomials, and the control points of the surface, respectively, according to corresponding subscript. Definition 2. Lexicographic order [9]: Given two vectors , in dimension d 1. The vector is arranged before the vector , denoted as , if the first nonzero entry in the difference − = (1 − 1 , . . . , d − d ) is positive. Definition 3. Given a triangular Bézier surface of degree n expressed as n Rn (s, t) = Bi,j (s, t)pni,j = Bn (Pn )T , (2) i+j n where Bn , Pn are the row matrices of Bernstein polynomials and the control points in lexicographic order, respectively. The multi-degree reduction of the above surface with corners interpolation is to find a degree m (m < n) triangular m m m Bézier surface with the control points {qm i,j = (qx i,j , qy i,j , qzi,j )}i+j m expressed as m m m T Rm (s, t) = Bi,j (s, t)qm (3) i,j = B (Q ) , i+j m such that the distance between these two surfaces in the norm L2 reaches the minimum, i.e., min d(Rn (s, t), Rm (s, t)) = Rn (s, t) − Rm (s, t)2 ds dt. T At the same time, for the original surface (2) and degree-reduced surface (3), their three pairs of boundary curves have the same continuity at each endpoint, respectively. For example, for the case of s = 0, their boundary curves Rns (t) Fig. 1. A degree 3 triangular Bézier surface and the continuity at the corners along two corresponding boundary directions. Q.-Q. Hu, G.-J. Wang / Journal of Computational and Applied Mathematics 215 (2008) 114 – 126 117 c b and Rm s (t) have C and C continuities at their endpoints, respectively. That is, dk Rns (0) dk Rm s (0) = , k dt dt k dj Rns (1) dj Rm s (1) = , j dt dt j 0 j b, 0 k c. (4) Here (see Fig. 1) Rns (t) = n Bin (t)pn0,i , i=0 Rm s (t) = m Bim (t)qm 0,i . i=0 And the other two cases are handled in a similar fashion. 3. Multi-degree reduction of triangular surfaces with corners interpolation 3.1. Algorithm for control points of the constrained multi-degree reduction Recurring to the latest fruit about the transformation relationship between triangular Bernstein and Jacobi polynomials [15], this section applies the orthonormality of triangular Jacobi polynomials into degree reduction of triangular Bézier surfaces. At first, we present the definition of triangular Jacobi polynomial and its properties. (,.) (s, t)(n ∈ N; k = 0, 1, . . . , n) of degree n over T is given by [9] t (,,) (2k++,−1/2) k (−1/2,−1/2) Jn,k (s, t) = h−1 J (s)(1 − s) J , s, t 0, 1 − s − t 0, (5) n,k n−k k 1−s Definition 4. Bivariate Jacobi polynomial Jn,k where , , > − 21 , the nth shifted Jacobi polynomial in one variable [14] is (u + 1)n −n, n + u + v + 1 Jn(u,v) (t) = 1 − t , 0 t 1, F n! 2 1 u + 1 and denoting = + , = + + + 21 , there exists (,,) 2 h2n,k ≡ [hn,k ] = ( + 1/2)n−k ( + 1/2)k ( + 1/2)k (k + )n+1 . k!(n − k)!(2k + )(2n/ + 1)()n+k In this paper, the generalized hypergeometric series [2] is defined as ∞ i a1 , . . . , ai l=1 (al )k k z = z , j i Fj b1 , . . . , bj k=0 l=1 (bl )k where i, j ∈ Z+ , z, a1 , . . . , ai , b1 , . . . , bj ∈ C, ∀c ∈ C, (c)0 = 1, (c)k = k−1 l=0 (c + l), k 1. According to Definition 4, the Jacobi polynomials (5) over T are orthonormal with respect to the weight function (,,) (s, t) = A(,,) s −1/2 t −1/2 (1 − s − t)−1/2 , s, t 0, 1 − s − t 0, (6) where A(,,) = ( + + + 1/2)! . ( − 1/2)!( − 1/2)!( − 1/2)! That is, applying Kronecker mark i,j , we have (,,) (,,) (,,) (s, t)Jm,l (s, t)Jn,k (s, t) ds dt = m,n l,k . (7) T (1/2,1/2,1/2) This paper uses only a special kind of Jacobi polynomials Jn,k (1/2,1/2,1/2) J,k , so the abbreviated notation J,k for is used for = n, m. Also for ease of notation, we denote B , J as the row matrices of bivariate 118 Q.-Q. Hu, G.-J. Wang / Journal of Computational and Applied Mathematics 215 (2008) 114 – 126 Bernstein and Jacobi polynomials of degree in lexicographic order, respectively, and A , C as the transfer matrices from Bernstein to Jacobi bases, and from Jacobi to Bernstein bases of degree , respectively, here = n, m. Substituting = = = 21 into Theorem 2.1 and 2.3 in [15], we have the following two lemmas. And they present the transformation relationship between these kinds of Jacobi and Bernstein polynomials. n can be expressed by the Lemma 1. For any i, j, n ∈ N0 such that i + j n, the bivariate Bernstein polynomial Bi,j bivariate Jacobi polynomial Jk,l as n Bi,j (s, t) = k,l (n, i, j )Jk,l (s, t), 0l k n where (−1)k−l 2 · n!(i − n)l (n − k + 1)k−l (2l + 1)(k + 1)(k + l + 1)! k,l (n, i, j ) = (n + k + 2)! l!(l + 1)k+1 × Ql (j ; 0, 0, n − i)Qk−l (i; 0, 2l + 1, n − l), and Qm (t; , , M) = 3 F2 (8) −m, m + + + 1, −t 1 . + 1, −M n and J The aforementioned relationship between bivariate bases Bi,j k,l can be expressed in matrix form as Bn = Jn An , where A = n (9) An,m 1 An,m 2 = (ai,j ), a (n−k)(n+k+3) +k−l+1, (n−u)(n−u+3) −v+1 = k,l (n, u, v), 2 2 0 l k n, 0 u, u + v n. (10) n,m Here An,m 1 , A2 are the [(n−m)(n+m+3)/2]×[(n+1)(n+2)/2] matrix and [(m+1)(m+2)/2]×[(n+1)(n+2)/2] matrix, respectively. Lemma 2. For any k, l, n ∈ N0 such that l k n, the bivariate Jacobi polynomial Jk,l can be expressed by the n as bivariate Bernstein polynomials Bi,j n Jk,l (s, t) = i,j (n, k, l)Bi,j (s, t), i+j n where (−1)l (i − n)l (n − k + 1)k−l (2l + 1)(k + 1)(k + l + 1)! k,l (n, i, j ) = (−n)k l!(l + 1)k+1 × Ql (j ; 0, 0, n − i)Qk−l (i; 0, 2l + 1, n − l), (11) and Qm (t; , , M) is as shown in Lemma 1. n can be expressed in matrix form as The aforementioned relationship between bivariate bases Jk,l and Bi,j Jn = Bn Cn , (12) where Cn = (ci,j ), c (n−k)(n−k+3) −l+1, (n−u)(n+u+3) +u−v+1 = k,l (n, u, v), 2 2 0 k, k + l n, 0 v u n. (13) Q.-Q. Hu, G.-J. Wang / Journal of Computational and Applied Mathematics 215 (2008) 114 – 126 119 Remark 1. It is obvious that An is the inverse matrix of Cn because of the linear independence of the bases. Multi-degree reduction of triangular Bézier surfaces with corners interpolation can be divided into two steps as follows. First we calculate the constrained control points on the boundary curves of the degree-reduced surface; next, calculate the others according to the orthonormality of Jacobi polynomials. 3.1.1. Constrained control points of the degree-reduced surface To satisfy the corners interpolation conditions, we first degree-reduce the three boundary curves of the original surface (2) with endpoints interpolation to obtain the constrained control points on the control mesh boundary of the degree-reduced surface (3). Without loss of generality, herein we only discuss the case of s ≡ 0, i.e., a pair of boundary c b curves Rns (t) and Rm s (t) as in (4). These two curves possess C and C continuities at the endpoints t = 0, 1 respectively. m n To obtain the relationship between their control points p0,i and q0,i , we elevate the degree of the Bézier curve Rm s (t) from m to n. Then Lemma 3 is introduced: Lemma 3. Bernstein polynomial Bim (t) (0 t 1) of degree m can be represented by [5] Bim (t) = bi,j = n+i−m j =i m i Bjn (t)bi,j , n−m j −i n > m, i = 0, 1, . . . , m, n , j i = 0, 1, . . . , m, j = 0, 1, . . . , n. (14) c b Applying Theorem 1 in [5] and Lemma 3, we know that the two curves Rns (t) and Rm s (t) possess C and C continuities at the endpoints, respectively, if and only if the corresponding control points satisfy the following two formulae m m T I n n n T {qm 0,c , q0,c−1 , . . . , q0,0 } = Q(c+1)×(c+1) {p0,c , p0,c−1 , . . . , p0,0 } , m m T II n n n T {qm 0,m , q0,m−1 , . . . , q0,m−b } = Q(b+1)×(b+1) {p0,n , p0,n−1 , . . . , p0,n−b } , where ⎛b i,i ⎜ 0 ⎜ QI(i+1)×(i+1) = (b̃I,i k,l )0 k,l i = ⎝ .. . 0 ⎛ b bi−1,i bi−1,i−1 .. . 0 m,n ⎜ bm,n−1 II,j ⎜ . QII (j +1)×(j +1) = (b̃k,l )0 k,l j = ⎝ .. bm,n−j · · · b0,i ⎞−1 · · · b0,i−1 ⎟ .. .. ⎟ ⎠ , . . · · · b0,0 0 bm−1,n−1 .. . bm−1,m−j ··· ··· .. . 0 i c, 0 0 .. . (15) ⎞−1 ⎟ ⎟ ⎠ , 0 j b, (16) · · · bm−j,n−j and bk,l is as shown in (14). Then the other two boundary curves can be handled analogously. Finally, we have Theorem 1. The degree-reduced surface (3) and the original surface (2) satisfy the constrained condition (4), if and only if the constrained control points on the control mesh boundary satisfy m m T I n n n T {qm 0,c , q0,c−1 , . . . , q0,0 } = Q(c+1)×(c+1) {p0,c , p0,c−1 , . . . , p0,0 } , m m T II n n n T {qm 0,m , q0,m−1 , . . . , q0,m−b } = Q(b+1)×(b+1) {p0,n , p0,n−1 , . . . , p0,n−b } , m m T I n n n T {qm c,0 , qc−1,0 , . . . , q0,0 } = Q(c+1)×(c+1) {pc,0 , pc−1,0 , . . . , p0,0 } , m m T II n n n T {qm m,0 , qm−1,0 , . . . , qm−a,0 } = Q(a+1)×(a+1) {pn,0 , pn−1,0 , . . . , pn−a,0 } , 120 Q.-Q. Hu, G.-J. Wang / Journal of Computational and Applied Mathematics 215 (2008) 114 – 126 m m T I n n n T {qm b,m−b , qb−1,m−b+1 , . . . , q0,m } = Q(b+1)×(b+1) {pb,n−b , pb−1,n−b+1 , . . . , p0,n } , m m T II n n n T {qm m,0 , qm−1,1 , . . . , qm−a,a } = Q(a+1)×(a+1) {pn,0 , pn−1,1 , . . . , pn−a,a } , where the above six coefficient matrices are analogously defined by the expressions (15) and (16). 3.1.2. All control points of the degree-reduced surface In Subsection 3.1.1, we have calculated the constrained control points on boundary curves of the degree-reduced surface. And then the all control points of the degree-reduced surface are partitioned into two parts. One is the constrained control points; another is the unconstrained control points. So we denote the index set m as the sequence {(i, j )}0 i,j,i+j m arranged in lexicographic order, and m 1 as the sequence of the subscripts of constrained control m m points in lexicographic order. Then m 2 = − 1 is also a sequence in lexicographic order. II,j Definition 5. Suppose b̃I,i k,l , b̃k,l are as in (15) and (16), respectively. The element ãuv of the [(m + 1)(m + 2)/2]× [(n + 1)(n + 2)/2] matrix QIII is represented by ãuv ⎧ u = m(m + 3)/2 − c + i + 1, ⎪ b̃I,c ⎪ i+1,j +1 , 0 i, j c, ⎪ v = n(n + 3)/2 − c + j + 1; ⎪ ⎪ ⎪ u = m(m + 1)/2 + i + 1, II,b ⎪ ⎪ b̃ , 0 i, j b, ⎪ i+1,j +1 ⎪ v = n(n + 1)/2 + j + 1; ⎪ ⎪ ⎪ u = (m − c + i + 1)(m − c + i + 2)/2, ⎪ I,c ⎪ b̃i+1,j +1 , 0 i, j c, i = c, ⎪ ⎪ v = (n − c + j + 1)(n − c + j + 2)/2; ⎪ ⎪ ⎨ u = (i + 1)(i + 2)/2, = b̃II,a i+1,j +1 , 0 i, j a, ⎪ v = (j + 1)(j + 2)/2; ⎪ ⎪ ⎪ ⎪ ⎪ u = (m − b + i)(m − b + i + 1)/2 + 1, ⎪ ⎪ b̃I,b ⎪ i+1,j +1 , 0 i, j b, i = b, ⎪ v = (n − b + j )(n − b + j + 1)/2 + 1; ⎪ ⎪ ⎪ ⎪ ⎪ u = i(i + 1)/2 + 1, II,a ⎪ ⎪ b̃i+1,j +1 , 0 i, j a, i = 0, ⎪ ⎪ v = j (j + 1)/2 + 1; ⎩ 0 else. III Definition 6. Suppose the matrices Cm , An,m 2 , and Q are as in (13), (10), and Definition 5, respectively. Then the element m of the [(m + 1)(m + 2)/2] × [(n + 1)(n + 2)/2] matrix M is represented by m = ⎧ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎨ 0, ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎩ 0 i c, = m(m + 3)/2 − i + 1; 0 i b, = m(m + 1)/2 + i + 1; 0 i < c, = (m − c + i)(m − c + i + 3)/2 + 1; 0 i a, = (i + 1)(i + 2)/2; 0 i < b, = (m − b + i)(m − b + i + 1)/2 + 1; 0 < i a, = i(i + 1)/2 + 1; m̃ , else. (m̃ ) = Cm An,m − QIII . 2 Theorem 2. Given a degree n triangular Bézier surface Rn (s, t) over the triangle T, written as (2). Then the control points of the n − m(0 < m < n) degree-reduced triangular Bézier surface (3) with the corners interpolation condition, one of which is (4), are expressed as (Qm )T = H(Pn )T . (17) Q.-Q. Hu, G.-J. Wang / Journal of Computational and Applied Mathematics 215 (2008) 114 – 126 121 Here H = QIII + M, (18) where the matrices QIII and M are as shown in Definitions 5 and 6, respectively. m m Proof. Define the matrices Q̃ and Q̄ as the following expressions, respectively: m q , (i, j ) ∈ m 1, Q̃ = {q̃i,j }, q̃i,j = i,j 0, (i, j ) ∈ m 2, m 0, (i, j ) ∈ m 1, Q̄ = {q̄i,j }, q̄i,j = qi,j , (i, j ) ∈ m 2, here they are arranged according to the subscript of q̃i,j and q̄i,j in lexicographic order, respectively. Therefore the m m control points of the surface (3) are represented by Qm = Q̃ + Q̄ . Obviously, by Subsection 3.1.1, the constrained control points of the surface (3) satisfy m (Q̃ )T = QIII (Pn )T . (19) Applying (19) and Lemma 1, the error surface Rn (s, t) − Rm (s, t) can be expressed in terms of Jacobi basis functions m m Rn (s, t) − Rm (s, t) = Bn (Pn )T − Bm (Q̃ + Q̄ )T m m = Jn An (Pn )T − Jm Am (Q̃ + Q̄ )T m = Jn An (Pn )T − Jm Am (QIII (Pn )T + (Q̄ )T ) n,m m A1 0 = Jn − (Pn )T − Jm Am (Q̄ )T m III Q A An,m 2 = (Jn,n , . . . , Jn,0 , Jn−1,n−1 , . . . , Jm+1,0 , . . . , J0,0 ) m n,m n T m − Am QIII )(Pn )T − Am (Q̄ )T ). × An,m 1 (P ) + J ((A2 m Note that on the right-most term of the above formula, only the control points Q̄ of the surface Rm (s, t) are undeterm mined. Hence to let Rn (s, t) − Rm (s, t)L2 reach the minimum, if and only if the control points Q̄ satisfy m Am (Q̄ )T = (An,m − Am QIII )(Pn )T . 2 According to Remark 1, the aforementioned formula is equivalent to m − QIII )(Pn )T . (Q̄ )T = (Cm An,m 2 (20) m m At the same time, according to Definition 6 of the matrix M, (19), (20), and the formula Qm = Q̃ + Q̄ , we can derive all the control points (Qm )T = (QIII + M)(Pn )T of the degree-reduced triangular surface (3). That is, (17) holds, and the theorem is proved. Obviously, according to our method, for degree reduction combined with surface subdivision or piecewise continuous triangular Bézier surfaces, the piecewise degree-reduced patches only possess global C 0 continuity. Considering two piecewise C 0 continuous degree-reduced patches, using the Foley–Opitz averaging scheme [11] to adjust the position of corresponding constrained points (See Fig. 2), we can get two C 1 continuous patches. To further achieve higher order continuity, the method in [16,17] extending Foley–Opitz averaging scheme to more interior vertices should be applied. However, when we discuss more than two piecewise C 0 continuous patches sharing one corner, which are not closed, to possess higher order than C 0 continuity, there are some singular control points. And the averaging scheme does not work. Hence we need to improve algorithm in this case. For example, in Fig. 3 there are three piecewise C 0 continuous patches, and the star control point is singular. To achieve C 1 continuity, we have three steps. First, adjust 122 Q.-Q. Hu, G.-J. Wang / Journal of Computational and Applied Mathematics 215 (2008) 114 – 126 Fig. 2. Two quintic Bézier patches sharing boundary control points and the associated control points (disk) related with C 1 continuity (upper); adjusting the interior-related control points to meet with C 1 continuity (bottom). Fig. 3. Three quartic Bézier patches sharing two boundary control points and the associated control points (disk and star) related with C 1 continuity (right); adjusting the interior-related control points to meet with C 1 continuity (left). the control points of the panels which do not include the star point according to Foley–Opitz averaging scheme (Fig. 2, Bottom); Next, for the two panels with the star point (as illustrated on the upper-left in Fig. 3), extend the panels to the neighboring triangle as shown in the middle-left of Fig. 3. And let the gray point (in the bottom-left in Fig. 3) be the middle of the two points. Then average the gray point and the singular point (star) to get new point. Finally, extend the two new triangles to get the last unknown control points of the two new panels, respectively. Either unknown control point is the intersection point with the line passing two points on either side with the new triangle. The result is that the construction builds three patches that meet with C 1 continuity. The case of higher order continuity can be handled in a similar fashion. 3.2. The criterion for multi-degree reduction of triangular Bézier surfaces and error analysis Theorem 3. Given a degree n triangular Bézier surface (2) over T, and also a user-specified tolerance ε. Then the criterion for the existence of a (n−m)-degree-reduced triangular Bézier surface (3) with corners continuity conditions, one of which is (4), with approximation error Err less than ε is that the following inequality is satisfied: (21) Err = Pn FT F(Pn )T L1 /6 < ε, in which the [(n + 1)(n + 2)/2] × [(n + 1)(n + 2)/2] matrix F is defined as An,m 1 . F= − Am H An,m 2 (22) n,m Here the matrix Am is analogously defined by (10), An,m 2 , A1 , and H are as shown in (10) and (18), respectively. Q.-Q. Hu, G.-J. Wang / Journal of Computational and Applied Mathematics 215 (2008) 114 – 126 123 Fig. 4. (a) A triangular Bézier surface of degree 5 and its control mesh; (b), (c) Optimal one-degree reduced triangular surface with corners continuity (C 0 , C 0 , C 0 ), (C 1 , C 1 , C 1 ), respectively, and its control mesh; (d), (e) The original surface (a) and degree-reduced surface (b), (c) superimposed, respectively. Simultaneously, the relative error of the degree-reduced approximation is ReErr = Pn FT F(Pn )T L1 Pn (An )T An (Pn )T L1 . (23) Proof. Substituting (17) in Theorem 2 into Rn (s, t) − Rm (s, t), there is Rn (s, t) − Rm (s, t) = Jn An (Pn )T − Jm Am H(Pn )T n,m A1 0 n − (Pn )T = Jn F(Pn )T . =J Am H An,m 2 Applying the orthonormality of Jacobi polynomials and (7), Jacobi polynomials Jn with respect to the weight function satisfy (1/2,1/2,1/2) (s, t) = 6 T 6Jm,l (s, t)Jn,k (s, t) ds dt = m,n l,k . 124 Q.-Q. Hu, G.-J. Wang / Journal of Computational and Applied Mathematics 215 (2008) 114 – 126 Fig. 5. (a) A triangular Bézier surface of degree 6 and its control mesh; (b), (c) optimal two-degree reduced triangular surface with corners continuity (C 1 , C 0 , C 0 ), (C 2 , C 0 , C 1 ), respectively, and its control mesh; (d), (e) the original surface (a) and degree-reduced surface (b), (c) superimposed, respectively. Then by the above formula, the precise error for multi-degree reduction is Err = Rn (s, t) − Rm (s, t)2 ds dt T = Jn F(Pn )T 2 ds dt = T Pn FT F(Pn )T L1 /6, i.e., (21) holds. Further applying Lemma 1, it follows that Rn (s, t)2 ds dt = Pn (An )T An (Pn )T L1 . T Then the relative error satisfies (23) according to the above formula and (21). Thus the proof is completed. Q.-Q. Hu, G.-J. Wang / Journal of Computational and Applied Mathematics 215 (2008) 114 – 126 125 4. Example analysis Example 1. Given a degree 5 triangular Bézier surface, its control points in lexicographic order are {(0, 6, −1), (−0.5, 5, 1), (0.5, 5, 1), (−1, 4, 2), (0.1, 3.8, 1.9), (1, 4, 2), (−2, 2, 2), (−0.7, 2.2, 0.5), (0.7, 1.8, 2.5), (2, 2, 2), (−3.5, 1, 1), (−1.7, 0.7, 2.1), (0, 1.1, 2), (1.8, 1.2, 2.3), (3.5, 1, 1), (−4, 0, 0), (−2, 0, 2), (−0.5, 0.5, −2), (1, 0.3, −1.5), (2, −0.1, 2), (4, 0, 0)}. Whether there exists an optimal one-degree-reduced triangular Bézier surface with corners interpolation whose approximation error is not more than the given tolerance ε = 0.1? Here the cornersconstrained conditions are: (1) (C 0 , C 0 , C 0 ) continuity, (2) (C 1 , C 1 , C 1 ) continuity, respectively. If it is feasible, we will present the corresponding degree-reduced Bézier surface. According to (21) and (23), the absolute approximation error for one-degree reduction with corners continuity (C 0 , C 0 , C 0 ) of the given surface can be beforehand calculated, it is Err = 0.0084 < ε, and the relative error is 0.66%; Also for the case of corners (C 1 , C 1 , C 1 ) continuity, the absolute approximation error is 0.0254 < ε, and the relative error is 1.98%. Under these two cases, the absolute errors are both less than the tolerance, then these two-degree-reduced triangular surfaces exist (see Fig. 4). Example 2. Given a degree 6 triangular Bézier surface, its control points in lexicographic order are {(6, 0, 2), (5.2, 1, 3), (5, 0, 3), (4.5, 2, 5), (4.5, 1, 3), (4, −0.5, 3.5), (4, 3, 6), (4, 2.2, 4), (3, 0.6, 4), (3, −0.2, 4), (3.5, 3.5, 4), (2.5, 2.5, 5), (3, 2, 3), (2, 0.9, 3), (1.5, 0.5, 2), (3, 4.2, 2), (2.5, 3, 5), (1.5, 2.8, 4), (2, 1.2, 2), (1.2, 1, 2), (0.4, 0.4, 1), (2, 5, 1), (2, 4, 2), (1.5, 3.5, 3), (1, 2, 3), (0.8, 1.5, 1.5), (0.4, 0.8, 0.6), (0, 0, 0)}. We will present the two-degree-reduced surfaces with corners (C 1 , C 0 , C 0 ), (C 2 , C 0 , C 1 ) continuities, respectively. According to (21) and (23), the absolute approximation error for two-degree reduction with corners (C 1 , C 0 , C 0 ) continuity of the given surface can be beforehand calculated, it is 0.0235, and the relative error is 1.22%; also for the case of corners (C 2 , C 0 , C 1 ) continuity, the absolute approximation error is 0.0520, and the relative error is 2.70% (see Fig. 5). Acknowledgments The authors thank to the referees for their helpful suggestions and comments. This work is supported by the National Basic Research Program of China (No. 2004CB719400), the National Natural Science Foundation of China (No. 60673031, No. 60333010), and the National Natural Science Foundation for Innovative Research Groups (No. 60021201). References [1] Y.J. Ahn, B.G. Lee, Y. Park, J. Yoo, Constrained polynomial degree reduction in the L2 norm equals best weighted Euclidean approximation of coefficients, Comput. Aided Geom. Design 21 (2) (2004) 181–191. [2] G.E. Andrews, R. Askey, R. Roy, Special Functions, Cambridge University Press, Cambridge, 1999. [3] P. Bogaki, S.E. Weinstein, Y. Xu, Degree reduction of Bézier curves by uniform approximation with endpoint interpolation, Comput. Aided Design 27 (9) (1995) 651–662. [4] W. Bohem, G. Farin, J. Kahman, A survey of curve and surface methods in CAGD, Comput. Aided Geom. Design 1 (1) (1984) 1–60. [5] G.Z. Chang, P.J. Davis, The convexity of Bernstein polynomials over triangles, J. Approx. Theory 40 (1) (1984) 11–28. [6] G.D. Chen, G.J. Wang, Optimal multi-degree reduction of Bézier curves with constraints of endpoints continuity, Comput. Aided Geom. Design 19 (6) (2002) 365–377. [7] G.D. Chen, G.J. Wang, Multi-degree reduction of tensor product Bézier surfaces with conditions of corners interpolations, Sci. China Ser. F 45 (1) (2002) 51–58. [8] L. Danneberg, H. Nowacki, Approximate conversion of surface representations with polynomial bases, Comput. Aided Geom. Design 2 (1–3) (1985) 123–132. [9] C. Dunll, Y. Xu, Orthogonal Polynomials of Several Variables, Cambridge University Press, Cambridge, 2001. [10] G. Farin, Curves and Surfaces for CAGD, A Practical Guide, fifth ed., Morgan Kaufmann, San Francisco, 2001. [11] T.A. Foley, K. Opitz, Hybrid cubic Bézier triangle patches, in: T. Lyche, L. Schumaker (Eds.), Mathematical Methods for Computer Aided Geometric Design, Academic Press, New York, 1992, pp. 275–286. [12] S.M. Hu, G.Q. Zheng, J.G. Sun, Approximate degree reduction of rectangular Bézier surfaces, J. Software 4 (4) (1997) 353–361. [13] S.M. Hu, Z. Zuo, J.G. Sun, Approximate degree reduction of triangular Bézier surface, Tsinghua Sci. Technol. 3 (2) (1998) 1001–1004. [14] R. Koekoek, R.F. Swarttouw, The Askey scheme by hypergeometric orthogonal polynomials and its q-analogue, Fac. Techn. Math. Informatics, Report 98-17, Delft University of Technology, Delft, 1998. 126 Q.-Q. Hu, G.-J. Wang / Journal of Computational and Applied Mathematics 215 (2008) 114 – 126 [15] S. Lewanowicz, P. Woźny, Connections between two-variable Bernstein and Jacobi polynomials on the triangle, J. Comput. Appl. Math., 197 (2) (2006) 520–533. [16] S. Mann, Continuity adjustments to triangular Bézier patches that retain polynomial precision, Research Report CS-2000-01, Computer Science Department, University of Waterloo, 2000. [17] S. Mann, Implementation of some triangular data fitting schemes using averaging to get continuity, Research Report CS-2000-10, Computer Science Department, University of Waterloo, 2000. [18] Y. Ohtake, A. Belyaev, M. Alexa, G. Turk, H.P. Seidel, Multi-level partition of unity implicits, ACM Trans. Graphics 22 (3) (2003) 463–470. [19] A. Rababah, Distance for degree raising and reduction of triangular Bézier surfaces, J. Comput. Appl. Math. 158 (2) (2003) 233–241. [20] A. Rababah, L2 degree reduction of triangular Bézier surfaces with common tangent planes at vertices, Int. J. Comput. Geom. Appl. 15 (5) (2005) 477–490. [21] J.M. Zheng, G.Z. Wang, Perturbing Bézier coefficients for best constrained degree reduction in the L2 norm, Graphical Models 65 (6) (2003) 351–368.