Geometric Interpretation of Smoothness Conditions of Triangular Polynomial Patches by Ming-Jun Lai
1)
Abstract.
In this short note we give geometric interpretation of the wellknown smoothness conditions of two adjacent polynomial patches. Our result generalizes Farin's observations in [Farin'83] and [Farin'86].
Keywords. Bernstein-Bezier form, Polynomial Patches, Smoothness Conditions. 1. Introduction. It is well-known that the smoothness conditions of polyno-
mial patches over two adjacent triangular domains in terms of Bernstein-Bezier form are an important and useful tool in the study of multivariate splines and computer aided geometric design. The conditions were originated in Farin's thesis. (cf. [Farin'79].) He also made an striking geometric interpretation of C 1 and C 2 smoothness conditions. (See [Farin'83, p50] and [Farin'86, p98].) It is interesting to see the geometric interpretation of C r smoothness conditions for general r 0. Let us rst recall the smoothness conditions on the Bezier nets of two adjacent polynomial patches of degree d to insure that they join together with C r smoothness across a common edge. Theorem 1. Let T and T~ be triangles with vertices V = fv1 ; v2 ; v3g and V~ = fv4; v2 ; v3 g. Let d (v ) pd (v) := cijk Bijk
X i j k d X c~ijkB~ijkd (v); p~d (v) := + + =
and
i+j +k=d
Department of Mathematics, University of Georgia, Athens, GA 30602.
[email protected]. Supported by the National Science Foundation under grant DMS9303121. 1)
1
2 d g and fB~ d g are the Bezier basis functions associated with T and T~, where fBijk ijk respectively. Let hv2 ; v3i be the edge shared by T and T~ and u = v4 ? v3. Then
Dum pd(v) = Dum p~d(v);
all v 2 hv2 ; v3 i
for m = 0; : : : ; r, if and only if
c~mjk =
X
i j k m
~+~+ ~ =
c~i;j+~j;k+k~ B~im~jk~ (v4 );
all j + k = d ? m;
for all m = 0; : : : ; r. This theorem was rst proved by Farin in [Farin'79]. Farin furthermore recognized the geometric meaning of C 1 and C 2 smoothness conditions in [Farin'83] and [Farin'86]. Let us use the following example to illustrate his geometric interpretation. Example 1. Let ijk = (iv1 + jv2 + kv3)=5; i + j + k = 5 and ~ = (iv4 + jv2 + kv3)=5; i + j + k = 5 be the domain points on T and T~. Let p5 and p~5 be two polynomials on T and T~ whose coecients, associated with their domain points, are as shown in Fig. 1. v2 c~050 c050
PPP c140 PPP c230 c~140 PPP c320 c~041 c041 c~230 PPP c410 v1 c131 PPP c500 c~320 c~131 c221 c ~ 221 c~410 c~032 c032 c311 v4 c401 c122 c~311 c~122 c~500 c212 c~212 ZZ c~401 c~023 c023 c302 c113 ZZ c~302 c~113 p5 c203 ZZ c~203 c~014 c014 p~5 c104 ZZ c~104 ZZc~005 c005 v3
Fig. 1. Schematic drawing of the Bezier coecients of p 2
5
and ~p5 .
3 Then p5 (v) = p~5(v) for all v 2 hv2 ; v3i if and only if c0jk = c~0jk for j + k = 5. Since 0;j;k = ~0;j;k , these two surfaces p5 and p~5 can be joined continuously across the commone edge of T and T~ if and only if the point (0;j;k ; c0;j;k ) meets the point (~0;j;k ; c~0;j;k ) for j + k = 5. This is the geometric interpretation of the C 0 smoothness condition. Write v4 = 1 v1 + 2 v2 + 3 v3 with 1 + 2 + 3 = 1. These two surfaces p5 and p~5 join together with C 1 smoothness across the common edge hv2; v3 i of T and T~, i.e., Dup5(v) = Dup~5(v) for any v 2 hv2; v3 i if and only if p5 and p~5 are joined continuously across the commone edge and
c~1jk = 1c1jk + 2c0;j+1;k + 3 c0;j;k+1; j + k = 4: Let us denote
cijk = (ijk ; cijk ) and ~cijk = (~ijk ; c~ijk ); 8i + j + k = 5: Since ~1jk = 11jk + 2 0;j+1;k + 0;j;k+10;j;k+1, the C 1 smoothness condition implies that c~1jk = 1c1jk + 2 c0;j+1;k + 3c0;j;k+1 : Therefore, the four points c~1jk ; c1jk , c0;j+1;k , and c0;j;k+1 are co-planar. Fig. 2 shows this interesting feature. (Note that we have deliberately lifted the control nets from the surfaces in order to see the surfaces and nets clearly.)
Fig. 2. The control net and surface of p 3
5
and p~5 in C 1 fashion.
4 Similarly, the C 2 smoothness across the common edge implies that c~2jk =(1)2 c2jk + 21 2c1;j+1;k + (2 )2 c0;j+2;k + 21 3c1;j;k+1 + 22 3c0;j+1;k+1 + (3 )2c0;j;k+2; j + k = 3: Note that by the C 1 smoothness condition, we have c~2jk =1 (1 c2jk + 2c1;j+1;k + 3c1;j;k+1) + 2(1 c1;j+1;k + 2 c0;j+2;k + 3c0;j+1;k+1) + 3 (1c1;j;k+1 + 2c0;j+1;k+1 + 3c0;j;k+2) =1 (1 c2jk + 2c1;j+1;k + 3c1;j;k+1) + 2c~1;j+1;k + 3 c~1;j;k+1: Thus, for j + k = 3, we have the following relations 1 c~ ? 2 c~ 3 c~ 2jk 1;j +1;k ? 1 1 1 1;j;k+1 = 1c2jk + 2c1;j+1;k + 3 c1;j;k+1: Since v1 = 1v4 + 2v2 + 3v3 with 1 + 2 + 3 = 1, we have = 1=1, 2 = ?2=1, and 3 = ?3=1 . Hence, these relations above can be rewritten as
1c~2jk + 2c~1;j+1;k + 3c~1;j;k+1 = 1 c2jk + 2c1;j+1;k + 3c1;j;k+1: It can be easily veri ed by the de nition of ijk and ~ijk that 1~2jk + 2~1;j+1;k + 3~1;j;k+1 = 1 2jk + 2 1;j+1;k + 3 1;j;k+1:
Fig. 3. The control net and surface of p 4
5
and p~5 in C 2 fashion.
5 Therefore, the planar diamond determined by the four points c2jk ; c1;j+1;k , c1;j;k+1, 1c2jk +2 c1;j+1;k +3c1;j;k+1 meets the planar diamond determined by four points c~2jk ; c~1;j+1;k ; ~c1;j;k+1 and 1~c2jk + 2~c1;j+1;k + 3~c1;j;k+1 at one of their tips. See Fig. 3 for this interesting geometric meaning. (Note that we have deliberately lifted the control nets from the surfaces in order to see the surfaces and nets clearly.) We are interested to know the geometric interpretation of C r smoothness conditions for general r 0. This is the purpose of the present note. To explain our results, let us recall some old notation and introduce some new notation. For any degree d, let ijk = (iv1 + jv2 + kv3)=d and cijk = (ijk ; cijk ). Also, let ~ijk = (iv4 + jv2 + kv3)=d and c~ijk = (~ijk ; c~ijk ). For any triple (1 ; 2 ; 3), let L(cijk ) be a linear operator de ned by
L(cijk ) = 1cijk + 2ci?1;j+1;k + 3ci?1;j;k+1: Similarly, we de ne L (~cijk ) = 1c~ijk + 2c~i?1;j+1;k + 3c~i?1;j;k+1: Then we have
Theorem 2. Under the same notation of Theorem 1, we have Dum p(v) = Dum p~(v); all v 2 hv ; v i 2
3
for m = 0; : : : ; r, if and only if
| {zm }
~cmjk = L L(cmjk )
all j + k = d ? m;
for all m = 0; : : : ; r. This theorem is a vector form of the smoothness conditions in Theorem 1. Our next theorem is the main results in the note. Theorem 3. Under the same notation of Theorem 1, we have
Dum p(v) = Dum p~(v);
all v 2 hv2 ; v3i
for m = 0; : : : ; r, if and only if
Dum p(v) = Dum p~(v);
all v 2 hv2 ; v3i
for m = 0; : : : ; r ? 1 and
|Lbr={z cL}(~crjk ) = L| dr={z eL}(crjk ) 2
2
5
all j + k = d ? r:
6 Here, bxc is the nearest integer close to x from the left and dxe is the nearest integer close to x from the right. Thus, for r = 0, we have
c~ jk = c jk ; 8j + k = d: 0
For r = 1, we have For r = 2, we have
0
~c1jk = L(c1jk ); 8j + k = d ? 1:
L (~c2jk ) = L(c2jk ); 8j + k = d ? 2: These geometric interpretations were explained in Example 1 when d = 5. Example 2. Let us look at the C 3 smoothness conditions for p5 and p~5. These two surfaces p5 and p~5 join together with C 3 smoothness across the common edge if and only if two surfaces join together with C 2 smoothness and
L (~c3jk ) = L(L(c3jk )); 8j + k = d ? 3: The condition above can be rewritten as
L (~c3jk ) = 1 L(c3jk ) + 2L(c2;j+1;k ) + 3L(c2;j;k+1 ):
Fig. 4. The control net and surface of p 6
5
and p~5 in C 3 fashion.
7 This just says that the four points L(c3jk ), L(c2;j+1;k ), L(c2;j;k+1), and L (~c3jk ) are co-planar. That is, L (~c3jk ) is on the planar diamond whose four tips are L(c3jk ); L(c2;j+1;k ); L (c2;j;k+1), and L(L(c3jk )). See Figure 4 for d = 5. Again we have deliberately lifted the control nets from the surfaces. Note also that L(c2;j+1;k ) = L (~c2;j+1;k and L(c2;j;k+1 ) = L (~c2;j;k+1 ) by the C 2 smoothness condition. Furthermore, the C 4 smoothness condition is
L (L (~c4jk )) = L(L(c4jk )); 8j + k = d ? 4: Again, L (L (~c4jk )) is one of the four tips of the planar diamond whose other three tips are L (~c4jk )); L (~c3;j+1;k ); and L (~c3;j;k+1 ). Also, L(L(c4jk )) is one of the four tips of the planar diamond whose other three tips are L(c4jk ), L(c3;j+1;k ), and L(c3;j;k+1). The C 4 smoothness condition says that these two planar diamonds meet at the same point. See Fig. 5 for reference where d = 5. Again we have lifted the control nets from the surfaces in order to see the nets and surfaces clearly.
Fig. 5. The control net and surface of p
5
and p~5 in C 4 fashion.
Therefore, the geometric interpretation of the smoothness conditions in Theorem 1 is that for even integer r 0, two points
| r={z }
| r={z }
L L (~crjk ) and L L(crjk ) 2
2
7
8 must meet together for j + k = d ? r and for odd integer r 1, four points
| br={z c }
| br={z c }
| br={z c }
| br={z c }
L L (~crjk ); L L(crjk ); L L(cr?1;j+1;k ); L L(cr?1;j;k+1 ) 2
2
2
2
must be co-planar.
2. Proofs and Remarks. Let us rst give a proof to Theorems 2 and 3. Then
we shall give some remarks on these geometric interpretations. Proof of Theorem 2. When we restrict the third component of the vector form of the smoothness conditions: c~mjk = L L(cmjk ); we immediately recognize that
| {zm }
| m{z? } = X ci;j j;k kBimjk(v ) =
c~mjk = L L(1 cmjk + 2cm?1;j+1;k + 3cm?1;j;k+1) 1
i j k m
~ +~
+~
~~~
4
~+~+ ~=
which is the usual smoothness conditions (see Theorem 1). Now we look at the rst two component of the vector form of the smoothness conditions. The right-hand side gives
| {zm } X i;j j;k kBimjk(v ) = i j k m X v ~i Bimjk(v ) + X = L L(mjk ) ~ +~
+~
~~~
4
~+~+ ~=
i j k m
~+~+ ~=
1
d
~~ ~
4
i j k m
~+~+ ~ =
~ v2 j +d j B~im~j k~ (v4 ) +
j v + v m2 + k v + v m3 1 =v1 m + d d 2 2 d d 3 3 d jv + kv v =m 4 + d d 2 d 3 =~mjk
X i j k m
~+~+ ~ =
~ v3 k +d k B~im~j k~ (v4 )
Therefore, we have established our smoothness conditions. Proof of Theorem 3. Note that v4 = 1 v1 + 2 v2 + 3v3 and v1 = 1v4 + 2v2 + 3v3. We have 1 = 1=1, 2 = ?2=1 , and 3 = ?3=1. Thus, by the vector form of
8
9 the smoothness conditions, we have c~rjk = L L(crjk )
| {zr } = |L {z L}(crjk ) + |L {z L}(cr? ;j r? r? 2
1
| {z }
;k ) + 3 L L (cr?1;j;k+1 ) r?1
1 +1
1
1
After moving the last two terms to the left-hand side and dividing 1 , by using Theorem 2, we have L (~crjk ) = L L(crjk ):
| r{z? } 1
We may repeat this procedure above br=2c times to have L L (~crjk ) = L L(crjk ):
| br={z c }
| dr={z e }
2
2
This completes the proof of Theorem 3.
The proof of Theorem 3 also gives the following Corollary. Suppose the p and p~ satisfy the C r smoothness conditions. For any 0 m br=2c, we have L L (~crjk ) = L L(crjk )
| {zm }
| r?{zm }
for j + k = d ? r. In particular, L (~crjk ) = L L(crjk ):
| r{z? } 1
for j + k = d ? r. We nally give some remarks on Theorem 3. Remark 1. When v1 ; v3; v4 on the same line, pd and p~d restricted to the intervals [v4; v3 ] and [v3; v1 ], respectively, are Bezier curves. Our theorems are valid with 2 = 0 = 2 and j = 0. Thus, the geometric interpretation of the smoothness conditions for two Bezier curves is that for even integer r 0, two points L L (~cr;0;d?r ) and L L(cr;0;d?r ) must meet together and for odd integer
| r={z }
| r={z }
2
2
r 1, three points L L (~cr;0;d?r ); L L(cr;0;d?r ); L L(cr?1;0;d?r+1 )
| br={z c } 2
| br={z c }
| br={z c }
2
2
must be co-linear. The following gures show the geometric interpretation for C 1, C 2, C 3 and C 4 smoothness conditions. Again, we deliberately lift the coecients indicated as in the gures from the curves. 9
10
Fig. 6. The control net and curves of p
5
and p~5 in C 1 fashion.
Fig. 7. The control net and curves of p
5
and p~5 in C 2 fashion.
Remark 2. The geometric interpretations given in Theorem 3 above enable us
to visually check the C r smoothness of polynomial surfaces over two triangular domains across their common edge. Remark 3. The geometric meaning of C 3 smoothness condition was pointed out in [Chui and Lai, 1990]. However, no proof was given there. Remark 4. The corollary of Theorem 3 gives us a recursive method for computing the Bezier coecients c~mjk . For example, once we have c~1jk , we can compute c~2jk by using c~1;j+1;k, c~1;j;k+1, and L(c2jk ). For another example, to compute c~3jk , we use two already available coecients c~2;j+1;k and c~2;j;k+1 and one unknown coecient L(L (c3jk )) which can be computed by using two already available values L(c2;j+1;k ) and L(c2;j;k+1 ) and one unknown value L(c3jk ) which can be computed directly from the known coecients of the polynomial. 10
11
Fig. 8. The control net and curves of p
Fig. 9. The control net and curves of p References
5
and p~5 in C 3 fashion.
5
and p~5 in C 4 fashion.
1. Chui, C. K. and M. J. Lai (1990), Multivariate vertex splines and nite elements, J. Approx. Theory 60, 245{343. 2. Farin, G. (1979), Subsplines uber Dreiecken, Dissertation, Braunschweig, German. 3. Farin, G. (1983), Smoothness interpolation to scattered 3D data, in R.E. Barnhill and W. Boehm, eds., Surfaces in Computer Aided Geometric Design, Northe-Holland, Amsterdam, 35{63. 4. Farin, G. (1986), Triangular Bernstein-Bezier patches, Comput. Aided Geom. Design 3, 83{127.
11