Journal of Information & Computational Science 4: 2 (2007) 533–543 Available at http://www.joics.com Explicit Multi-degree Reduction of Said-Bézier Generalized Ball Curves with Endpoints Constraints ? Qian-Qian Hu a,b , Guo-Jin Wang a,b,∗ a Department b State of Mathematics, Zhejiang University, Hangzhou 310027, China Key Laboratory of CAD & CG, Zhejiang University, Hangzhou 310027, China Received 11 October 2006; revised 17 February 2007 Abstract Theoretical study shows that Said-Bézier generalized Ball curves (SBGB curves) are distinctly superior to Bézier curves in evaluation, degree elevation and reduction. However in practical engineering, there is no effective algorithm for explicit multi-degree reduction of SBGB curves with endpoints constraints in the world. It is going against designing and applying generalized Ball curves. In order to shrug off this trouble, this paper deduces the matrices for both degree elevation and derived vectors at endpoints, of SBGB curves, and then applying the theory about generalized inverse matrices and partitioned matrices, deduces the explicit algorithm for multi-degree reduction of SBGB curves with constraints of arbitrary order continuity at the endpoints. Finally, the error analysis for degree-reduced approximation is given. Many numerical examples show the rationality and validity of this algorithm. Keywords: Generalized Ball curve; Multi-degree reduction; Endpoints constraints; Generalized inverse matrix 1 Introduction Degree reduction of parameter curves is one of the most common operations in Computer Aided Geometric Design (CAGD). It is used in data transfer and exchange between various CAGD systems, compression of shape data information, and so on. Up to now, there are a mass of treatises focused on degree reduction of Bézier curves/surfaces [1, 11], B-spline curves [8, 12], and NURBS curves [3]. However, research on one of generalized Ball curves can be just counted on one’s fingers. In 1974, Ball curve [2] was introduced into CAGD system and had wide and successful applications. After about ten years, two kinds of generalized Ball curves, i.e., Wang-Ball curve [10] and ? Supported by the NNSF of China (No. 60673031 & 60333010), the NNSF for Innovative Research Groups (No. 60021201) and the 973 Program of China (No. 2004CB719400). ∗ Corresponding author. Email address: wanggj@zju.edu.cn (Guo-Jin Wang). c 2007 Binary Information Press 1548–7741/ Copyright ° June 2007 534 Q. Q. Hu et al. /Journal of Information & Computational Science 4: 2 (2007) 533–543 Said-Ball curve [9], were put forward. These two kinds of curves not only had some good properties similar to that of Bézier curves, but also had advantages over Bézier curves in evaluation, degree elevation and reduction [4, 5]. In 1991, Goodman and Said [4] presented an algorithm for 1-degree reduction of Said-Ball curve based on reverse process of degree elevation. In 1996, Hu et al [6] gave the algorithms for degree elevation and reduction of Wang-Ball curve and Said-Ball curve. In 2000, Wu [11] defined two kinds of new generalized Ball curves with position parameter, that is, Wang-Said generalized Ball curve and Said-Bézier generalized Ball curve, which were called WSGB curve and SBGB curve respectively. These two kinds of curves include Said-Ball curves and Bézier curves, or Wang-Ball curves and Said-Ball curves respectively. They not only possess many common properties of generalized Ball curves and Bézier curves, but also are better than Bézier curves in recursive algorithm for evaluating a curve at any point. Also they are more suitable for degree elevation and reduction. Therefore, thoroughly investigating degree reduction of these kinds of curves is theoretically meaningful and valuable. However hitherto only Ref [7] presented 1-degree reduced algorithm for WSGB curves using net-perturbation method and best uniform approximation. More effective algorithms, especially the algorithms of explicit and constrained degree reduction, or the algorithms of multi-degree reduction, need to be emphatically researched. To satisfy this requirement, this paper presents a novel algorithm for explicit multi-degree reduction of SBGB curves with endpoints constraints, based on the theory of generalized inverse matrix and partitioned matrices. The main steps are as follows. Firstly, the explicit matrix is deduced for degree elevation of SBGB curves. Secondly, applying the chain rule of derivation, we present the derived vectors at endpoints of the curve and their matrix expressions. And then by applying two aforementioned results and the theory of generalized inverse matrix, the explicit algorithm for multi-degree reduction of SBGB curves with endpoints constraints is put forward. Since the overdetermined system of linear equations can be solved by generalized inverse matrix, this algorithm for multi-degree reduction works well. Finally, the error analysis for degree-reduced approximation is given, and some numerical examples validate the effectiveness of this algorithm. 2 Matrices for Degree Elevation and Derived Vectors at Endpoints of SBGB Curves Definition 1 Let n ∈ N, and K(0 ≤ K ≤ bn/2c) be a given position parameter. Then µ ¶ bn/2c + K + i ti (1 − t)bn/2c+K+1 , 0 ≤ i ≤ b(n − 1)/2c − K; µ ¶ i n αin (t, K) = ti (1 − t)n−i , dn/2e − K ≤ i ≤ bn/2c; i n αn−i (1 − t, K), bn/2c + 1 ≤ i ≤ n, is called the basis of Said-Bézier generalized Ball curves with parameter K, where bn/2c is the maximum integer not more than n/2, and dn/2e is the minimum integer not less than n/2 [11]. A Said-Bézier generalized Ball curve (SBGB curve) is represented by n P (t, K) = n X i=0 αin (t, K)pi = αn Pn , 0 ≤ t ≤ 1, (1) Q. Q. Hu et al. /Journal of Information & Computational Science 4: 2 (2007) 533–543 535 where Pn = (p0, p1 , ..., pn )T are control points and αn = (α0n (t, K), α1n (t, K), ..., αnn (t, K)). Obviously it is easy to show that Pn (t, bn/2c) and Pn (t, 0) are Bézier curve and Said-Ball curve respectively. When 1 ≤ K ≤ bn/2c − 1, the curve Pn (t, K) is located between them. Theorem 1 (Degree elevation) A SBGB curve (1) of degree n can be looked as a SBGB curve of degree n + 1, i.e., n n+1 X X n n αin+1 (t, K)pi . P (t, K) = αi (t, K)pi = i=0 i=0 In other words, there exists an elevation matrix Mn+1 such that the control points satisfy Pn = (p0 , p1 , ..., pn+1 )T = Mn+1 (p0 , p1 , ..., pn )T , where for n = 2r + 1, ¶Áµ ¶ µ r+K +j r+1+K +i j i i n+1 i 1 − an+1 = i,j n+1 µ ¶Áµ ¶ 3r + 1 + K − j 3r + 3 + K − i n−j n+1−i 0 Mn+1 = (an+1 i,j ) i=0,1,...,n+1, j=0,1,...,n (2) 0 ≤ i ≤ r + 1 − K, 0 ≤ j ≤ min(r, i); r + 2 − K ≤ i = j + 1 ≤ r + K; r + 2 − K ≤ i = j ≤ r + K; r + K + 1 ≤ i ≤ n + 1, max(i − 1, r + 1) ≤ j ≤ n + 1; else. and for n = 2r, an+1 i,j = 1 i n+1 i − n+1 r − K + 1 ≤ i = j + 1 ≤ r + K; r − K + 1 ≤ i = j ≤ r + K; 0 ≤ j = i ≤ r − K, r + K + 1 ≤ i = j + 1 ≤ n + 1; else. 1 0 Proof By the recursion formula for degree elevation in Ref[11], the elevation matrix is easy to obtain. And by the property of degree elevation, the matrix Mn+1 is in full column rank. In order to study the degree reduction with constraints of endpoints continuity, we first discuss the derived vector matrix at the endpoints of SBGB curves. Theorem 2 (Derived vectors) The derived vectors of order l(0 ≤ l ≤ n) at two endpoints of the SBGB curve (1) of degree n are as follows: dl Pn (0,K) dtl dl Pn (0,K) dtl dl Pn (1,K) dtl dl Pn (0,K) dtl dl Pn (1,K) dtl l n = (−1)l l!fIn,0,l (l), d P d(1,K) = (−1)l l!gIII n,l,0 (l), tl II I l = (−1) l!(fn,0,dn/2e−K−1 (l) + fn,l (l)), III = (−1)l l!(gII n,l (l) + gn,dn/2e−K−1,0 (l)), = = 0 ≤ l ≤ dn/2e − K − 1; dn/2e − K ≤ l ≤ bn/2c + K; III (−1) l!(fIn,l−bn/2c−K−1,dn/2e−K−1 (l) + fII n,bn/2c+K (l) + fn,l (l)), III bn/2c (−1)l l!(gIn,l + gII n,bn/2c+K + gn,dn/2e−K−1,l−bn/2c−K−1 ), l where fIn,µ,ν (l) = ν X j=µ µ j (−1) bn/2c + K + j j ¶µ bn/2c + K + 1 l−j + K + 1 ≤ l ≤ n, ¶ pj , 536 Q. Q. Hu et al. /Journal of Information & Computational Science 4: 2 (2007) 533–543 µ dn/2e−K−1 gIn,µ (l) X = bn/2c+K+1 (−1) j=µ−bn/2c−K−1 fII n,ν (l) µ ν X = n j j (−1) j=dn/2e−K ¶µ ¶ n−j l−j X = µ bn/2c+K+1 (−1) µ n−ν X = n−j (−1) j=n−µ j l − bn/2c − K − 1 gII n,µ (l) = X µ n−j (−1) j=n−µ j=bn/2c+K+1 gIII n,µ,ν (l) ¶µ bn/2c+K pj , n+bn/2c+K+1−ν fIII n,ν (l) bn/2c + K + j j n + bn/2c + K − j n−j bn/2c + n + K − j n−j ¶µ ¶µ n j ¶µ ¶ j l−n+j n−j l − bn/2c − K − 1 bn/2c + K + 1 l−n+j pj , ¶ pj , ¶ pj , ¶ pj . Proof According to the piecewise expression form of curve (1), it can be divided as follows n P Pn (t, K) = = αin (t, K)pi i=0 dn/2e−K−1 P i=0 αin (t, K)pi + bn/2c+K P i=dn/2e−K αin (t, K)pi + dn/2e−K−1 P i=0 αin (1 − t, K)pn−i . For the sake of simplicity, denote the three terms at the right side of the above expression as f1 (t), f2 (t), f3 (t) respectively. Therefore, to calculate the derived vectors of order l at two P (l) endpoints of the curve Pn (t, K) is equivalent to compute 3i=1 fi (t)(t = 0, 1). Firstly, by chain rule of derivation, we have l dl ta (1 − t)b X = (−1)j l t d j=0 µ l j ¶ a!b! ta−l+j (1 − t)b−j . (a − l + j)!(b − j)! Applying the above formula, one gets the derived vectors of order l of f1 (t), f2 (t): (l) f1 (t) = l X µ j (−1) j=0 (l) f2 (t) = l X j=0 l j ¶ dn/2e−K−1 X i=0 µ j (−1) l j ¶ (bn/2c + K + i)!(bn/2c + 1 + K) i−l+j t (1 − t)bn/2c+1+K−j pi , (bn/2c + 1 + K − j)!(i − l + j)! bn/2c+K X i=dn/2e−K n! ti−l+j (1 − t)n−i−j pi . (n − i − j)!(i − l + j)! Since the derived vectors of order l of f1 (t) and f2 (t) at t = 0 or 1 are only related with the factor that is a power function of t or (1 − t) respectively whose exponent is zero, we can get ( (−1)l l!fIn,0,l (l) 0 0 ≤ l ≤ dn/2e − K − 1 (l) (l) I (−1)l l!fn,0,dn/2e−K−1 (l) 0 f1 (0) = , f1 (1) = , dn/2e − K ≤ l ≤ bn/2c + K ; (−1)l l!fI bn/2c + K + 1 ≤ l ≤ n (−1)l l!gI (l) (l) n n,l−bn/2c−K−1,dn/2e−K−1 (l) f2 (0) = 0 0 0 ≤ l ≤ dn/2e − K − 1 (l) l l!gII (l) (−1) (l) (−1)l l!fII dn/2e − K ≤ l ≤ bn/2c + K . , f (1) = , n,l n,l 2 (−1)l l!gII (−1)l l!fII (l) (l) bn/2c + K + 1 ≤ l ≤ n n,bn/2c+K n,bn/2c+K Q. Q. Hu et al. /Journal of Information & Computational Science 4: 2 (2007) 533–543 537 Finally, noting the expressions of f1 (t) and f3 (t), and also applying the relationship ¯ ¯ ¯ ¯ l n l n ¯ ¯ dl αin (t, K) ¯¯ dl αin (t, K) ¯¯ l d αi (1 − t, K) ¯ l d αi (1 − t, K) ¯ = (−1) , = (−1) ¯ ¯ ¯ ¯ , dtl dtl dtl dtl t=0 t=1 t=1 t=0 we obtain the derived vectors of order l of f3 (t) at t = 0, 1 as follows ( ( l III (l) f3 (0) = 0 (l) 0 , f3 (1) = III l (−1) l!fn (l) (−1) l!gn,l,0 (l) 0 ≤ l ≤ dn/2e − K − 1 (−1)l l!gIII (l) dn/2e − K ≤ l ≤ bn/2c + K . , n,dn/2e−K−1,0 bn/2c + K + 1 ≤ l ≤ n (−1)l l!gIII (l) n,dn/2e−K−1,l−bn/2c−K−1 Therefore the theorem is proven. For the sake of simplicity, the results in Theorem 2 can be rewritten in matrix form. Since each term on the right sides of the derived vector expressions, e.g., fIn,0,l (l), can be looked as a row vector composed of some numbers multiplied by a column vector composed of corresponding control points, Theorem 2 means the matrix of the derived vectors of order from 0 to n at the left endpoint of the curve (1) is then expressed in matrix form as 1 p0 1 0 0 Fn 0 0 . (3) Fn = F2n F4n 0 . 0 ... Fn .. , 0 3 5 6 n F F F 0 0 (−1) n! pn n n n Likewise for the right endpoint case, where n is the degree of the curve, and the row vectors of the matrices Fin (i = 1, ..., 6) are formed by the row vectors of fIn,0,l (l), fIn,0,dn/2e−K−1 (l), I II III fII n,l (l), fn,l−bn/2c−K−1,dn/2e−K−1 (l), fn,bn/2c+K (l), and fn,l (l) respectively, in which l is the row sequence number of the element Fin (i = 1, ..., 6) of the partitioned matrix Fn . And F1n , F2n are two low triangular matrices. 3 Explicit Multi-degree Reduction of SBGB Curves 3.1 The case without endpoints constraints Suppose the SBGB curve of degree m (m < n) m Q (t, K) = m X αim (t, K)qi = αm (t, K)Qm , 0 ≤ t ≤ 1, (4) i=0 is degree elevated to the one of degree n, as (1). By Theorem 1, there exist a series of (k + 1) × k matrices Mk in full column rank, k = n, n − 1, ..., m + 1, such that Pn = Mn−1 Qn−1 = Mn−1 Mn−2 Qn−2 = · · · = Mn−1 Mn−2 · · · Mm+1 Mm Qm . To keep terseness of the notation, henceforth we write M = Mn−1 Mn · · · Mm . (5) 538 Q. Q. Hu et al. /Journal of Information & Computational Science 4: 2 (2007) 533–543 Obviously, M is an (n + 1) × (m + 1) matrix and in full column rank. And then the problem that the SBGB curve Pn (t, K) (1) is degree reduced to the one of degree m(m < n) Qm (t, K) is transformed to find Qm = (q0, q1 , ..., qm )T , such that MQm = Pn is satisfied. By the definition of M, this system of linear equations is overdetermined, and can be solved by least square method to obtain its solution ¡ ¢−1 T M Pn . (6) Q∗m = MT M ¡ ¢−1 T For an arbitrary matrix M in full column rank, M+ = MT M M indicates the generalized inverse matrix of M. Then the above formula is abbreviated as Q∗m = M+ Pn . Unfortunately, we can see that the new control points Q∗m of degree-reduced curve calculated by least square method lose the property of endpoints interpolation. 3.2 The case with endpoints constraints Next we discuss the case that the original curve (1) and the degree-reduced curve (4) are C α , C β (α, β ≥ 0, α+β < m) continuous respectively at their endpoints. Under the circumstances, these two curves satisfy m n di Q (0, K) di P (0, K) = , dti dti n m dj P (1, K) dj Q (1, K) = , 0 ≤ i ≤ α, 0 ≤ j ≤ β. dtj dtj The above formulae can be presented in matrix form as Ln P = Lm Q, b = Rm Q, b Rn P (7) b and Q) b are the column vectors formed by the constrained control points where P and Q (or P of the curves (1) and (4) respectively when t = 0 (or t = 1). According to Theorem 2, the coefficient matrices Ln and Lm (or Rn and Rm ) are easy to obtain. It can be explained, e.g., for Lm , as follows. By the derived vector matrix Fm as in (3), when α ≤ bm/2c + K, Lm is an (α + 1) × (α + 1) left upper submatrix of Fm , which is reversible, and the constrained control points are Q = (q0 , q1 , ..., qα ); whereas when bm/2c + K + 1 ≤ α ≤ m, Lm is composed of the first (α + 1) rows of the matrix Fm , and denoted as µ ¶ µ 1 ¶ ¡ ¢ Lm,1 0 Fm 0 Lm = ; Lm,1 = , Lm,2 = F3m,α , F5m,α , F6m,α , (8) 2 4 Lm,2 Fm Fm where Lm,1 is reversible, and the constrained control points are Qm = (q0, q1 , ..., qm )T . Also since the control points vector P are known, we can find Q as follows. If α ≤ bm/2c + K, the solution for left constrained control points of degree-reduced curve (4) is Q = L−1 m Ln P (9) ¡ n¢ If bm/2c + K + 1 ≤ α ≤ m, Ln can be partitioned as U , such that the row number of Un Dn is bm/2c + K + 1. Then applying (8), the first term of (7) can be rewritten as the following two expressions (10) Lm,1 Q = Un P, Lm,2 Qm = Dn P. Q. Q. Hu et al. /Journal of Information & Computational Science 4: 2 (2007) 533–543 539 Then we have Q = (q0 , q1 , ..., qbm/2c+K )T = L−1 m,1 Un P. (11) Similarly, it is easy to obtain the corresponding coefficient matrices Rn , Rm and constrained b Q b of the original curve (1) and the degree-reduced curve (4). control points P, When β ≤ bm/2c + K, we have b = (qm−β , ..., qm−1 , qm ) = R−1 Rn P. b Q m (12) e and P e as Q e = Q − Q − Q, b P e = P − P − P, b respecWhen α, β ≤ bm/2c + K, denote Q tively. Applying the partitioning of matrices, the overdetermined system of linear equations with endpoints constraints is changed to −1 P Q Ln Lm 0 0 e , Qm = Q e , f c , Pn = P M= M M M −1 b b 0 0 Rn Rm P Q (n+1)×(m+1) f and M c are the (n − α − β − 1) × (α + 1), (n − α − β − 1) × (m − α − β + 1), and where M, M, (n − α − β − 1) × (β + 1) matrices respectively, all their elements are calculated by the elevation f is in full column rank. Therefore, by the multiplication matrix (5) based on Theorem 1, and M theorem of partitioned matrices, we have c Q. b fQ e =P e − MQ − M M Substituting (9) and (12) into the above formula, and applying the theory of generalized inverse matrix, the least square solution for this overdetermined system of linear equations is ³ ´³ ´T e = −M f + ML−1 Ln , M c −1 Rn P, P, f + , −M f + MR e P b . Q (13) m m And then combining (9), (12) and (13), further we have L−1 0 0 m Ln f + ML−1 Ln M f + −M f + MR c −1 Rn Pn . Qm = −M m m 0 0 R−1 R n m (14) When α, β ≥ bm/2c + K + 1, without loss of generality, we assume that α ≥ bm/2c + K + 1. Then there is β ≤ dm/2e − K − 2. We partition the matrix Lm,2 in (8) as (C1 , C2 , C3 , C4 ), such that their column numbers are bm/2c+K +1, α−bm/2c−K, m−α−β −1, β +1 respectively, and e1 ∪ Q e 2 ∪ Q, b e formed by the control points is subdivided into four parts: Q e =Q∪Q the vector Q 1 2 e = (qbm/2c+K+1 , ...qα−1 , qα )T , Q e = (qα+1 , qα+2 , ..., qm−β−1 )T , and Q, Q b are as in (10), where Q (12) respectively. Therefore the second term in (10) is e 1 + C3 Q e 2 + C4 Q b = Dn P, C1 Q + C2 Q where C2 is reversible (See Appendix). Substituting (9) and (12) into the above formula yields e 2. e 1 = C−1 Dn P − C−1 C1 L−1 Un P − C−1 C4 R−1 Rn P b − C−1 C3 Q Q 2 2 2 m,1 2 m (15) 540 Q. Q. Hu et al. /Journal of Information & Computational Science 4: 2 (2007) 533–543 e 2 satisfy the elevation formula Then the undetermined control points Q f1Q e1 + M f2Q e2 + M cQ b = P, e MQ + M f1, M f 2 , M) c are composed of the rows from α + 1 to n − β − 1 of the where the matrix (M, M f1, M f2, M c elevation matrix M, and the column sequence numbers of its four submatrices M, M in ( M, g M1 , g M2 , d M) are equal to that of C1 , C2 , C3 , C4 in (C1 , C2 , C3 , C4 ) respectively, and g g M1 , M2 are in full column rank. Substituting (15) into the above expression, and applying the least square method, it follows that e2 = M f + ML P + M f+P e +M f + MR P, b Q (16) where f 1 C−1 C1 − M)L−1 Un − M f 1 C−1 Dn , ML = (M m,1 2 2 ³ ´ f 1 C−1 C4 − M c R−1 Rn , M f=M f2 − M f 1 C−1 C3 . MR = M 2 m 2 On the other hand, substituting (16) into (15), we have f+P e − NR P, b e 1 = NL P − C−1 C3 M Q 2 where (17) + −1 −1 −1 g NL = C−1 2 Dn − C2 C1 Lm,1 Un − C2 C3 M ML , −1 −1 f+ NR = C−1 2 C3 M MR + C2 C4 Rm Rn . And then combining (11), (12), (16) and (17), we finally −1 Lm,1 Un 0 −1 f+ −C2 C3 M NL Qm = + f ML f+ M M 0 0 4 have 0 −NR P . f + MR n M R−1 m Rn (18) Error Analysis and Examples Applying the elevation formula (5), the approximating error can be expressed as ε = kPn (t, K) − Qm (t, K)k = kαn (t, K)(Pn − MQm )k. And by nonnegativity and weighting property of SBGB basis, it is estimated as ε ≤ max kPn − MQm k. (19) Example 1. Given an SBGB curve of degree 5 with position parameter K = 1 and control points (0, 0), (0.5, 3), (2, 6), (4, 8), (7, 5), (9, 0). According to the algorithm in Section 3.1, reducing it by two degrees without endpoints constraints, we can get a degree 3 one with control points (0.0484, −0.1774), (0.4014, 5.2026), (5.7922, 8.4210), (9.0484, −0.1774). Furthermore, using the algorithm in Section 3.2, reducing it by two degrees with endpoints interpolation, we then get a degree 3 one with control points (0, 0), (0.4112, 5.1668), (5.802, 8.3852), (9, 0) (See Fig. 1). Q. Q. Hu et al. /Journal of Information & Computational Science 4: 2 (2007) 533–543 9 541 0.35 y ε 8 0.3 7 0.25 6 5 0.2 4 0.15 3 2 0.1 1 0.05 0 −1 y 0 1 2 3 4 5 6 7 8 9 x 0 10 9 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 t 1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 t 1 0.35 ε 8 0.3 7 0.25 6 0.2 5 4 0.15 3 0.1 2 0.05 1 0 0 0 1 2 3 4 5 6 7 8 x9 Fig. 1: The original curve (solid line), unconstrained degree-reduced curve (dashed) (Upper-left), and its error curve (Upper-right); The original curve (solid line), degreereduced curve with endpoints interpolation(dashed) (Lower-left), and its error curve (Lower-right). Example 2. Given a degree 8 SBGB curve with position parameter K = 0 and control points (0, −1), (1, 2), (3, 2), (2, −3), (4, −4), (6, −4), (8, 2), (9, 3), (11, 0). According to the algorithm in Section 3.2, reducing it by two degrees with constraints of endpoints C1 , C1 or C3 , C1 continuities respectively, we then obtain a degree 6 one with control points (0, −1), (1.25, 2.75), (3.4957, 2.2716), (2.875, −7.9167), (8.0043, 1.2284), (8.5, 3.75), (11, 0); or (0, −1), (1.2, 2.75), (4, 2), (1.25, −6.75), (8.7137, 0.7158), (8.5, 3.75), (11, 0) (See Fig. 2). 0.45 4 ε y 0.4 2 0.35 0.3 0 0.25 −2 0.2 0.15 −4 0.1 −6 0.05 −8 0 0 2 4 6 8 10 x 12 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 t 1 Fig. 2: The original curve (solid line), 2-degree reduced curves with endpoints C1 , C1 (gray) or C3 , C1 (dashed) continuities and their control polygons(Left); The error curves for 2-degree reduced curves with endpoints C1 , C1 (gray) or C3 , C1 (dashed) continuities (Right). 542 Q. Q. Hu et al. /Journal of Information & Computational Science 4: 2 (2007) 533–543 Example 3. Given a degree 10 SBGB curve with position parameter K = 0 and control points (0, 0), (2, 6), (3, 5), (4, 3), (4, −5), (5, 4), (6, 5), (7, 6), (8, 3), (12, 4), (12, 0). According to the algorithm in Section 3.2, we can get a 1-degree reduced curve with endpoints C5 , C0 continuities (see Fig. 3 at upper-left), and the 5 or 3-degree reduced curves with endpoints C1 , C1 continuities (see Fig. 3 at lower-left). 1.4 6 ε y 1.2 4 1 2 0.8 0 0.6 −2 0.4 −4 −6 0.2 0 0 2 4 6 8 10 x 12 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 t 1 0.45 6 ε y 0.4 4 0.35 2 0.3 0.25 0 0.2 −2 0.15 0.1 −4 0.05 −6 0 2 4 6 8 10 x 12 0 t 1 Fig. 3: The original curve and its control polygon (solid line), 1-degree reduced curve with endpoints C5 , C0 continuities (dashed) (Upper-left) and its error curve (Upper-right); The original curve and its control points (solid line), 5-degree (dashed) or 3-degree (gray) reduced curves with endpoints C1 , C1 continuities (Lower-left), and their error curves (Lower-right). Appendix (To prove C2 is reversible) By Theorem 2, A = (−1)bm/2c+K+1 (F5m , F6m ) = A1 A2 , where A1 = (aij )0≤i,j≤dm/2e−K−1 , A2 = (bij )0≤i,j≤dm/2e−K−1 , satisfy ¶ ¶ ( µ ( µ aij = dm/2e − K − 1 − j i 0 i + j ≤ dm/2e − K − 1 else , bij = m−1−i dm/2e − K − 1 − i 0, ,i = j . else Obviously if A1 is positive definite, then the ordinal principal minor determinant of order α − bm/2c − K of the matrix A1 is non-zero. And hence C2 is reversible. Now recurring to row transformation matrix ½ 1 B = (bij )0≤i,j≤dm/2e−K−1 = 0 i + j = dm/2e − K − 1 , else Q. Q. Hu et al. /Journal of Information & Computational Science 4: 2 (2007) 533–543 543 the matrix A1 with the row series (0, 1, ..., dm/2e − K − 1) can be changed to the matrix A01 whose row series are (dm/2e − K − 1, ..., 1, 0). Therefore A01 is actually a lower triangular matrix, and the elements on its diagonal line are all positive. Hence A01 is positive definite. On the other hand, B is also positive definite since all its eigenvalues are equal to 1. To sum up, A1 is positive definite. And then C2 is reversible. 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, Computer Aided Geometric Design 21 (2004) 181-191. [2] A. A. Ball, CONSURF Part 1: Introduction of conic lofting title, Computer-Aided Design 6 (1974) 243-249. [3] M. Chen, G. J. Wang, Multi-degree reduction of NURBS curves based on polynomial approximation theory and explicit matrix representation, SCIENCE IN CHINA, Series F 47 (2004) 44-54. [4] T. N. T. Goodman, H. B. Said, Properties of generalized Ball curves and surfaces, Computer-Aided Design 23 (1991) 554-560. [5] T. N. T. Goodman, H. B. Said, Shape preserving properties of the generalized Ball basis, Computer Aided Geometric Design 8 (1991) 115-121. [6] S. M. Hu, G. Z. Wang, and T. G. Jin, Properties of two types of generalized Ball curves, ComputerAided Design 28 (1996) 125-133. [7] P. Jiang, J. Q. Tan, Degree reduction of generalized Ball curves of Wang-Said, Journal of Software 17 (Suppl.) (2006) 93-102. [8] L. Piegl, W. Tiller, Algorithm for degree reduction of B-spline curves, Computer-Aided Design 27 (1995) 101-110. [9] H. B. Said, Generalized Ball curve and its recursive algorithm, CAM Trans. Graph 8 (1989) 360371. [10] G. J. Wang, Ball curve of high degree and its application, Applied Mathematics a Journal of Chinese Universities (A) 2 (1987) 126-140. [11] H. Y. Wu, Unifying representation of Bézier curve and generalized Ball curves, Appl. Math. J. Chinese Univ. Ser. B 15 (2000) 109-121. [12] J. H. Yong, S. M. Hu, J. G. Sun, X. Y. Tan, Degree reduction of B-spline curves, Computer Aided Geometric Design 18 (2001) 117-127. [13] J. M. Zheng, G. Z. Wang, Perturbing Bézier coefficients for best constrained degree reduction in the L2 -norm, Graphical Models 65 (2003) 351-368.