Computer Aided Geometric Design 18 (2001) 657–666 www.elsevier.com/locate/comaid On the smooth convergence of subdivision and degree elevation for Bézier curves Géraldine Morin, Ron Goldman ∗ Computer Science Department, Rice University, Houston, TX, 77005-1892, USA Received September 2000; revised March 2001 Abstract Bézier subdivision and degree elevation algorithms generate piecewise linear approximations of Bézier curves that converge to the original Bézier curve. Discrete derivatives of arbitrary order can be associated with these piecewise linear functions via divided differences. Here we establish the convergence of these discrete derivatives to the corresponding continuous derivatives of the initial Bézier curve. Thus, we show that the control polygons generated by subdivision and degree elevation provide not only an approximation to a Bézier curve, but also approximations of its derivatives of arbitrary order. 2001 Elsevier Science B.V. All rights reserved. Keywords: Bézier curve; Derivative; Approximation; Subdivision; Degree elevation 1. Introduction Recursive subdivision and degree elevation both generate a sequence of control polygons that converge to the underlying Bézier curve. However, in general, even the uniform convergence of a sequence of piecewise linear functions to a smooth function does not necessarily imply any convergence of the derivatives, as the example in Fig. 1 shows. In this paper, we prove that not only do these two algorithms converge, but that they converge smoothly: that is, the successive control polygons can be associated with piecewise linear functions approximating the derivatives of the underlying Bézier curve up to any order. Moreover, the order of the approximation for the derivatives is the same as the order of convergence of the corresponding algorithm: quadratic for subdivision (Lane and Riesenfeld, 1980; Prautzsch and Kobbelt, 1994), linear for degree elevation (Farin, 1977; * Corresponding author. E-mail address: [email protected] (R. Goldman). 0167-8396/01/$ – see front matter 2001 Elsevier Science B.V. All rights reserved. PII: S 0 1 6 7 - 8 3 9 6 ( 0 1 ) 0 0 0 5 9 - 0 658 G. Morin, R. Goldman / Computer Aided Geometric Design 18 (2001) 657–666 Fig. 1. The sawtooth function converges uniformly to the zero function, but its first derivative does not converge. Cohen and Schumaker, 1985; Prautzsch and Kobbelt, 1994). To prove these results, we make use of the standard formulas for differentiation, subdivision, and degree elevation for Bézier curves (Farin, 1992) as well as the well known convergence properties of these subdivision and degree elevation algorithms. We also apply the conventional approach to discrete derivatives via divided differences, used in particular for uniform subdivision schemes (Dyn et al., 1991). Floater and Lyche (2000) also approximate derivatives of Bézier curves but they use a sequence of polynomials, whereas our method uses piecewise linear functions. 2. Background and notation In this section, we fix our notation and recall briefly the standard results on the convergence of the degree elevation and subdivision algorithms for Bézier curves. Denote by P a Bézier curve of degree n over the interval [0, 1]: P (t) = n Pk Bkn (t), (1) k=0 where Bkn (t) = (nk )(1 − t)n−k t k is the kth Bernstein polynomial of degree n and (nk ) is the n! . The polyline characterized by the sequence of Bézier control binomial coefficient k!(n−k)! 0 points p = (P0 , . . . , Pn ) is called the control polygon of P . In the following, UP(p, [a, b]) denotes the uniform parameterization of a control polygon p = (Π0 , . . . , Πn ) over an interval [a, b]. That is: b−a = Πj , UP p, [a, b] a + j n b−a and UP(p, [a, b]) is linear on the intervals [a + j b−a n , a + (j + 1) n ], j = 0, . . . , n − 1. G. Morin, R. Goldman / Computer Aided Geometric Design 18 (2001) 657–666 659 2.1. Degree elevation A polynomial P of degree n is also a polynomial of degree ν for any ν n. As such, P has a vector of control points πν , so that: P (t) = ν (πν )k Bkν (t). k=0 The degree elevation algorithm computes the control points πν+1 from the control points πν (Farin, 1992). Explicitly: πν+1 = Eν πν , where Eν is a (ν + 2) × (ν + 1) bi-diagonal matrix such that: ν +1−i i+1 and (Eν )i+1,i = , for 0 i n + 1. (Eν )i,i = ν +1 ν+1 The successive vectors πν , ν n, define a sequence of control polygons. We denote by λ(P , ν) the uniform parameterization of the control polygon for degree ν, that is: λ(P , ν) = UP πν , [0, 1] . It is well know that the functions λ(P , ν) converge to P at a rate of O( ν1 ) (Farin, 1977; Cohen and Schumaker, 1985; Prautzsch and Kobbelt, 1994). 2.2. Subdivision Bézier subdivision doubles the number of control polygons at each step: from the control polygon of a Bézier curve on a given interval [a, b], the control polygons of the restrictions a+b of the curve to the intervals [a, a+b 2 ] and [ 2 , b] are generated (Farin, 1992). In particular, 1 0 for a degree n Bézier curve, p0 = Ln p and p11 = Rn p0 are the left and right control polygons generated after one round of subdivision, where i j i 1 Ln = Bj = 2 i,j =0,...,n 2i i,j =0,...,n and n−i j −i n−i 1 = . Rn = Bj −i 2 i,j =0,...,n 2n−i i,j =0,...,n Recursively, we denote by {p0i , . . . , p2i i −1 } the control polygons generated by i rounds of subdivision: pki = S1 . . . Si p0 , (2) where Sj ∈ {Ln , Rn } for all j = 0, . . . , i. The piecewise linear approximation l(P , i) is ]: the uniform parameterization defined piecewise by its restriction to the interval [ 2ki , k+1 2i i of pk . That is: k k+1 i l(P , i)|[ k , k+1 ] = UP pk , i , i . 2 2 2i 2i 660 G. Morin, R. Goldman / Computer Aided Geometric Design 18 (2001) 657–666 The functions l(P , i) converge to P at a rate of O( 21i ) (Lane and Riesenfeld, 1980; Prautzsch and Kobbelt, 1994). 3. Definition of the discrete derivatives In this section, we recall the standard definition of the discrete derivatives for a generic uniform piecewise linear function, and then specialize to the piecewise linear functions generated by degree elevation and subdivision. These discrete derivatives are themselves piecewise linear functions. 3.1. Discrete derivatives of a uniform piecewise linear function Let n be the normalized difference matrix of size n × (n + 1), given by (n )i,i = −n, (n )i,i+1 = n, for 0 i n, and otherwise (n )i,j = 0 for 0 i n, 0 j n + 1. The first discrete derivative D 1 is typically defined by setting 1 n p, [a, b] , D 1 UP p, [a, b] = UP b−a where n + 1 is the number of vertices of p. Derivatives of higher order for uniform piecewise linear functions are then defined recursively: D m UP p, [a, b] = D 1 D m−1 UP p, [a, b] 1 = UP n−m+1 . . . n p, [a, b] . (b − a)m Fig. 2. An example of discrete derivatives: from top to bottom, the function UP({1, 2, 1, 1, 0}, [0, 1]) and its discrete derivatives of orders 1 and 2. G. Morin, R. Goldman / Computer Aided Geometric Design 18 (2001) 657–666 661 In particular, the functions λ(P , ν) generated by degree elevation are uniform piecewise linear functions. Thus since [a, b] = [0, 1], D m λ(P , ν) = UP ν−m+1 . . . ν πν , [0, 1] . 3.2. Discrete derivatives of l(P , i) In this paragraph, we generalize the definition of the discrete derivatives; our goal here is to define the discrete derivative over the set of piecewise linear approximations {l(P , i), i ∈ N} of P generated by Bézier subdivision. First, note that D m l(P , i) is defined piecewise on each interval [ 2ki , k+1 ], since the restriction of l(P , i) on each interval [ 2ki , k+1 ] is 2i 2i a uniform piecewise linear function. The following lemma asserts that the functions ] intersect at 2ki D m l(P , i) are indeed well defined on [0, 1]. Since the intervals [ 2ki , k+1 2i for k = 1, . . . , 2i − 1, we need only to check that the value D m l(P , i)( 2ki ) is uniquely defined. Lemma 1. m D l(P , i)|[ k−1 , k ] 2i 2i k 2i = D l(P , i)|[ k , k+1 ] m 2i 2i k , 2i for k = 1, . . . , 2i − 1. Proof. Because the control polygons generated by Bézier subdivision define the same underlying polynomial, the continuity between the different parts of the polynomial curve they define is C ∞ . Therefore: i n−m . . . n pki n−m−1 = n−m . . . n pk+1 . 0 By the definition of D m , this equality is equivalent to the lemma. ✷ In this section we have shown that discrete derivatives of any order can be associated with the piecewise linear functions generated by the degree elevation and subdivision algorithms. In the next section, we will prove that in both cases these discrete derivatives converge to the corresponding continuous derivatives of the underlying Bézier curve. 4. Approximation of Bézier derivatives The discrete derivatives D m λ(P , ν) and D m l(P , i) both converge to the continuous derivative P (m) . To prove these assertions, we shall show that discrete differentiation commutes with both subdivision and degree elevation. It will then follow that the discrete derivative of the piecewise linear approximant generated by degree elevation or subdivision is exactly equivalent to the piecewise linear function generated by the same algorithm applied to the corresponding derivative of the Bézier curve. Note that for Bézier curves, continuous differentiation must commute with both subdivision and degree elevation because the Bernstein coefficients of a polynomial are unique. However, these observations about continuous differentiation do not imply that discrete differentiation must commute with both subdivision and degree elevation. Indeed 662 G. Morin, R. Goldman / Computer Aided Geometric Design 18 (2001) 657–666 for any polynomial basis, continuous differentiation must commute with both subdivision and degree elevation, but in general the same can not be said for discrete differentiation. To prove our assertions about discrete differentiation, we shall need a result connecting the continuous and discrete derivative of a Bézier curve. Lemma 2 links the derivative of a Bézier curve with the difference operator applied to the control points. Lemma 2. If p0 is the vector of Bézier control points of a polynomial P of degree n, then n−m+1 . . . n p0 is the vector of Bézier control points of P (m) . Proof. Because (see, for example, (Farin, 1992)) n n−1 Bk (t) = n Bk−1 (t) − Bkn−1 (t) and from Eq. (1), we have the well known formula (also in (Farin, 1992)) P (t) = n n (Pk+1 − Pk )Bkn−1 (t). k=0 Thus, n p is the vector of control points of P and is of dimension n. Therefore, by induction, the lemma holds. ✷ The next two lemmas establish the commutativity of the normalized difference matrix with the degree elevation and subdivision matrices. To the best of our knowledge, these two lemmas are new, and they constitute, together with Theorems 5 and 7, the main contributions of this paper. Lemma 3. n+1 En = En−1 n . Proof. It is easy to check directly from the definitions of n and En . ✷ Lemma 4. 1 n Ln = Ln−1 n , 2 1 n Rn = Rn−1 n . 2 Proof. First, note that the matrices on the left hand side and right hand side have the same size, since Ln and Rn are both of size (n + 1) × (n + 1) and n is of size n × (n + 1). Moreover, Ln = [Bji ( 12 )]i,j =0,...,n ; thus i+1 1 i 1 n Ln = n −Bj + Bj 2 2 i=0,...,n−1, j =0,...,n and 1 1 Ln−1 n = n −Bji + Bji −1 . 2 2 i=0,...,n−1, j =0,...,n G. Morin, R. Goldman / Computer Aided Geometric Design 18 (2001) 657–666 663 But by the standard recurrence for the Bernstein basis (Farin, 1992), n −Bkn (r) + Bkn+1 (r) = −Bkn (r) + rBk−1 (r) + (1 − r)Bkn (r), n = r −Bkn (r) + Bk−1 (r) . Therefore setting r = 1 2 1 n Ln = Ln−1 n . 2 Similarly for the right subdivision matrix, we have n−i−1 1 n−i 1 n Rn = n Bj −i−1 − Bj −i 2 2 i=0,...,n−1, j =0,...,n n−i−1 1 n−i 1 − Bn−j = n Bn−j 2 2 i=0,...,n−1, j =0,...,n and 1 n−i−1 1 − B Rn−1 n = n Bjn−i−1 j −i −i−1 2 2 i=0,...,n−1, j =0,...,n n−i−1 1 n−i−1 1 = n Bn−j . − Bn−j −1 2 2 i=0,...,n−1, j =0,...,n Moreover for all r n−i−1 n−i Bn−j (1 − r) − Bn−j (1 − r) n−i−1 n−i−1 n−i−1 = Bn−j (1 − r) − (1 − r)Bn−j −1 (1 − r) − rBn−j (1 − r) n−i−1 n−i−1 = (1 − r) Bn−j (1 − r) − Bn−j −1 (1 − r) . Thus, the commutativity relation for the right subdivision matrix holds as well. ✷ The main result for degree elevation follows from the Lemmas 2 and 3. Theorem 5. As ν ∈ N goes to infinity, the discrete derivative D m λ(P , ν) converges to the continuous derivative P (m) of the underlying Bézier curve. Moreover the rate of convergence is O( ν1 ), the same as the rate of convergence of the degree elevation algorithm. Proof. First, we prove that: D m λ(P , ν) = λ P (m) , ν . (3) For m = 1, we have D 1 λ(P , ν) = D 1 UP(Eν−1 Eν−2 . . . En p0 , [0, 1]) = UP ν Eν−1 . . . En p0 from the definition of D 1 = UP Eν−2 Eν−3 . . . En−1 n p0 , [0, 1] from Lemma 3 = λ(P , ν − 1) from Lemma 2 and the definition of λ. 664 G. Morin, R. Goldman / Computer Aided Geometric Design 18 (2001) 657–666 Therefore, by induction, Eq. (3) holds. Moreover, from the convergence of the degree elevation algorithm, the sequence (λ(P (m) , ν))νn converges to P (m) at a rate of O( ν1 ). ✷ For Bézier subdivision, we shall first establish the convergence of D m l(P , i) on each ]. As in the case of degree elevation, we shall see that the two linear interval [ 2ki , k+1 2i functions D m l(P , i) and l(P (m) , i) agree on each interval [ 2ki , k+1 ], where 0 k 2i − 1. 2i Lemma 6. On the interval [ 2ki , k+1 ]: 2i D m l(P , i) = l P (m) , i . Proof. First we establish this result for m = 1, by showing that the two linear functions D 1 l(P , i) and l(P , i) have the same values at their knots. The vector of points defining D 1 l(P , i) on [ 2ki , k+1 ] is 2i n pki . But from Eq. (2), pki = S1 . . . Si p0 , where each Sj is 2i either Ln or Rn . Thus, from the commutativity identities in Lemma 4: 2i n pki = 2i n S1 . . . Si p0 = S1 . . . Si n p0 , where Sj is either Ln−1 or Rn−1 if Sj was respectively either Ln or Rn . But, from Lemma 2, n p is the vector of control points of P , and therefore S1 . . . Si n p is exactly ]—that is, the vector of control points of the restriction of P to the interval [ 2ki , k+1 2i the kth control polygon of P after i rounds of subdivision, or equivalently, the control ]. As a consequence, D 1 l(P , i) and polygon defining l(P , i) on the interval [ 2ki , k+1 2i l(P , i) have the same vector of values at the knots. Moreover, these functions are both uniform piecewise linear on the interval [ 2ki , k+1 ]; thus, they agree on this interval. By 2i induction, this result holds as well for all m 2. ✷ From the previous section we know that l(P m , i) converges quadratically to P m . Thus, Lemma 6 implies that D m l(P , i) converges, also quadratically, to P m on each interval ]. [ 2ki , k+1 2i Theorem 7. The discrete derivative D m l(P , i) converges to the continuous derivative P (m) of the polynomial on the interval [0, 1] as i goes to infinity. Moreover the rate of convergence is O( 21i ), the same as the rate of convergence of the subdivision algorithm. ]. But, the function Proof. From Lemma 6, the result is true on each interval [ 2ki , k+1 2i D m l(P , i) is well defined by its restriction to these intervals; therefore the convergence result holds on [0, 1]. ✷ 5. Extensions In this section we present other frameworks, generalizing Bézier curves, in which similar results hold: that is, we can construct a sequence of piecewise linear functions converging G. Morin, R. Goldman / Computer Aided Geometric Design 18 (2001) 657–666 665 Fig. 3. Here we illustrate Theorem 7. On the top, from left to right: a Bézier curve and its control polygon, and the piecewise linear approximations of order 1 and 3 generated by subdivision. On the bottom, the corresponding derivatives of these three figures: the continuous derivative of the Bézier curve, and the first discrete derivative of the piecewise linear approximations. to the continuous derivative of a curve or partial derivative of a surface. In each of the cases below, we shall justify the result by giving the underlying commutativity relation. Details of these proofs are left to the reader. 5.1. Bézier tensor product surfaces Let us consider a Bézier tensor product surface, with the two parameter directions u and v of degree n and m. Degree elevation, subdivision and differentiation can be applied independently in both directions u and v. Each of these operations can be characterized by matrices: Eu, Ev for degree elevation, Lu, Lv, Ru, Rv for subdivision and u, v for differentiation. These matrices act on a vector of control points of size (n + 1)(m + 1). Commutativity relations similar to the curve case hold, both for degree elevation and subdivision: the differentiation matrices in u and v both commute with each of the degree elevation and subdivision matrices. Therefore, discrete derivative operators in u and v applied to the piecewise bilinear approximation of the surface generate sequences of piecewise bilinear functions converging to the continuous partial derivative of corresponding order of the Bézier surface. 5.2. Poisson curves and surfaces Poisson curves are to analytic functions, what Bézier curves are to polynomials. That is, a Poisson curve is an analytic curve that admits a control polygon whose control points k are its coefficients in the Poisson basis ( tk! e−t )k0 . A subdivision algorithm for Poisson curves exists and is characterized by a single subdivision matrix (Morin and Goldman, 2000)—unlike in the polynomial setting where both right and left subdivision have to be considered. In the Poisson framework, as in the polynomial setting, it is easy to show that the difference matrix and the subdivision matrix commute. Thus, the piecewise linear functions generated by the subdivision algorithm which converge to the Poisson curve 666 G. Morin, R. Goldman / Computer Aided Geometric Design 18 (2001) 657–666 admit discrete derivatives that converge to the corresponding continuous derivatives of the Poisson curve. Moreover this case is even simpler than the polynomial case: Since one subdivision matrix is sufficient to define Poisson subdivision, the discrete derivatives are given on a unique interval, and are not defined piecewise. As with polynomials, the curve case generalizes to the surface setting. We can also construct sequences of piecewise bilinear functions approximating continuous partial derivatives of a Poisson tensor product surface, since in this case, too, difference and subdivision matrices in both directions commute. 5.3. B-spline subdivision Another generalization of Bézier curves is provided by B-splines. Let us consider the uniform B-splines of degree n, with continuity of order n − 1 at the knots. We denote by Sn the corresponding subdivision matrix (see, for example, (Warren, 1995)). The following commutativity relation holds: Sn = 2Sn−1 , where is the unnormalized difference matrix, and we consider all these matrices to be infinite. This commutativity relation is well-known, since it is used to prove the smoothness of the limit of this subdivision scheme. Therefore, here again, we can construct from the piecewise linear functions associated with the control polygon, sequences a piecewise linear functions converging to the continuous derivatives of a B-spline curve. References Cohen, E., Schumaker, L.L., 1985. Rates of convergence of control polygons. Computer Aided Geometric Design 2, 229–235. Dyn, N., Gregory, J., Levin, D., 1991. Analysis of uniform binaty subdivision schemes for curve design. Constructive Approximation 7, 127–147. Farin, G., 1977. Konstruktion und Eigenschaften von Bézier-Kurven und -Flächen, Master’s Thesis. Technical University Braunschweig, FRG. Farin, G., 1992. Curves and Surfaces for CAGD, A Practical Guide, 3rd edn.. Academic Press. Lane, J.M., Riesenfeld, R.F., 1980. A theoretical development for the computer generation and display of piecewise polynomial surfaces. IEEE Trans. Pattern Anal. Mach. Intell. PAMI-2, 35– 46. Floater, M.S., Lyche, T., 2000. Asymptotical convergence of degree-raising. Adv. Comput. Math. 12, 175–187. Morin, G., Goldman, R., 2000. A subdivision scheme for Poisson curves and surfaces. Computer Aided Geometric Design 17, 813–833. Prautzsch, H., Kobbelt, L., 1994. Convergence of subdivision and degree elevation. Adv. Comput. Math. 2, 143–154. Warren, J., 1995. Subdivision methods for geometric design, available at http://www.cs.rice. edu/∼jwarren/.
© Copyright 2026 Paperzz