Professional Documents
Culture Documents
ABSTRACT
r
The Bézier surface with C continuity on each common boundary between two composite triangular Bézier
patches is generated. The directional derivatives on the Bernstein polynomials are discussed. This is to ensure
r
that the C continuity is maintained along the boundary between the piecewise polynomials. The composite
patches are then generated by elevating the degree of the Bézier triangles.
INTRODUCTION
The idea of Bernstein polynomials on triangular patches was first introduced by de Casteljau
in 1959 (Boehm et al., 1984). De Casteljau’s algorithm is commonly used for generating the
graph that approximates the bivariate Bernstein polynomials. It was proved by Mühlbach in
1995 that the algorithm was indeed a particular case of the general extrapolation algorithm
introduced by Brezinski in 1980 (Brezinski, 1980; Carstensen et al., 1995).
De Casteljau’s algorithm will partition the Bézier triangle into three subtriangles. By
repeating the process, the triangular Bézier patch will converge to the triangular Bézier
r
surface. By considering the C continuity at the common boundary between two triangular
Bézier patches, theorems and lemmas related to the directional derivatives on Bernstein
r
polynomials are presented (Goldman, 1983). Based on the concept of C continuity, the
1 2
Bézier surface with C or C continuity at the common boundary between two triangular
Bézier patches are demonstrated.
E-mail: aslcheah@academic.sunway.edu.my.
This paper is an extension of an unpublished report (Cheah, 2000).
22 Cheah Seong Leang
Since p n (u) = b 0n (u ) when r = n, then (4) and (6) give an algorithm to compute pn(u) .
This algorithm is known as the de Casteljau’s algorithm for trivariate polynomials of degree
n. Figure 1 shows the geometry behind de Casteljau’s algorithm. For any barycentric
coordinates (u,v,w), the points pn(u) are determined. The points pn(u) will subdivide the
control net of the Bézier triangle into three subtriangles.
Sunway Academic Journal 3, 21–33 (2006) 23
(7) b ir (u ) = ∑ b i+. B.
r (u ) , i = n − r .
. =r
DIRECTIONAL DERIVATIVES
Let α = (α1, α2, α3) ∈ z+ x z+ x z+ and x = (x1, x2, x3) be the barycentric coordinates. We
define (Farin, 1981)
.
. ∂ f
(8) D f = .1 . 2 .3 , . = α1 + α 2 + α 3
∂x1 ∂x 2 ∂x 3
Consider u as the vector in the direction of two points with different barycentric
coordinates. Assume that u = (u1 , u2 , u3). Then u1+u2+u3= 0. Hence, the directional
derivatives of a function f in the direction of u can be written as
∂f ∂f ∂f
(9) D u f = u1 + u2 + u3
∂x1 ∂x 2 ∂x 3
As B (1,0,0) (u) = u 1 , B (0,1,0) (u) = u 2 and B (0,0,1) (u) = u 3 , we can have
1 1 1
Theorem 3 The directional derivative of order r for a function f in the direction of the
vector u = (u1 , u2 ,u3) , u1+ u2+ u3 = 0, is given by
(11) ∑
Dur f = BÂr (u)DÂf , r = 0,1,..., n , Â = (α1 , α 2 , α 3 ) ∈ z+ x z+ x z+
Â=r
D f=f and D u f = f
0 0
where
24 Cheah Seong Leang
Proof The derivative equation (11) is true for r = 0. Assume that it is true for r. Then,
Dur+1f = u ∂ (Dr f ) + u ∂ (Dr f ) + u ∂ (Dr f )
1 ∂x u 2 ∂x u 3 ∂x u
1 2 3
r (u)DÂ+e1f + u
= u1 ∑ B. r Â+e2f + u ∑ Br (u)DÂ+e3f
∑ B.(u)D 3 Â =r .
Â=r 2 Â=r
= r r Â
∑ u1B 1 (u) + u2B 2 (u) + u3B 3 (u)D f
r
Â=r+1
. -e . -e . -e
= ∑ B. r+1(u)DÂf
Â=r+1
. n!
∂ x 1i1 x i22 x i22
D . B in (x) = i 1! i 2! i 3!
.1 .2 .3
But ∂x 1 ∂x 2 ∂x 3
n!
= x 1i1 − .1 x i22 −. 2 x i33 −. 3
(i1 − . 1 )! (i 2 − . 2 )! (i3 − . 3 )!
So,
n!
(13) D . B in (x) = B in−−.r (x)
(n − r)!
By substituting (13), Lemma (1) is proven.
Theorem 4 Assume that p n (x) = ∑b B
i =n
i
n
i (x) . Define b 0i (x) = b i . For r = 1,2,...,n,
r −1 r −1
(14) b ( x) = x b
r
i 1 i +e1 ( x) + x 2 b i +e 2
(x) + x 3b ir+−1e3 (x)
Sunway Academic Journal 3, 21–33 (2006) 25
Then for r = 0,1,...,n, the directional derivative of order r in the direction of u = (u1,u2,u3),
u1+u2+u3 = 0 is given by
n!
(15) D ur p n (x) = ∑
(n − r)! . = r
b .n − r (x)B .r (u)
Proof Since
p n (x) = ∑ b i Bin (x)
i =n
From Lemma 1,
n!
D ur p n (x) = ∑ bi
(n − r)! i = n
∑
.
r
B . (u)B
=r
n −r
i −. (x)
n!
= ∑ ∑
(n − r)! k = n − r . = r
b k +. B .r (u)B kn − r (x) , k = i −.
n!
= ∑ B.r (u) k∑
(n − r)! . = r
b k +. B kn − r (x)
=n−r
n!
= ∑ b .n −r (x)B .r (u) (from Theorem 2)
(n − r)! . = r
Corollary 1
n!
(16) Dur p n (x) = ∑ bkr (u)Bkn−r (x)
(n − r)! k =n −r
So, D ur b ir (x) = ∑
.
b
=r
i +. D ur B .r (x)
k =r
= r ! B.r (u)
since
1 if . = k
B .0 −k (x) =
0 if . ≠ k
Then,
D ur b ir (x) = r! ∑ b i +. B .r (u)
. =r
(ii) if u 2 = T3 T1 , then
Sunway Academic Journal 3, 21–33 (2006) 27
D ur 2 b (ir 1 ,β , i 3 ) (x ) = r!∆r3,1b (i 1 ,β , i 3 )
(iii) if u 3 = T1T2 , then
D ur 3 b (ir 1 ,i2 , ( x ) = r! ∆r1,2 b (i1 ,i2 ,
Proof It is sufficient to prove one of the cases due to the symmetric property.
Let us consider case (i).
The equation in case (i) is true for r = 0 since
D u0 1 b 0( α ,i 2 ,i3 ) ( x) = b 0( α ,i 2 ,i 3 ) ( x) = b ( α ,i 2 ,i 3 )
= ∆02,3 b ( α ,i 2 ,i3 )
If the equation is true for r, then from Lemma 2,
D ur +11b (rα+1,i 2 ,i3 ) (x) = (r + 1)!b (rα+1,i 2 ,i3 ) (u 1 )
Here u1 = (0 , –1 , 1) . That means
(r + 1)!b (r+α1,i2 ,i3 ) (u1 )
(
= (r + 1)! 0 − b (r α ,i2 +1,i3 ) (u1 ) + b (rα ,i2 ,i3 +1) (u1 ) )
= (r + 1)!(∆ r
b
2,3 ( α ,i 2 ,i3 +1) − ∆r2,3 b ( α ,i2 +1,i3 ) )
+1
= (r + 1)!∆r2,3 b ( α ,i2 ,i3 )
Thus Lemma 3 is true by mathematical induction.
Composite Cubic Bézier Patches With Cr Continuity
This means that any point P with barycentric coordinates xˆ = (x̂1 , x̂ 2 , x̂ 3 ) on [T̂1 , T2 , T3 ]
will have its equivalent x = (x̂ 1 t 1 , x̂ 1 t 2 + x̂ 2 , x̂ 1 t 3 + x̂ 3 ) on [ T1 , T2 , T3 ], where
T̂1 = (t1 , t 2 , t 3 ) towards [T1 , T2 , T3 ] . Specifically, if P is situated at the common boundary
T2T3, then its barycentric coordinates are x = (0, x 2 , x 3 ) = xˆ .
Let bi and b̂ i be the Bézier points towards [T1 , T2 , T3 ] and [T̂1 , T2 , T3 ] respectively.
Then, for polynomials
∑
p n (x) = b i Bin (x) towards [ T1 , T2 , T3 ]
i =n
and
p̂ n (xˆ ) = ∑ b̂ i B in (xˆ ) towards [T̂1 , T2 , T3 ]
i =n
we are interested in finding the relationship between bi and b̂ i so that p n (x) = p̂ n (xˆ ) for all
x and x̂ that represents the same barycentric coordinates. For example,
r
Proof The polynomials p n (x) and p̂ n (xˆ ) have C continuity at T2 T3 if and only if for
any two linearly independent vectors u = uˆ , = (1,2),
(22)
D !u p n (0, x 2 , x 3 ) = D !uˆ p̂ n (0, x 2 , x 3 ) ∀ (0, x 2 , x 3 ) ∈ T2 T3 , ! = 0,1,..., r , 0 ≤ r ≤ n
⇔ ∑b
i = n −ρ
ρ
i (u )B in −ρ (x) = ∑ b̂
i = n −ρ
ρ
i (uˆ )B in −ρ (xˆ ) , xˆ = x = (0, x 2 , x 3 )
u 2 = T2 T̂1 = (t 1 , t 2 - 1, t 3 ) ,
(b) When T̂1 is outside the triangle [ T1 , T2 , T3 ], then for the given Bézier points b i , the
r
points b̂ i have to satisfy the C continuity at the common boundary T2 T3 between the
two surfaces p n (x) and p̂ n (xˆ ) . See Figure 3.
1
Therefore for C continuity, the quadrilaterals formed by the two adjacent triangles at the
common boundary between the two triangular Bézier patches are smooth planes.
Figure 4(left) shows the combined composite patches with control net at the center
1 2
accompanied by two composite patches with C and C continuities on the right and left of
the control net respectively. Figure 4(right) is the improvement of Figure 4(left) by raising 8
degrees. A closed surface can be obtained by setting the barycentric coordinates based on
some end conditions as seen in Figures 5 and 6.
32 Cheah Seong Leang
Figure 4. (Left) The combined composite cubic patches with control net at the center
1 2
accompanied by two composite patches with C and C continuities on the right and left of
the control net respectively. (Right) The effect of raising by 8 degrees (Cohen et al., 1985).
1
Figure 5. (Left) The control composite cubic Bézier patches with C continuity at each
common boundary. (Right) The effect of 5 degrees elevation.
2
Figure 6. (Left) The control composite cubic Bézier patches with C continuity at each
common boundary. (Right) The effect of 5 degrees elevation.
CONCLUSION
The concept of triangular spline has improved the flexibility in designing objects. The wide
application of triangular spline in solid modeling and texture mapping has always been a
great challenge for computer graphics and virtual environments (Sheffer et al., 2002;
Chandrajit et al., 2003). Hence, the study in the degree of continuity is important for
Sunway Academic Journal 3, 21–33 (2006) 33
r
designing objects that are formed by piecewise patches. As we can see, the C continuity at
the common boundaries between triangular patches has made the composition of surfaces
possible (Stephen, 2002). Future development will see the possibility of controlling the
curve and surfaces based on the interval parameterization concept whereby developable
objects can be generated without fail (Chen and Deng, 2003).
REFERENCES
Boehm, W., Farin, G., & Kahmann, J. (1984). A survey of curve and surface methods in CAGD.
Computer Aided Geometric Design, 1, 1–60.
Brezinski, C. (1980). A general extrapolation algorithm. Numerical Mathematics, 35, 175–187.
Carstensen, C., Mühlbach, G., & Schmidt, G. (1995). De Casteljau’s algorithm is an extrapolation
method. Computer Aided Geometric Design, 12, 371–380.
Chandrajit, L. B., & Xu, G. L. (2003). Anisotropic diffusion of surfaces and functions on surfaces.
ACM Transactions on Graphics, 22(1), 4–32.
Cheah, S. L. (2000). Composite cubic Bézier triangles with Cr continuity. Technical Report Seminar
Matematik, Institut Sains Matematik, Universiti Malaya, August 30, 2000, 30 pages.
Chen, D., & Wang, G. J. (2002). Developable Bézier function surface. Progress in Natural Science,
12(5), 383–387.
Chen, F., & Deng, L. (2003). Interval parameterization of planar algebraic curves. Computer
Mathematics, Proceedings of the Sixth Asian Symposium, 64–76.
Cohen, E., Lyche, T., & Schumaker, L. L. (1985). Algorithms for degree-raising of splines. ACM
Transactions on Graphics, 4(3), 171–181.
Farin, G. (1981). Bézier polynomials over triangles and the construction of piecewise Cr polynomials,
TR/91. Department of Mathematics, Brunel University, Uxbridge, Middlesex, UK.
Farin, G. (1982). Designing C1 surfaces consisting of triangular cubic patches. Computer-Aided
Design, 15(5), 253–256.
Goldman, R. N. (1983). Subdivision algorithms for Bézier triangles. Computer-Aided Design, 15(3),
159–166.
Sheffer, A., & De Sturler, E. (2002). Smoothing an overlay grid to minimize linear distortion in
texture mapping. ACM Transactions on Graphics, 21(4), 874–890.
Stephen, M. (2002). Adjusting control points to achieve continuity. Computer-Aided Geometric
Design, 19(7), 589–602.