Xu et al. / J Zhejiang Univ SCIENCE A 2006 7(Suppl. II):165-173 165 Journal of Zhejiang University SCIENCE A ISSN 1009-3095 (Print); ISSN 1862-1775 (Online) www.zju.edu.cn/jzus; www.springerlink.com E-mail: jzus@zju.edu.cn New method for distinguishing planar rational cubic B-spline curve segments as monotone curvature variation* XU Hui-xia1,2, WANG Guo-jin†‡1,2 (1Department of Mathematics, Zhejiang University, Hangzhou 310027, China) 2 ( State Key Laboratory of CAD&CG, Zhejiang University, Hangzhou 310027, China) † E-mail: gjwang@hzcnc.com Received Sept. 6, 2005; revision accepted Mar. 3, 2006 Abstract: In order to fair and optimize rational cubic B-spline curves used frequently in engineering, and to improve design system function, some formulae on the degree and the knot vector, of the product of three B-spline functions, are presented; then Marsden’s identity is generalized, and by using discrete B-spline theory, the product of three B-spline functions is converted into a linear combination of B-splines. Consequently, a monotone curvature variation (MCV) discriminant for uniform planar rational cubic B-spline curves can be converted into a higher degree B-spline function. Applying the property of positive unit resolution of B-spline, an MCV sufficient condition for the curve segments is obtained. Theoretical reasoning and instance operation showed that the result is simple and applicable in curve design, especially in curve fair processing. Key words: Discrete B-spline, The product of B-spline functions, Rational B-spline curve, Monotone curvature variation doi:10.1631/jzus.2006.AS0165 Document code: A CLC number: TP391 INTRODUCTION Curve curvature is an important metric index of the geometric property of the curve (Tai and Wang, 2004; Poston et al., 1995). It is a basic manipulation to design a planar curve segment with monotone curvature variation (MCV) and distinguish whether a planar curve segment is MCV or not, especially as it is of great significance in curve fairing procedure (Dill, 1981; Jones, 1970; Farin and Sapidis, 1989). As we all know, one of the basic principles of curve fairing is that the curve should consist of relatively few MCV segments (Farin and Sapidis, 1989). So, one important task for CAD workers is to find an MCV criterion. However, results about MCV curves have been obtained only in some special cases so far. For example, there exist necessary and sufficient ‡ Corresponding author Project supported by the National Natural Science Foundation of China (Nos. 60373033 and 60333010), the National Natural Science Foundation for Innovative Research Groups of China (No. 60021201), and the National Basic Research Program (973) of China (No. 2002CB312101) ∗ conditions for quadratic Bézier curves (Sapidis and Frey, 1992) and quadratic rational Bézier curves (Frey and Field, 2000; Wang et al., 2000), and sufficient conditions for Bézier curves and B-spline curves (Wang et al., 2004), etc. As the curvature computation is complicated, and the B-spline product and knot vector analysis are full of difficulties, we have not obtained any results of MCV condition for rational B-spline curves that are the most common tools in geometric design, which seriously affects the development of rational B-spline design system. To deal with the above problem, we first apply ourselves to studying B-spline expression of the product of three B-spline functions. By generalizing the Marsden’s identity representing the single power function as a linear combination of B-spline functions to the case of the product of three-power functions, we deduce the degree formula and the knot vector formula of the product of three B-spline functions; then we get the coefficients’ expressions converting the product into a summation, and thereby change the 166 Xu et al. / J Zhejiang Univ SCIENCE A 2006 7(Suppl. II):165-173 product of three B-spline functions into a linear combination of B-splines. Then, the MCV discriminant for uniform planar rational cubic B-spline curves can be converted into an expression of higher order B-spline functions, and using the property of positive unit resolution of the latter, we finally get a novel and simple sufficient discriminant condition. Three numerical examples presented in this paper indicate that the result is correct and effective. We also denote by Fj (j=1,2,3) the polynomial formed by substituting the subscript “kj−1” for “kj” in the polynomial ψ i , k1 , k2 , k3 , t ( y1 , y2 , y3 ). For example, F1 = ψ i , k1 −1, k2 , k3 ,t ( y1 , y2 , y3 ) . Lemma 1 Let y1, y2 and y3 be arbitrary real numbers, aj=(kj−1)/(k−1), 3 ∑a j =1 j = 1 , then we have 3 DERIVATION OF GENERALIZED MARSDEN’S IDENTITY ψ i , k , k , k , t ( y1 , y2 , y3 ) = ∑ a j Fj (ti + k −1 − y j ) , 1 2 Definition 2 3 Let k = ∑ ki − 2 , here ki (i=1,2,3) are i =1 positive integers. Suppose P1={p11, p12, …, p1, k1 −1} with k1–1 elements is a subset of Ik–1={1,2,…,k−1}, and P2={p21, p22, …, p2,k2 −1} with k2−1 elements is a subset of the set Ik–1−P1, then let P3 be the set Ik–1−P1−P2 with the remaining k3−1 elements. Given an integer i, we define the corresponding knot vector t Pj and polynomial ψ i , k j ,t Pj ( y ) with the digital subset Pj (j=1,2,3) as follows: j =1 3 ψ i −1, k , k , k , t ( y1 , y2 , y3 ) = ∑ a j Fj (ti − y j ) . 1 Definition 1 Let k be a positive integer, and Ni,k,t(x) defined on a non-decreasing sequence t=(ti), is called the ith B-spline basis of order k (degree k−1). Then we denote by Sk,t the linear space spanned by these B-splines. 3 2 3 j =1 Proof We only prove the first equality. According to Definition 3, the polynomial ψ i , k1 , k2 , k3 , t ( y1 , y2 , y3 ) corresponds to the digital set ∏, which implies that the digital sets Ik–1 and Pj (j=1,2,3) can be uniquely confirmed. Furthermore, three B-spline functions corresponding to the digital set Pj, can also be confirmed, and the associated order of each B-spline 3 function is kj (j=1,2,3) which satisfies k = ∑ k j − 2 . j =1 Similar to Definition 2, the digital sets Ik–2 and { Q js = q j1 , q j 2 ,…, q j , k js −1 } (s=1,2,3), corresponding with the polynomial Fj (j=1,2,3), can be uniquely confirmed, along with the associated B-spline functions. The order of each B-spline function is kjs 3 Pj t =(..., ti −1 , ti , ti + p j1 , ti + p j 2 ,..., ti + p j ,k −1 , ti + k , ti + k +1 ,...), (1) ψ i ,k (2) j j ,t Pj ( y )=( ti + p j1 − y )( ti + p j 2 − y )...( ti + p j , k −1 − y ). Definition 3 j Let ∏= ∏ k −1,k k −1,k − k1 1 2 −1 be the digital set consisting of all the integer subsets {P1, P2, P3} defined in Definition 2, then define its corresponding polynomial as 3 ∏ψ i ,k j ,t Pj ( y j ) {P , P , P }∈∏ j =1 . ψ i ,k1 ,k2 ,k3 ,t ( y1 , y2 , y3 ) = 1 2 3 k − 1 k − k1 k1 − 1 k2 − 1 ∑ (s=1,2,3), and it satisfies k − 1 = ∑ k js − 2 , kjs =ks, j≠s, s =1 s =1,2,3; kjj =kj−1. In this way, the procedure of forming the digital subsets P1,P2,P3 can be seen as selecting digital subsets Qj1,Qj2,Qj3 firstly, and then inserting the element (k−1) into the digital subset Qjj. From this viewpoint, the digital subsets Qj1,Qj2,Qj3 are equivalent to the part of the subsets P1,P2,P3 in which the corresponding subset Pj contains the element (k−1). Therefore, the digital subsets P1,P2,P3 can be seen as the sum aggregates of all selected digital subsets Qj1,Qj2,Qj3, which correspond to the polynomials Fj (j=1,2,3). According to Eq.(2), to each polynomial Fj (j=1,2,3), we have Xu et al. / J Zhejiang Univ SCIENCE A 2006 7(Suppl. II):165-173 ψ i,k j ,t Pj ( y j ) = (ti + k −1 − y j )ψ i , k ψ i , k , t ( ys ) = ψ i , k s Ps js , t Q js jj , t Q jj (yj ) , ( ys ), s ≠ j , s = 1, 2,3, k − 1 k − k1 k − 1 k − 2 k − k j1 − 1 . = k1 − 1 k2 − 1 k j − 1 k j1 − 1 k j 2 − 1 Thus, it indicates that the value of the polynomial ψ i , k1 , k2 , k3 , t ( y1 , y2 , y3 ), corresponding to the polynomial Fj (j=1,2,3) equals (kj−1)Fj(ti+k−1−yj)/(k−1). From all the above analyses, we know that Lemma 1 is true. By Lemma 1 and some mathematical deduction, we can easily obtain the generalized form of the Marsden’s identity (Wang et al., 2001; Marsden, 1970). Theorem 1 Let y1, y2 and y3 be arbitrary real numbers, then we have the generalized Marsden’s identity: 3 ∏ (x − y ) i =1 i ki −1 Let max ∑ k j + mE1 − 2 . j∈H 2 The following theorem will illustrate the relation between the coefficients of the B-spline product and the coefficients of each factor. Theorem 2 Suppose three B-spline functions are the 3 same as that in Lemma 2. Let k = ∑ ki − 2 , and i =1 construct the knot vector t as outlined above. 3 Then f = ∏ f i ∈ S k , t , and there exist coefficients di i =1 such that f = ∑ i d i N i , k , t ( x) . Especially, for a given i, the knot vector t Ps defined by Eq.(1) satisfies τ s ⊆ t Ps (s=1,2,3), and di is given by 3 s ∏ ∑ c js α js ,ks ,τ s ,t Ps (i ) {P1 , P2 , P3 }∈Π s =1 js . di = k − 1 k − k1 k1 − 1 k2 − 1 ∑ i f i = ∑ j c iji N ji ,ki ,τi ( f i ∈ Ski ,τi , i = 1, 2,3) be The coefficient αj,k,τ,t(i) is called discrete B-spline of order k (Wang et al., 2001; Cohen et al., 1980), which can be defined by the following recurrent relation: i three given B-spline functions, where ki and τi are their corresponding order and knot vector, respectively. If we want to get the explicit expression of the product of some B-spline functions, we must construct a spline space Sk,t, which contains the product. Concretely, we should determine the order and knot vector of the space Sk,t. As an application of the results in (Mørken, 1991), the following two lemmas can be obtained. 3 Lemma 2 the knot y in the knot vector t satisfies m ≥ m = = ∑ψ i , k1 , k2 , k3 , t ( y1 , y2 , y3 ) Ni , k , t ( x) . EXPLICIT EXPRESSION OF THE PRODUCT OF THREE B-SPLINE FUNCTIONS 167 The order of the product f = ∏ f i is at i =1 3 least equal to k = ∑ ki − 2 . i =1 Lemma 3 Let H2={h1, h2} be a subset of I3={1,2,3}, and denote the set consisting of the remaining one integer by E1, i.e., E1= I3\H2. Suppose the knot y occurs with the multiplicity mi (mi>0, i=1,2,3) in the knot vector τi respectively, then the multiplicity m of α j , k , τ , t (i ) = α j , k (i ) = ω j , k , τ (ti + k −1 )α j , k −1 (i ) + (1 − ω j +1, k , τ (ti + k −1 ))α j +1, k −1 (i), x − ti , ωi , k ( x) = ωi , k , t ( x) = ti + k −1 − ti 0, if ti < ti + k −1 , otherwise. Proof By the generalized Marsden’s identity in Theorem 1, we have 3 ∏ (x − y ) j =1 j k j −1 = ∑ψ i ,k1 ,k2 ,k3 ,t ( y1 , y2 , y3 ) N i ,k ,t ( x ) i 3 ψ i ,k ,t Pj ( y j ) N i ,k ,t ( x ) (3) ∑i P ,P∑,P ∈Π ∏ j { 1 2 3 } j =1 . = k − 1 k − k1 k1 − 1 k2 − 1 168 Xu et al. / J Zhejiang Univ SCIENCE A 2006 7(Suppl. II):165-173 Since f j ( x) = ( x − y j ) k j −1 (j=1,2,3), for any real number aji in [ti, ti+k] we have ( y j − a ji ) k j −1− r j = (−1) (k j − 1 − rj )! k j −1− r j (k j − 1)! B-spline coefficient di with that of Eq.(4), and remembering that the B-splines are linearly independent, we conclude that 3 (r ) f j j (a ji ) , di = rj = 0,1,…, k j − 1 . Note that fj(x) is a polynomial of degree kj−1 (j=1,2,3). Hence, the order of the polynomial 3 f = ∏ f i whose degree is not more than k−1, is ∑ ∏λ {P1 , P2 , P3 }∈Π . 3 k = ∑ ki − 2 . An arbitrary spline function f in the di = i =1 space Sk,t can be expressed by the dual basis {λi,k}. Here, {λi,k} is defined by k −1 λi , k f = λi ,k , t f = ∑ (−1) k −1− r r =0 ψ i(,kk−1− r ) (ai ) f ( r ) (ai ) (k − 1)! , where ai is an arbitrary real number in [ti, ti+k] (Mørken, 1991). Thus, according to “the polynomial theorem” (Richard, 1977) and “the Taylor expansions of multivariate functions” (Lang, 1978), after rearrangement, Eq.(3) can be rewritten as follows: j =1 (g j ) Since the above expression holds for all nonempty subintervals (ts, ts+1) in [ti, ti+k], we have 3 ∏ Pj k − 1 k − k1 k1 − 1 k2 − 1 i =1 3 i ,k j , t j =1 3 ψ i , k , t Pj ( f j ) N i ,k , t ( x ) ∑i P ,P∑,P ∈Π ∏ j { 1 2 3 } j =1 fj = , (4) k − 1 k − k1 k1 − 1 k2 − 1 Because of the way the knot vector t was con3 structed, we have f ( x) = ∏ f j ( x) ∈ Sk , t . From the j =1 uniqueness of the expression of the B-spline function, we can affirm there exist unique coefficients di such that f ( x) = ∑ i d i N i , k , t ( x) . Especially, fix an integer i and consider an arbitrary nonempty subinterval (ts, ts+1) contained in the interval [ti, ti+k]. On this interval, the polynomials fj and gj (j=1,2,3) are equivalent to 3 ∑ ∏λ {P1 , P2 , P3 }∈Π j =1 i ,k j , t Pj ( fj) k − 1 k − k1 k1 − 1 k2 − 1 . (5) In fact, Eq.(5) is just a disguised form of Theorem 2. According to the theory of discrete B-spline (Wang et al., 2001; Cohen et al., 1980), suppose τ1 ⊆ t P1 , then the number λi , k , t P1 ( f1 ) is just the ith 1 B-spline coefficient of the B-spline function f1 on the refined knot vector t P1 , so λi , k , t P1 ( f1 ) = 1 ∑ j1 c1j1 α j , k , τ , t P1 (i ) , and similarly λi , k , t Ps ( f s ) ( s = 2,3) , 1 1 1 s we have the similar results. It remains to prove that for a fixed integer i, Ps t ( s = 1,2,3) defined in Eq.(1) satisfy the relation τ s ⊆ t Ps . Suppose y is a knot in the knot vector τs, and let m1 , m2 , m3 , m, mP1 , mP2 , mP3 be the corresponding multiplicity in the knot vector τ1 , τ 2 , τ 3 , t , t P1 , t P2 , t P3 , respectively. Now ms ≤ mPs (s=1,2,3). we must prove that Case 1 ms=0, recalling the construction of t Ps , we conclude that mPs ≥ 0, namely, ms ≤ mPs . Case 2 if ms>0, there are three cases to be considered. (1) If y<ti+1 or y>ti+k−1, from Eq.(1) we deduce mPs = m , and by Lemma 3 we have m ≥ ms . 3 ∈ Sk , t , and its B-spline coef- (2) If ti< ti+1 ≤y ≤ti+k−1< ti+k, we have ∑ mPs = m . ficients can be obtained by Eq.(4). Comparing the The worst case then occurs as max(m − mPs ) = each other. Then ∏g j =1 j s =1 Xu et al. / J Zhejiang Univ SCIENCE A 2006 7(Suppl. II):165-173 s −1 ∑k j =1 j + 3 ∑k j = s +1 j r )(r ⋅ r) − 3(r × r)(r ⋅ r )] dK [ (r × . = 6 ds r − 2. Therefore, we obtain mPs ≥ m − 3 s −1 ∑ k j + ∑ k j − 2 . By Lemma 3, the set I3 must j = s +1 j =1 include the selection condition of H2={1,…,s−1, s+1,…,3}, E1={s}, so we have mPs ≥ ms . (3) If y equals the knots both from within and outside the range ti+1, ti+2, …, ti+k−1 (e.g. y=ti=ti+1), a combination of the above two arguments can establish the required inequality. Thus the proof of Theorem 2 is completed. Applying p( l ) (t ) = Consider the following uniform planar rational cubic B-spline curve: n p(t ) = r (t ) = w(t ) ∑wrN i =1 n i i ∑w N i =1 i i ,4,T (t ) (6) here, wi>0 is the weight of the associated control point, and the knot vector is T = {t j } ∞ j =−∞ (tj=j, j=0, ±1, ±2, …). Let us correct the definition of the curvature K of the planar curve r(t) before solving the MCV condition for it. In order to differentiate convex curves from concave curves, we take T(s) as a directed translation angle of the tangent of the curve, defined on a point at which the arc length of the planar curve is equal to s, with regard to the forward direction of the x axis. Then we can define K = lim ∆s → 0 T ( s + ∆s ) − T ( s ) . ∆s dr d2r d3r , r = 2 , r = 3 , then dt dt dt the derivative of the curvature K, relative to the arc length s (Farin, 1988), can be expressed as Furthermore, let r = where p , q1 = wp − w p , q2 = w2 p − 2 w q1 − ww q1 , wp − 3ww q3 = w3 p − 3w q2 − w2 n n i=2 i=2 p (t ) = ∑ ∆wi −1ri −1 N i ,3,T (t ), w (t ) = ∑ ∆wi −1 N i ,3,T (t ) , n n i =3 i =3 n n i=4 i=4 w(t ) = ∑ ∆ 3 wi −1 Ni ,1,T (t ) . p (t ) = ∑ ∆ 3 wi −3 ri −3 N i ,1,T (t ), (t ) ri=(xi,yi), t4≤t≤tn+1, n≥4, q q1 q , r = 23 , r = 34 , w2 w w (t ) = ∑ ∆ 2 wi − 2 N i ,2,T (t ) , p(t ) = ∑ ∆ 2 wi − 2 ri − 2 N i ,2,T (t ), w , i ,4,T l l dl p = ∑ w( i ) (t )r ( l −i ) (t ) to l dt i =0 i the derivative formula of the product function, we know that in order to solve the former third order derivatives of the rational B-spline curve r(t), we must seek for the former third order derivatives of p(t) and w(t), namely r = A SUFFICIENT CONDITION OF MONOTONE CURVATURE VARIATION FOR UNIFORM PLANAR RATIONAL CUBIC B-SPLINE CURVES 169 Finally we obtain dK λ (t ) = , 10 ds w r 6 λ (t ) = (q1 × q3 )(q1 ⋅ q1 ) − 3(q1 × q2 )(q1 ⋅ q2 ) , where λ(t) and dK/ds have the same sign because wi>0. Therefore, if the MCV discriminant λ(t) satisfies λ(t)≥0 (t4≤t≤tn+1), the curve r(t) is of monotone curvature and increases (MCI); otherwise, if λ(t)≤0 (t4≤t≤tn+1), the curve r(t) is of monotone curvature and decreases (MCD). The basic idea of the paper is as follows: first, transforming the MCV discriminant λ(t) into an expression of the higher order B-splines; then, applying the property of positive unit resolution of B-spline, we can obtain a sufficient MCV condition for the curve r(t). Using Lemma 2, Lemma 3, Theorem 2 and results in (Mørken, 1991), the vectors q1, q2 and q3 can be expressed as: 170 Xu et al. / J Zhejiang Univ SCIENCE A 2006 7(Suppl. II):165-173 q1 = ∑ Ai1 N i ,6, τ1 (t ) , A = 2 ∑ {P221 , P222 }∈∏ 72 i 22 i q2 = ∑ Ai2 N i ,10, τ 2 (t ) , i q3 = ∑ Ai3 N i ,12, τ 3 (t ) , where τ1, τ2 and τ3 are the knot vectors with multiplicities of 4, 9 and 12 of each knot in T respectively, and Ai1 = ∑ ∑ j ∑ j {( w j ∆w j −1rj −1 − w j rj ∆w j −1 ) {P , P }∈∏ 1 5 2 1 2 2 2 1 1 } 2 Ai = ∑ P∈∏ 97 (∑ A α j ,8, τ 21 j1 j1 1 21 , t P (∑ j1 A α j ,10,τ 31 j1 1 31 , t P (i ) ∏11 P∈ 11 33 , t P 9 , 7 Ai33 = 3 ∑ {P331 , P332 }∈∏ 112 j1 j3 11 9 j3 ∑ ∑ j1 j2 ∑ ∑ j1 j2 311 i A ⋅ ( w j2 ∆ 2 w j3 − 2 rj3 − 2 − w j2 rj2 ∆ 2 w j3 − 2 ) 7 4 , 3 3 = ∑ {P3111 , P3112 , P3113}∈∏ 9,6 3,3 9 6 , 3 1 ∆w j1 −1 11 2 , A341 j1 w j2 rj2 ∑ ∑ ∑ j1 9 9, w j1 ∆ 2 w j2 − 2 A1j3 ⋅ α j ,7,τ ,t P341 (i )α j ,4,T ,t P342 (i ) 1 341 2 w j1 ⋅ α j ,4,T ,t P211 (i )α j ,4,T ,t P212 (i )α j ,2,T ,t P213 (i ) 1 2 3 j2 ⋅ A α j ,3,T ,t P331 (i )α j ,10,τ ,t P332 (i ) 1 2 2 Ai34 = ∑ {P341 , P342 }∈∏ 96 j2 ∑ ∑ ∑ j1 7 2, 3 A311 j1 ∆ w j2 − 3 rj2 − 3 j2 2 j2 (i ). ∑ ∑ ∑ ∆w j1 −1 ⋅ α j ,4,T ,t P321 (i )α j ,2,T ,t P322 (i )α j ,6,τ ,t P323 (i ) 1 2 3 1 In the last two equalities above: 21 Ai = ∑ {P211 , P212 , P213 }∈∏ 73,3,4 j2 ⋅ α j ,10,τ ,t P311 (i )α j ,1,T ,t P312 (i ) 1 311 2 (i ) ) A33 j α j ,12,τ j j1 A = 3 ∑ {P321 , P322 , P323}∈∏ 9,6 3,1 34 α α − ∑ j A32 − A ( i ) ( i ) ∑ j4 j4 j4 ,10,τ34 ,t P j2 j2 ,10,τ 32 , t P 2 ∑ ∑ ∑ ∑ 32 i ) − 2 5 3 , 22 − ∑ j A j2 α j ,8, τ , t P (i) 2 22 2 3 Ai = ∑ P∈∏ 119 A = ∑ {P311 , P312 }∈∏ 99 31 i 3 ⋅α j ,4,T ,t P1 (i )α j ,3,T ,t P2 (i ) 1 2 j1 ⋅ A1j2 α j ,3,T ,t P221 (i )α j ,6,τ ,t P222 (i ) 1 2 1 i 1 ∑ ∑ j2 j3 9 6, w j1 w j2 w j3 ⋅ α j ,4,T ,t P3111 (i )α j ,4,T ,t P3112 (i )α j ,4,T ,t P3113 (i ) 1 2 3 9 6 , 3 3 Xu et al. / J Zhejiang Univ SCIENCE A 2006 7(Suppl. II):165-173 341 i A = ∑ {P3411 , P3412 , P3413}∈∏ 6,3 3,3 ∑ ∑ ∑ j1 j2 B = ∑ {P111 , P112 }∈∏ 165 w j1 w j2 ∆ w j3 −3 3 j3 ⋅ α j ,4,T ,t P3411 (i )α j ,4,T ,t P3412 (i )α j ,1,T ,t P3413 (i ) 1 2 3 11 i λ (t ) = ∑ ξi N i ,29,τ (t ), (7) where τ is the knot vector with multiplicities of 29 of each knot in T respectively, and ∑ ∑B α ξi = ∏ 26 P∈ 28 j1 1 j1 j1 ,27,τ 1 , t P 1 2 In the equality above, τ and τ are the knot vectors with multiplicities of 27 and 28 of each knot in T respectively, and B = ∑ {P11 , P12 }∈∏ 1626 ∑ ∑ j1 j2 B11j1 B12j2 ⋅ α j ,17,τ11 ,t P11 (i )α j ,11,τ12 ,t P12 (i ) 1 2 Bi2 = ∑ {P21 , P22 }∈∏1428 ∑ ∑ j1 j2 B13j1 B14j2 ⋅ α j ,15,τ13 ,t P21 (i )α j ,15,τ13 ,t P22 (i ) 1 2 where, 26 16 , 28 14 , j1 j2 ( A1j1 × A3j2 ) ∑ ∑ j1 j2 B = ∑ {P131 , P132 }∈∏ 145 ∑ ∑ j1 j2 B = ∑ {P141 , P142 }∈∏ 145 ∑ ∑ j1 j2 10 5 , ( A1j1 × A2j2 ) ⋅ α j ,6,τ ,t P131 (i )α j ,10,τ ,t P132 (i ) 1 1 2 2 14 i 16 5 , ( A1j1 ⋅ A1j2 ) ⋅ α j ,6,τ ,t P121 (i )α j ,6,τ ,t P122 (i ) 1 1 2 1 (i ) 28 26 − ∑ ∑ B 2j2 α j ,29,τ 2 ,t P (i ). 2 28 j2 P∈∏ 28 1 i B = ∑ {P121 , P122 }∈∏ 105 12 i 13 i i ∑ ∑ ⋅ α j ,6,τ ,t P111 (i )α j ,12,τ ,t P112 (i ) 1 1 2 3 6 3 , 3 3 where τ21, τ22, τ31, τ32, τ33, τ34, τ311, τ341 are the knot vectors with the multiplicities of 7, 6, 10, 9, 11, 10, 7 and 7 of each knot in T, respectively. By the results above, applying the results in (Mørken, 1991), we can obtain the MCV discriminant λ(t): 171 14 5 , ( A1j1 ⋅ A2j2 ) ⋅ α j ,6,τ ,t P141 (i )α j ,10,τ ,t P142 (i ) 1 1 2 2 14 5 , where τ11, τ12 and τ13 are the knot vectors with multiplicities of 17, 9 and 14 of each knot in T respectively. The knot vector tP and the discrete B-splines α j , k ,T , t P (i ) , which are involved in all equalities above, are defined in Definition 2 and Theorem 2, respectively. The valued field of i is the field that makes B-splines nonzero value in the corresponding knot vector. By Eq.(7), applying the property of positive unit resolution of B-spline, we can directly obtain the following theorem. Theorem 3 Let r(t) be a uniform planar rational cubic B-spline defined by Eq.(6), if the coefficients ξi of the MCV discriminant in Eq.(7) satisfy ξi≥0 (≤0), the valued field of i is that which makes B-splines Ni,29,τ(t) have nonzero value in the knot vector τ and that not all of the coefficients ξi equal zero, then r(t) is 172 Xu et al. / J Zhejiang Univ SCIENCE A 2006 7(Suppl. II):165-173 of MCI (MCD). NUMERICAL EXAMPLES Theorem 3 is verified by three numerical examples in this section. In Figs.1a, 2a, and 3a, solid line, dotted line and rhombic sign mark the curve, the control polygon and the control points, respectively, while horizontal and vertical axis represent x and y coordinate components of the control points and the curve’s points, respectively. In Figs.1b, 2b, and 3b, we present the curvature plot of the corresponding curve, where horizontal and vertical axis represent the domain of knot t interval and the curvature K of the curve, respectively. Example 1 In this example, the curve is defined by Eq.(6) where n=6 and k=4 hold (Fig.1). Its control points are (1.5 5.5; 1 3; 3.8 6; 7 10; 10 12; 12 11.8), and the corresponding weights are (1; 3; 3; 7; 9; 15). All MCV discriminant coefficients of the curve satisfy ξi≤0, and Fig.1b shows that the curve is MCD, 0.6 11 0.4 9 0.2 K y The curve The control polygon The control points 7 0 5 −0.2 3 2 4 6 x 8 10 4 12 5 t 6 7 (b) (a) Fig.1 The control polygon and the corresponding curve (a) and the curvature plot of the curve (b). n=6, k=4 0 12 −0.05 K y 10 8 The curve The control polygon The control points 6 4 −0.15 −0.25 x 5.0 t (a) (b) 5 6 4.0 7 4.5 5.5 6.0 Fig.2 The control polygon and the corresponding curve (a) and the curvature plot of the curve (b). n=5, k=4 10 1 8 The curve The control polygon The control points 0.6 K y 6 4 0.2 2 0 −0.2 2 4 x (a) 6 8 10 4.0 4.2 4.4 t 4.6 4.8 5.0 (b) Fig.3 The control polygon and the corresponding curve (a) and the curvature plot of the curve (b). n=4, k=4 Xu et al. / J Zhejiang Univ SCIENCE A 2006 7(Suppl. II):165-173 which validate Theorem 3 is correct. Example 2 In this example, the curve is defined by Eq.(6) where n=5 and k=4 hold (Fig.2). Its control points are (4 6; 7 12; 12 10; 14 8; 16 6), and the corresponding weights are (3; 3; 6; 9; 10). All MCV discriminant coefficients of the curve satisfy ξi≥0, and Fig.2b shows that the curve is MCI, which validate Theorem 3 is correct. Example 3 In this example, the curve is defined by Eq.(6) where n=4 and k=4 hold (Fig.3). Its control points are (1 10; 4 4; 9 2; 11 0), and the corresponding weights are (1; 20; 3; 10). Fig.3b shows that the curve is MCD, and after computing, it is known that not all MCV discriminant coefficients of the curve satisfy ξi≤0, which validate Theorem 3 is just a sufficient but not necessary condition. CONCLUSION As illustrated from Theorem 3 and the numerical examples, the discriminant method is applicable to the whole rational B-spline curve containing segments of arbitrary number. If there are so many segments that the sufficient condition cannot hold, we can successively decrease the number of the segments and consider again whether the condition holds. In contrast, the old method, which is applicable to Bézier and rational Bézier curve, can only differentiate MCV condition of a segment of the curve. References Cohen, E., Lyche, T., Riesenfeld, R., 1980. Discrete B-splines and subdivision techniques in computer aided geometric design and computer graphics. Computer Graphics & Image Processing, 14(2):87-111. [doi:10.1016/0146664X(80)90040-4] Dill, J.C., 1981. An application of color graphics to the display of surface curvature. ACM SIGGRAPH Computer Graphics, 15(3):153-161. [doi:10.1145/965161.806801] Farin, G., 1988. Curves and Surfaces for Computer Aided Geometric Design: A Practical Guide. Academic Press, 173 Boston, Massachusetts. Farin, G., Sapidis, N., 1989. Curvature and the fairness of curves and surfaces. IEEE Computer Graphics and Applications, 9(2):52-57. [doi:10.1109/38.19051] Frey, W.H., Field, D.A., 2000. Designing Bézier conic segments with monotone curvature. Computer Aided Geometric Design, 17(6):457-483. [doi:10.1016/S0167-8396 (00)00011-X] Jones, J.I., 1970. A System for Designing and Approximating Aesthetically Smooth Curves with Interactive Graphiccontrols. University of Detroit, Detroit, Michigan. Lang, S., 1978. Analysis I. Addision-Wesley Publishing Company, Reading, Massachusetts, p.287-289. Marsden, M.J., 1970. An identity for spline functions with applications to variation-diminishing spline approximation. Journal of Approximation Theory, 3(1):7-49. [doi:10.1016/0021-9045(70)90058-4] Mørken, K., 1991. Some identities for products and degree raising of splines. Constructive Approximation, 7(1): 195-208. [doi:10.1007/BF01888153] Poston, T., Fang, S.F., Lawton, W., 1995. Computing and Approximating Sweeping Surfaces Based on Rotation Minimizing Frames. Proc. the 4th International Conference on CAD/CG, Wuhan, China. Richard, A.B., 1977. Introductory Combinatorics. Elsevier North-Holland, Inc., New York, p.63-65. Sapidis, N.S., Frey, W.H., 1992. Controlling the curvature of quadratic Bézier curve. Computer Aided Geometric Design, 9(2):85-91. [doi:10.1016/0167-8396(92)90008-D] Tai, C.L., Wang, G.J., 2004. Interpolation with slackness and continuity control and convexity-preservation using singular blending. Journal of Computational and Applied Mathematics, 172(2):337-361. [doi:10.1016/j.cam.2004. 02.015] Wang, Y.L., Wang, S.C., Li, D., Zhang, L.Z., Zhao, B.Y., 2000. Study of curvature monotony condition for the quadratic rational Bézier curves. Journal of Computer Aided Design and Computer Graphics, 12(7):507-511 (in Chinese). Wang, G.J., Wang, G.Z., Zheng, J.M., 2001. Computer Aided Geometric Design. China Higher Education Press, Beijing, China; Springer-Verlag Berlin, Heidelberg, Germany, p.53-54 (in Chinese). Wang, Y.L., Zhao, B.Y., Zhang, L.Z., Xu, J.C., Wang, K.C., Wang, S.C., 2004. Designing fair curves using monotone curvature pieces. Computer Aided Geometric Design, 21(5):515-527.