| In this paper, we mainly studied the G1 and G2 continuous conditions between B-spline surfaces and the method of constructing G1 and G2 continuous surface by carrying out local scheme. The geometric continuity conditions are studied under two kinds of situations: single interior knots and multiple interior knots. The conditions are deduced not only in the case of adopting simple blending functions, but also in the case of adopting some kinds of complicated blending functions, such as polynomial functions of greater degrees. There are aggregately four central parts in this paper.In the first part , the G1 continuity conditions between two adjacent B-spline surfaces with single interior knots are given. Firstly, the necessary conditions for two adjacent B-spline surfaces to be connected with G1 continuity in the case of adopting simple blending functions are given. It's a generalization of the " intrinsic condition " obtained by Shi and the " convergent smooth conditions " obtained by Che. The conclusions drew by them pointed out that if we construct a G1 continuous surface consists of several B-spline surfaces with single interior knots by carrying out local scheme, the degrees of all the B-spline surfaces must be greater then 5×5. However, we found a method to increase the degree of freedom of the common boundary such that we can construct a G1 smooth surface consists of some biquartic B-spline surfaces. Secondly, the necessary conditions for two adjacent B-spline surfaces to be connected with G1 continuity in the case of adopting blending functions of greater degrees are given. According to the necessary conditions, a kind of sufficient conditions for two adjacent B-spline surfaces to be connected with G1 continuity and the method to connect two adjacent B-spline surfaces under the sufficient conditions are given.In the second part , the G2 continuity conditions between two adjacent B-spline surfaces with single interior knots are given. Firstly, the necessary conditions for two adjacent biquintic B-spline surfaces to be connected with G2 continuity in the case of adopting simple blending functions are given. We also gave three strategies to make the conditions hold and analyzed what kind of curves the common boundary and the second order partial derivatives should be under different strategy. Secondly, the necessary conditions for two adjacent B-spline surfaces to be connected with G2 continuity in the case of adopting blending functions of greater degrees are given. A kind of sufficient conditions are given too. Lastly, we studied the the intertwining problem produced by the G2 conditions around a three-patch corner, and gave a method to solve the problem.In the third part, we studied the G1 and G2 continuity conditions between two B-spline surfaces with multiple interior knots. Firstly, the necessary conditions for two adjacent bicubic or biquartic B-spline surfaces with double interior knots and for two adjacent biquartic B-spline surfaces with triple interior knots to be connected with G1 continuity are given. Secondly, we studied the G1 continuous conditions between two adjacent B-spline surfaces in the case of adopting blending functions of greater degrees. Lastly, the necessary conditions for two adjacent biquintic B-spline surfaces with double or triple interior knots to be connected with G2 continuity are given.In the fourth part, we extend some results obtained in the three parts to the case of NURBS surfaces.First of all, we introduce some basic knowledge needed in this paper:1. A bicubic B-spline surface with single interior knots is C2 continuous. A biquartic B-spline surface with single interior knots is C3 continuous. The continuity of the B-spline surface will decrease by one degree whenever the multiplicity of the knots increase by one degree.2. A B-spline surface can be treated as the combination of some Bézier surface patches with some parametric continuity. The problem of connecting two B-spline surfaces relates with but not the same as that of connecting these Bézier surface patches.3. The basic request for constructing a G1 continuous surface consists of B-spline surfaces by carrying out local scheme is that there exist at least 6 control points adjustable independently for every common boundary.Secondly, we briefly describe the basic ideas in this paper for connecting two adjacent B-spline surfaces with G1 and G2 continuity. Suppose there are two tensor product B-spline surfaces B(u,w),C(s,v) where the common boundary of them isΦ(v) = B(0, v) = C(0, v) and the knot vectors of them are U, V and S, V respectively. Without loss of generality, suppose the lengths of the knot spans belong to the same knot vector are equal. In this paper, we always deduced the geometric continuity conditions between two adjacent B-spline surfaces in the following way. Firstly, we deduced the conditions for the two Bézier patches beside the first segment of common boundary and the conditions for the two Bézier patches beside the second segment of common boundary to be connected with some kind of geometric continuity . Secondly, we looked for the relationship between the two groups of conditions. Lastly, we extended the relationship to the whole common boundary and obtained the conditions for the two B-spline surfaces to be connected with some kind of geometric continuity, see Fig.1.For the convenience of discussion, we don't distinguish the parameters of B-spline surface and the parameters of the Bézier patches building up the B-spline surface, and denote the parameters of them by u,s,v. For example, if B(u,v) and C(s,v) are both bicubic B-spline surfaces, then denote the first and the second segment of the common boundary byΦ0(v) andΦ1(v) respectively. And suppose the control points ofΦ0(v) andΦ1(v) areφ0~φ3 andφ3~φ6 respectively. Denote the first and second segment of and by Bu0(v), Bu1(v) and Cs0(v), Cs1(v) respectively. Suppose the control points of them are b0~b6, c0~c6 respectively. Denote the first and second segment of and with Buu~0(v), Buu1(v) and Css0(v), Css1(v) respectively. Suppose the control points of them are e0~e6 and f0~f6 respectively. We call and the second order partial derivatives of B(u,v) and C(s,v) and denote the first and second segment of them by Buv0(v), Buv1(v) and Csv0(v), Csv1(v) respectively.As we all know, the necessary and sufficient conditions for B(u,v) and C(s, v) to be connected with G1 continuity is that there exist three piecewise polynomial functionsα(v),β(v),γ(v) such that:Generally speaking, the degrees ofα(v),β(v) are equal, which is one degree smaller than that ofγ(v). We denote the mode thatα(v),β(v) are piece-wise constants andγ(v) is piecewise linear function by mode (0, 0, 1) and so on.In the first part of this paper, we firstly deduced the necessary conditions for two adjacent bicubic B-spline surfaces with single interior knots to be connected with G1 continuity under mode (0,0,1).Suppose the expressions of the blending functions in the first and second segment are:Then we can translate equation (1) into the following formsegment 1: segment 2:If (2) and (3) hold, some restrictions must be imposed to the blending functionsαi(v),βi(v)γi(v) and the control points {φi}. About this question, Shi has got the " intrinsic conditions " and Che has got the " convergent smooth conditions ": We generalized the two conditions.Theorem 1 Suppose two adjacent bicubic B-spline surfaces B(u, v) and C(s, v) meet along the common boundaryΦ(v) = B(0,u) = C(0, v). Denote the first and second segment of it byΦ0(v) andΦ1(v) respectively. Then the necessary conditions for B(u,v) and C(s,v) to be connected with G1 continuity under mode (0,0,1) are:And there are two strategies to make (8) holds:Strategy 1. Let . In this case, the common boundary must be a cubic polynomial curve, and there are aggregately 4 control points adjustable independently for the common boundary.Strategy 2. Let . In this case, the common boundary isn't necessarily a cubic polynomial curve, and there are at least 5 control points adjustable independently as long as the common boundary consists of at least two segments.As a matter of fact, strategy 1 is just the different form of the " instrinc condition " (5). In this case, the common boundaryΦ(v) is C3 continuous, so it must be a polynomial curve. This is an important reason for the conclusion that if we construct a G1 continuous surface by carrying out local scheme, the surface degrees must be no less than 5×5.Under strategy 2, the restriction on the common boundary can be broken.If B(u,v) and C(s,v) are biquartic B-spline surfaces, we can draw the similar conclusion. The only difference is that (8) should be replaced by the following equation:Theorem 2 Suppose two adjacent biquartic B-spline surfaces B(u, v) and C(s, v meet along the common boundaryΦ(v) = B(0,u) = C(0,v). Denote the first and second segment of it byΦ0(v) andΦ1(v) respectively. Then the necessary conditions for the two surfaces to be connected with G1 continuity are (6), (7),(9). And there are two strategies to make equation (9) holds:Strategy 1. Let . In this case, the common boundary is a quartic polynomial curve, and there are aggregately 5 control points adjustable independently for the common boundary.Strategy 2. Letγ01 =γ10 = 0. In this case, the common boundary isn't necessarily a quartic polynomial curve, and there are at least 6 control points adjustable independently as long as the common boundary consists of at least two segments, so the local scheme can be carried out.As we all know, the key of constructing a G1 continuous surface by carrying out local scheme is that there must be at least 6 control points adjustable independently for every common boundary. Prom the discussion hereinbefore, we can draw the conclusion that local scheme can be carried out with biquartic B-spline surfaces by adopting strategy 2 on any segment of the common boundary.Now, we describe the method for carrying out local scheme with biquartic B-spline surfaces. Firstly, we give the algorithm for connecting two adjacent biquartic B-spline surfaces with G1 continuity. The connecting function of the two surfaces on the first segment is: The connecting function of the two surfaces on the second segment is: following form:From the C3 continuity of B(u, v) and C(s, v), we can get the following relationships:Without the details of prove, we have the following conclusion:Theorem 3 If (6), (7), (9) and (12), (13) hold, then the front three equations of (10) and the rail three equations of (11) can deduce the rail two equations of (10) and the front two equations of (11).Then we can connect two biquartic B-spline surfaces with strategy 2 in the following way.1. Firstly, confirm all the control points of every common boundary, i.e.φ0~φ8. From theorem 2, there are right 6 points adjustable independently in the 9 points. For the convenience of carrying out local scheme, we suppose that the control pointsφ0,φ1,φ2 andφ6,φ7,φ8 are given. Prom (12), we can obtain a unique solution of the rest control points,φ3,φ4,φ5.2. Secondly, adjust the control points beside the common boundary, i.e. b0~b8 and c0~c8, such that equations (10) and (11) hold. According to the front three equations of (10) we can get a solution of bi,ci, i = 0,1,2. According to the rail three equations of (11) we can get a solution of bi,ci, i = 6,7,8.3. Lastly, compute the other points, bi,ci, i = 3,4,5 according to (13). According to theorem 3, (10) and (11) will hold, i.e. B(u,v) and C(s,v) are connected with G1 continuity.Algorithm 1: Connect two biquartic B-spline surface under mode (0, 0, 1)Step1: Transfer the two B-spline surfaces into the form of composite Bézier surface patches, transfer the common boundary into the form of composite Bézier curves.Step2: Input the control pointsφ0,φ1,φ2 andφ6,φ7,φ8, compute the rest control pointsφ3.φ4.φ5 according to equation (12).Step3: Choose the blending functionsα0,β0,γ0(v) andα1,β1,γ1(v), satisfyingγ01 =γ10 = 0.Step4: Compute the front three rows of control points bi, ci i = 0,1,2 according to the front three functions of (10).Step5: Compute the rail three rows of control points bi, ci i = 6, 7,8 according to the rail three functions of (11).Step6: Compute the rest control points bi,ci i = 3,4,5 according to (13).We adapt the method described in [73] to select the control points around the every corner.In Fig.2, the N-patch corner is P, the common boundaries areΓi(v), the tangent points are Ai, the curvature points are Bi, the twist points are Ci respectively. Suppose the blending functions of every common boundaryΓi(v) areαi,βi,γi(v) =γi0(1-v)+γi1v respectively. According to [73] , the following systems of equations should hold:System (14) means that all the tangent points Ai should be coplanar with the corner P. So we can select Ai andαi,βi,γi0 in the following way. Firstly, we give an estimation of the tangent plane at the corner. Then project all the tangent points Ai onto the plane. Denote the projection of Aj by (?)i, and denote the normal vector of the plane by n, thenαi ,βi should make the following equations hold:where . Note the following equation will holdAfter determiningαi andβi, we can compute all theγi0 according to (14).Transform the system (15) into the following form:The determinant of this matrix is Pi holds,the system has a unique solution when N is an odd number. However, there are some restriction on the curvature points Ci such thatAfter all the control points around every corner have been selected, we can give the local scheme :Algorithm 2: Local scheme with biquartic B-spline surfaces under mode (0, 0, 1) Step1: For every corner, select the tangent points according to (14).Step2: Adjust the curvature points of every common boundary.Step3: Compute all the twist points according to (16).Step4: Compute the rest control points beside every common boundary according to Step 2 Algorithm 1.Step5: Select the blending functions of every common boundary .Step6: Connect every two adjacent surfaces according Algorithm 1.Some examples of using Algorithm 1 and Algorithm 2 to smoothing surfaces can be seen in Fig.3 and Fig.4.There are respectively two B-splines in Fig.3(a) and Fig.3(b). The two surfaces in Fig.3(a) are G0 continuous. The two surfaces in Fig.3(b) are G1 continuous. There are two corners in Fig.4(a). Six biquartic B-spline surface patches meet at the left corner while five patches meet at the right corner. All the surfaces are connected with G0 continuity before using algorithm 2. Fig.4(b) shows the surface after using algorithm 2.We also constructed a more complicated surface by using algorithm 2. Fig.5(a) shows a surface obtained from simplified bunny data using least square method and it is G0 continuous. The surface in Fig.5(b) is the result by modifying some control points of the surface in Fig.5(a) according to algorithm 2.Without process of prove, we give the following theorem about the necessary conditions for two bicubic B-spline surfaces to be connected with G1 continuity under mode (1, 1, 2).Theorem 4 Suppose two adjacent bicubic B-spline surfaces B(u, v) and C(s, v) meet along the common boundaryΦ(v) = B(0, v) = C(0,v). Denote the first and second segment of it byΦ0(v) andΦ1(v) respectively. Then the necessary conditions for the two surfaces to be connected with G1 continuity under mode (1,1,2) are: It is obviously that the necessary conditions are most complicated and hard to be applied in practice. So we give the following sufficient conditions:Theorem 5 Suppose two adjacent bicubic B-spline surfaces B(u, v) and C(s, v) meet along the common boundaryΦ(v) = B(0, v) = C(0, v). Denote the first and second segment of it byΦ0(v) andΦ1(v) respectively. Then a kind of sufficient conditions for the two surfaces to be connected with G1 continuity under mode (1,1,2) are (17) andSimilar to (8), there are two strategies to make equation (22) holds.In the second part of this paper, we studied the G2 continuity conditions between two biquintic B-spline surfaces. Suppose two biquintic B-spline surfaces B(u, v) and C(s, v) meet along their common boundaryΦ(v) = B(0, v) = C(0, v). Moreover, we suppose that the two surfaces are already connected with G1 continuity. That is, there are blending functionsα(v),β(v),γ(v) such that (1) holds. Then the two surfaces is connected with G2 continuity iff there exist another two blending functionsδ(v),η(v) such that: where Similar to the procedure of discussing G1 continuity conditions,we give the following theorem:Theorem 6 Under the conditions stated before, the necessary conditions for two adjacent biquintic B-spline surfaces to be connected with G2 continuity are:There are three strategies to make (26) and (27) hold: Strategy 1.1: LetIn this case, the common boundary and the second order partial derivatives of the two surfaces are all polynomial curves. Strategy A: LetIn this case, the common boundaxy axe polynomial curve . But the second order partial derivatives of the two surfaces are not necessary polynomial curves. Strategy 2.2: LetIn this case, not only the common boundary but also the second order partial derivatives of the two surfaces are not necessarily polynomial curves. We also studied the intertwining phenomena produced by the G2 continuity conditions at a three-patch corner. Relabel the control points around the corner, see Fig.6.Suppose the blending functions of every common boundaryΓ1,Γ2,Γ3 areαi,βi,γi(v),δi,ηi(v) respectively. Then the intertwining problem consists of the following three systems of linear equations.The first system is on the curvature pointswhere T0(*) is a linear function. This system has an unique solution.The second system is on the points Fi: where is a linear function. Some restrictions must be imposed on Ii to make this system solvable.The third system is on the points Gi:where T2(*) is a linear function. Some restrictions must be imposed on Hi to make this system solvable.In the third part of this paper, we deduced the conditions for B-spline surfaces with multiple interior knots to be connected with G1 and G2 continuity conditions.Theorem 7 Suppose B(u,v) and C(s,v) are two adjacent bicubic B-spline surfaces with double interior knots. They meet along their common boundaryΦ(v) = B(0, v) = C(0, v). Denote the first and second segment of it byΦ0(v) andΦ1(v) respectively. Then the necessary conditions for the two surfaces to be connected with G1 continuity under mode (0,0,1) are (6), (7) andThere are also two strategies for us to choose to make (31) holds:Strategy 1. Let . In this case, if the common boundary consists of n segments, there can be n + 3 control points adjustable independently.Strategy 2. Letγ10 =γ01 = 0. In this case, there are at most 6 control points adjustable independently for the common boundary.For biquartic B-spline surfaces, we can draw the similar conclusion:Theorem 8 Suppose B(u, v) and C(s,v) are two adjacent biquartic B-spline surfaces with double interior knots. They meet along their common boundaryΦ(v) = B(0, v) = C(0, v). Denote the first and second segment of it byΦ0(v) andΦ1(v) respectively. Then the necessary conditions for the two surfaces to be connected with G1 continuity under mode (0,0,1) are (6), (7) andThe discussion on equation (32) sure omitted.We give the necessary conditions for two adjacent biquintic B-spline surfaces with double or triple interior knots to be connected with G2 continuity:Theorem 9 Suppose B(u, v) and C(s,v) are two adjacent biquintic B-spline surfaces with double interior knots. Denote the common boundary of them byΦ(v) = B(0, v) = C(0, v). Suppose the first and second segment of it areΦ0(v) andΦ1 (v) respectively. Then the necessary conditions for the two surfaces to be connected with G2 continuity are (24), (25) andTheorem 10 Suppose B(u, v) and C(s, v) are two biquintic B-spline surfaces with triple interior knots. Denote their common boundary byΦ(v) = B(0, v) = C(0,v). Suppose the first and second segment of it areΦ0(v) andΦ1(v) respectively. Then the necessary conditions for the two surfaces to be connected with G2 continuity are (24), (25) andIn the fourth part, we extend the results on G1 continuity conditions between two adjacent B-spline surfaces to the case of adjacent NURBS surfaces. |