Journal of Information & Computational Science 11:17 (2014) 6359–6367 Available at http://www.joics.com November 20, 2014 Modifiable Composite Curves and Surfaces with Automatic Smoothness ⋆ Lanlan Yan a,b,∗, a College b School Xuli Han b of Science, East China Institute of Technology, Nanchang 330013, China of Mathematics and Statistics, Central South University, Changsha 410083, China Abstract This paper presents a piecewise composite curve; each segment is defined by 3-5 control points. The adjacent curve segments have two common control points. Moving one control point, at most two segments will change. The curve has shape adjustability as well as continuity adjustability. Choosing appropriate parameter, we can get the curve with expect continuity. We can modify the shape and the continuity of the curve in whole or in part by simply changing the parameter of the curve. We also extend the curve to surface. The numerical examples show the feasibility of the new modeling method. Keywords: Curve Design; Shape Parameter; Piecewise Combination; Continuity; Tensor Product Surface 1 Introduction B-spline method is an important curve and surface modeling method. B-spline curve possesses locality, and it can easily solve the problem of continuity. However, nothing can be perfect. Bspline method is no exception. Its continuity is closely related with its order. So if we want to construct B-spline curve with higher order of continuity, we must increase the order of the curve. But in doing so, the locality will weaken. In addition, the shape of B-spline curve is almost uniquely determined by its control polygon. And B-spline curve can not exactly represent conic curves in addition to parabola. Precisely because B-spline curve has some shortcomings, many papers proposed new methods. For example, [1]-[12] presented new curves which have the same structure as B-spline curve. These curves inherit the locality, smoothness and some other characteristics of B-spline curve. Furthermore, all the curves given in [1]-[12] have shape adjustable property. In particular, the curves in [7, 8] and [10] can accurately represent ellipse (circle). The curves presented in [9] and ⋆ Project supported by the National Nature Science Foundation of China (No. 11261003, No. 60970097, No. 11271376). ∗ Corresponding author. Email address: [email protected] (Lanlan Yan). 1548–7741 / Copyright © 2014 Binary Information Press DOI: 10.12733/jics20104431 6360 L. Yan et al. / Journal of Information & Computational Science 11:17 (2014) 6359–6367 [12] can represent all conic curves and some transcendental curves. The curves in [2], [10]-[12] can reach higher order of continuity than B-spline curve. Although so many papers improved B-spline curve, there is few paper research how to make the continuity of B-spline curve adjusted freely without changing its order. In [13], the authors did some research on this issue. A kind of B-spline-like curve of order two, which enjoys many good properties, was defined. In the present paper, we further define the similar curves of order three and order four. And define the composite curves which is composed of curves of different order. To keep the integrity, here will still briefly introduce the B-spline-like curve of order two. The rest of this paper is organized as follows. Section 2 gives the blending functions and their properties. In Section 3, we define the piecewise composite curve and analyze its properties. In Section 4, we extend the curve to surface. Finally, a short conclusion is given in Section 5. 2 2.1 Blending Functions Construction of the Blending Functions i i Let Bm,i (t) = Cm t (1 − t)m−i (i = 0, 1, ..., m) are the classical Bernstein basis functions. We use them to construct the following functions. Definition 1 Let k2 ≥ 1(k2 ∈ N ), m2 = k2 + 2, α ∈ (0, 1], for t ∈ [0, 1], the functions [13] 1 1−α f2,0 (t) = 2 Bm2 ,0 (t) + 2 Bm2 ,1 (t), f2,1 (t) = 1 − f2,0 (t) − f2,2 (t), f (t) = 1−α B (t) + 1 B (t), 2,2 m2 ,m2 −1 2 2 m2 ,m2 are called the blending functions of order 2. Definition 2 Let k3 ≥ 1(k3 ∈ N ), m3 = 2k3 + 1, α ∈ (0, 1], for t ∈ [0, 1], the functions f3,0 (t) = 21 Bm3 ,0 (t) + 1−α Bm3 ,1 (t), 2 ∑3 f (t) = 1 B (t) + 1+α Bm3 ,1 (t) + ki=2 Bm3 ,i (t), 3,1 2 m3 ,0 2 ∑m3 −2 1+α f3,2 (t) = i=k3 +1 Bm3 ,i (t) + 2 Bm3 ,m3 −1 (t) + 12 Bm3 ,m3 (t), f3,3 (t) = 1−α Bm3 ,m3 −1 (t) + 21 Bm3 ,m3 (t), 2 are called the blending functions of order 3. Definition 3 Let k4 ≥ 1(k4 ∈ N ), 1 ≤ s ≤ k4 (k4 , s ∈ N ), m4 = 2k4 + s + 1, α ∈ (0, 1], for t ∈ [0, 1], the functions ∑k 4 1−α 1 B (t) + f (t) = m ,0 4,0 4 i=1 Bm4 ,i (t), 2 2 ∑k 4 1+α 1 B (t) + 2 i=1 Bm4 ,i (t), 2 m4 ,0 f4,1 (t) = ∑ 4 +s Bm4 ,i (t), f4,2 (t) = ki=k 4 +1 ∑ m 1 4 −1 f4,3 (t) = 1+α i=k4 +s+1 Bm4 ,i (t) + 2 Bm4 ,m4 (t), 2 ∑ f (t) = 1−α m4 −1 B (t) + 1 B (t), 4,4 2 i=k4 +s+1 m4 ,i 2 m4 ,m4 L. Yan et al. / Journal of Information & Computational Science 11:17 (2014) 6359–6367 6361 are called the blending functions of order 4. For simplicity, we will abbreviate f·,· (t), B·,· (t) to f·,· , B·,· whenever there is no confusion. 2.2 Properties of the Blending Functions The blending functions of order 2-4 have the following properties. (1) Degeneracy[13] : When k2 = 1, α = 2/3, the blending functions of order 2 are the quadratic uniform B-spline basis functions. (2) Non-negativity: Under the conditions given in Definition 1-3, we always have fn,i ≥ 0, here n = 2, 3, 4, i = 0, 1, . . . , n. ∑ (3) Normalization: ni=0 fn,i = 1, here n = 2, 3, 4. (4) Symmetry: fn,i (t) = fn,n−i (1 − t), here n = 2, 3, 4, i = 0, 1, . . . , n. (5) Endpoint property: For n = 2, 3, 4, i = 0, 1, . . . , n, we have { fn,0 (0) = fn,1 (0) = 12 , fn,i (0) = 0 (i ̸= 0, 1), (1) fn,n−1 (1) = fn,n (1) = 12 , fn,i (1) = 0 (i ̸= n − 1, n), for any natural number L, when 1 ≤ L ≤ kn , we have { (L) (L) (L) L 1−L(1−α) L 1−L(1−α) fn,0 (0) = (−1)L L!Cm , fn,1 (0) = (−1)L−1 L!Cm , fn,i (0) = 0 (i ̸= 0, 1), n n 2 2 (L) (L) (L) L L(1−α)−1 L 1−L(1−α) fn,n−1 (1) = L!Cm , fn,n (1) = L!Cm , fn,i (1) = 0 (i ̸= n − 1, n). n n 2 2 (2) [13] Besides, for the blending functions of order 2, when L = k2 + 1, α = 1, we have { (L) f2,0 (0) = (−1)L m22 ! , (L) (L) f2,1 (0) = (−1)L−1 m22 ! , (L) f2,0 (1) = 0, f2,1 (1) = − m22 ! , (L) f2,2 (1) = (L) f2,2 (0) = 0, m2 ! . 2 (3) (6) Linear independence: The blending functions of order 2-4 are linearly independent. The proof for (1)-(4) is simple. The proof for (5) and (6) can refer to [13]. 3 3.1 Composite Curves Construction of the Curve Definition 4 Given n + 1(n = 2, 3, 4) control points Vi ∈ Rd (d = 2, 3; i = 0, 1, . . . , n), we can use the blending functions of order n to define ∑n fn (t) = fn,i (t)Vi , t ∈ [0, 1], (4) i=0 we call fn (t) pc-curve segment of order n. 6362 L. Yan et al. / Journal of Information & Computational Science 11:17 (2014) 6359–6367 Definition 5 Given control points Vi ∈ Rd (d = 2, 3; i = 0, 1, . . . , l(n−1)+1; l ∈ N + ; n = 2, 3, 4), we can construct a piecewise composite curve (pc-curve for short) consists of l pc-curve segments of order n, the ith segment is defined as ∑n fn,i (t) = fn,j (t)Vj+(n−1)(i−1) , t ∈ [0, 1], j=0 where i = 1, 2, . . . , l. In Definition 5, each curve segment has the same order. In fact, we can also let different curve segment select a different order. ∑ Definition 6 Given control points Vi ∈ Rd (d = 2, 3; k = 0, 1, . . . , li=1 ni − l + 1; l ∈ N + ; ni = 2, 3, 4), we can construct a pc-curve consists of l curve segments, the ith segment is a pc-curve segment of order ni , which is defined as ∑ni fni ,i (t) = fni ,j (t)Vj+∑i−1 , t ∈ [0, 1], (5) s=1 (ns −1) j=0 where i = 1, 2, . . . , l, in the case i = 1, we set ∑i−1 s=1 (ns − 1) = 0. The definition mode of pc-curve is analogous to the classical B-spline curve, but in fact they are different. For B-spline curve, between the two control polygons of two adjacent curve segments, only one edge is not the same. But for pc-curve, only one edge is the same. 3.2 Properties of the Curve The pc-curve has the following properties. (1) Convex hull property: Since the blending functions are nonnegative and they sum to one, the pc-curve segment fni ,i (t) given in (5) must lie inside the convex hull Hi of the control points (j = 0, 1, . . . , ni ), and the entire pc-curve must lies inside H = ∪li=1 Hi . Vj+∑i−1 s=1 (ns −1) (2) Geometric invariance: Because pc-curve is an affine combination of the control points, its shape is independent of the choice of the coordinate system. (3) Symmetry: From the symmetry of the blending functions, we know both V0 , . . . , Vn and Vn , . . . , V0 define the pc-curve segment in (4) with the same shape but different parameterization. (4) Shape adjustability: Each pc-curve segment has two or three parameters, which can be used to adjust the shape of the curve. Figs. 1-3 give the pc-curve segments of order 2-4 determined by the same control polygon but different parameters. The settings of parameters are as follows. In Fig. 1 (a), k2 = 1. In Fig. 1 (b), α = 1/5. In Fig. 2 (a), k3 = 2. In Fig. 2 (b), α = 1/5. In Fig. 3 (a), k4 = 3, s = 1. In Fig. 3 (b), α = 1, s = 4. In Fig. 3 (c), α = 1, k4 = 4. From top to bottom s = 1, 2, 3, 4. In Figs. 1 (a), 2 (a) and 3 (a), From bottom to top, α = 1/4, 1/2, 3/4, 1. In Figs. 1 (b), 2 (b) and 3 (b), From bottom to top, kn = 1, 2, 3, 4 (n = 2, 3, 4). As can be seen from Figs. 1-2, for the pc-curve segments of order 2 and 3, when only change α or kn (n = 2, 3), the lager the parameter, the closer the curve approaches its control polygon. The change of the approximation degree is uniform with the change of α but uneven with the change L. Yan et al. / Journal of Information & Computational Science 11:17 (2014) 6359–6367 (a) 6363 (b) Fig. 1: Pc-curve segments of order 2 (a) (b) Fig. 2: Pc-curve segments of order 3 (a) (b) (c) Fig. 3: Pc-curve segments of order 4 of kn (n = 2, 3). As can be seen from Fig. 3, for the pc-curve segment of order 4, when change α or k4 , the lager the parameter, the closer the curve approaches its second and fourth control points, the farther the curve away from its third control point. With the change of α, the change of the approximation degree is uniform. But the change of the approximation degree is uneven with the change of k4 . If only change s, the lager the parameter, the closer the curve approaches its third control point. The change of the approximation degree is uneven with the change of s. In addition, from (b) and (c) we can see that when k4 = s, the curve can well maintain the shape of the control polygon. (5) Local control property: From the definition of pc-curve, we know moving one control point will alter at most two curve segments. 6364 L. Yan et al. / Journal of Information & Computational Science 11:17 (2014) 6359–6367 (6) Endpoint property: From (1)-(4), we can get the following conclusions fn (0) = 12 (V0 + V1 ), fn (1) = 12 (Vn−1 + Vn ), n = 2, 3, 4, (6) for any natural number L, when 1 ≤ L ≤ kn (n = 2, 3, 4), fn(L) (0) = (−1)L−1 Sn,L (V1 − V0 ), fn(L) (1) = Sn,L (Vn = Vn−1 ), (7) where L 1−L(1−α) L 1−L(1−α) S2,L = L!Cm , S3,L = L!Cm , 2 3 2 2 L α S4,L = L!Cm , 4 2 when L = k2 + 1, α = 1, (L) (L) f2 (0) = (−1)L−1 m22 ! (V1 − V0 ), f2 (1) = m2 ! (V2 2 − V1 ). (8) Lemma 1 Let t ∈ [0, 1], assume two curve segments f (t) and g(t) are joined at f (1) = g(0). If when 1 ≤ L ≤ k, f (L) (1) = SL (Vb − Va ), g (L) (0) = (−1)L−1 SL (Vb − Va ), (9) here SL is a constant related to L, then the two curve segments are Gk continuous at the junction. Proof To make the two curve segments Gk continuous, there must g ′ (0) β1 g ′′ (0) β2 β12 ′′′ g (0) β3 3β1 β2 β13 = g (4) (0) β 4β β + 3β 2 6β 2 β β 4 1 3 4 2 1 2 1 . . . . . .. .. .. .. .. . . . g (k) (0) βk ... β1k be f ′ (1) f ′′ (1) ′′′ f (1) f (4) (1) , . .. f (k) (1) where β1 > 0. Substituting (9) into (10), we get β1 S1 β12 −S2 β2 β3 3β1 β2 β13 S3 = β 4β β + 3β 2 6β 2 β β 4 −S4 1 3 4 1 1 2 2 . . . . . .. .. .. .. . . . .. βk ... β1k (−1)k−1 Sk (10) S1 S2 S3 . S4 .. . Sk (11) Obviously, from (11) we can get unique solution about βi (i = 1, 2, . . . , k), and β1 = 1 > 0. So the two curve segments are Gk continuous. From (6)-(8) and Lemma 1, we can get the following two propositions. L. Yan et al. / Journal of Information & Computational Science 11:17 (2014) 6359–6367 6365 Proposition 1 For pc-curve defined by Definition 5, if kn (n = 2, 3, 4) of each segment are equal, the adjacent curve segments are Gkn continuous. Specially, when n = 2, α = 1, they are Gk2 +1 continuous. If the parameters of each segment are unequal, then the ith and (i + 1)th segment are Gk continuous, here k = min{kni , kni+1 }. Specially, if n = 2, αi = 1, then k = min{k2i + 1, k2i+1 }. Proposition 2 For pc-curve defined by Definition 6, the ith and (i + 1)th curve segment are Gk continuous, here k = min{kni , kni+1 }. In particular, if ni = 2, αi = 1, then k = min{k2 + 1, kni+1 }. Figs. 4-6 show some pc-curves. In Fig. 4, the curves are composed of pc-curve segments of order 3. All segments in (a) and (b) take k3 = 2, α = 1. All adjacent curve segments are G2 continuous. In Fig. 5, the curves are composed of pc-curve segments of order 4. All segments in (a) take k4 = s = 1, α = 2. All adjacent curve segments are G1 continuous. All segments in (b) take k = s = α = 2. All adjacent curve segments are G2 continuous. In Fig. 6, the segment 1 is a pc-curve segment of order 3, the solid line takes k3 = 2, α = 1/2, the dashed line takes k3 = 2, α = 1. The segments 2 and 4 are pc-curve segments of order 4 take k4 = s = 2, α = 1. The segment 3 is a pc-curve segments of order 2, takes k2 = 2, α = 1/5. All adjacent curve segments are G2 continuous. (a) (b) Fig. 4: Pc-curve of order 3 (a) (b) Fig. 5: Pc-curve of order 4 6366 L. Yan et al. / Journal of Information & Computational Science 11:17 (2014) 6359–6367 3 4 2 1 Fig. 6: Pc-curve constituted by pc-curve segments of different order 4 Composite Surfaces Definition 7 Given control points Vij ∈ R3 (i = 0, 1, . . . , l1 (n − 1) + 1; j = 0, 1, . . . , l2 (n − 1) + 1; l1 , l2 ∈ N + ; n = 2, 3, 4), we can construct a pc-surface which is composed of l1 × l2 surface patches of order n, the (i, j)th surface patch is defined as ∑n ∑n fij (u, v) = fn,a (u)fn,b (v)Va+(n−1)(i−1),b+(n−1)(j−1) 0 ≤ u, v ≤ 1, a=0 b=0 where i = 1, 2, . . . , l1 , j = 1, 2, . . . , l2 . The pc-surface has similar properties with pc-curve. For example, if two adjacent surfaces have the same parameter kn (n = 3, 4), then they are Gkn continuous at the common edge. Figs. 7 and 8 show some pc-surfaces. In Fig. 7, the surface is composed of four surface patches of order 3, take k3 = 1, α = 1, all adjacent surface patches are G1 continuous. In Fig. 8, the surface is composed of two surface patches of order 4, take k4 = 2, s = 1, α = 2/3. The adjacent surface patches are G2 continuous. 1 6 5 z 4 3 2 1 3 2 1 2 0 1 0 y −1 −1 x −2 −2 −3 −3 Fig. 7: Pc-surface of order 3 5 3 Fig. 8: Pc-surface of order 4 Conclusion By reconstructing the Bernstein basis functions, we construct three sets of blending functions. Based on them, we define three kinds of curve segments, which have special endpoint properties. At the endpoints, their derivative vectors from order one to order kn are collinear. To make full L. Yan et al. / Journal of Information & Computational Science 11:17 (2014) 6359–6367 6367 use of this feature, using a special definition mode, we define the pc-curve based on the three kinds of curve segments. The definition mode of pc-curve is different from the classical B-spline curve. The change of one control point will affect at most two curve segments. So pc-curve has better local controllability. Besides, each segment of pc-curve has two or three parameters, which can be used to adjust the shape of the curve. In these parameters kn can also be used to adjust the continuity of the curve. Changing the parameter kn of one curve segment, at most the continuity at two connection points will change. References [1] Paolo Costantini, Francesca Pelosi, Maria L. Sampoli, New spline spaces with generalized tension properties [J], BIT Numerical Mathematics, 48(4), 2008, 665-688 [2] Xuli Han, Yuanpeng Zhu, Curve construction based on five trigonometric blending functions [J], BIT Numerical Mathematics, 52(4), 2012, 953-979 [3] Xuli Han, Piecewise quadratic polynomial curves with a local shape parameter [J], Journal of Computational and Applied Mathematics, 195(1-2), 2006, 34-45 [4] Xumin Liu, Weixiang Xu, Uniform B-spline curve and surfaces with shape parameters [C], in: 2008 International Conference on Computer Science and Software Engineering, 2008, 975-979 [5] Xuli Han, A class of general quartic spline curves with shape parameters [J], Computer Aided Geometric Design, 28(3), 2011, 151-163 [6] Xumin Liu, Weixiang Xu, Yong Guan, Shang yuanyuan, Hyperbolic polynomial uniform B-spline curves and surfaces with shape parameter [J], Graphical Models, 72(1), 2010, 1-6 [7] Xuli Han, Quadratic trigonometric polynomial curves with a shape parameter [J], Computer Aided Geometric Design, 19(7), 2002, 503-512 [8] Wentao Wang, Guozhao Wang, Trigonometric polynomial B-spline with shape parameter [J], Progress in Natural Science, 14(11), 2004, 1023-1026 [9] Ben-yue Su, Jie-qing Tan, A family of quasi-cubic blended splines and applications [J], Journal of Zhejiang University Science A, 7(9), 2006, 1550-1560 [10] Xuli Han, Cubic trigonometric polynomial curves with a shape parameter [J], Computer Aided Geometric Design, 21(6), 2004, 535-548 [11] Xuli Han, C2 quadratic trigonmetric polynomial curves with local bias [J], Journal of Computational and Applied Mathematics, 180(1), 2005, 161-172 [12] Lanlan Yan, Jiongfeng Liang, A class of algebraic-tigonometric blended splines [J], Journal of Computational and Applied Mathematics, 235(6), 2011, 1713-1729 [13] Lanlan Yan, Xuli Han, B´ezier-like curve and B-spline-like curve of order two [J], Journal of Information and Computer Science, 10(17), 2013, 5483-5503
© Copyright 2024