Professional Documents
Culture Documents
Bezier
Curve
• Curve
Curves
and
Surfaces
Given:
3
control
points
p 0 , p1, p 2
for
Computer
Graphics
Result:
curve
segment
b 2
Part
2 –
de
Casteljau
Algorithm
p1
Yasushi
YAMAGUCHI
The
University
of
Tokyo,
Japan
p0 p2
0 1 0 1
t=0.5 t=0.25
de
Casteljau
Algorithm
de
Casteljau
Algorithm
• QuadraEc
Bezier
Curve
• QuadraEc
Bezier
Curve
1
b (t ) = (1− t ) p 0 + tp1 b (t) p1
1
1 b10 (t ) = (1− t ) p 0 + tp1 p1
0
b01(t)
1 1
b (t ) = (1− t ) p1 + tp 2
1 b (t ) = (1− t ) p1 + tp 2
1
2 1 1
b (t ) = (1− t ) b (t ) + tb (t )
0 0 1 b 20 (t ) = (1− t ) b10 (t ) + tb11 (t )
p0 p2 p0 p2
b01(t) = b02(t) b11(t) = b02(t)
0 1 0 1
t=0 t=1
1 1 b12(t)
b (t ) = (1− t ) p 0 + tp1
0 b (t ) = (1− t ) p 0 + tp1
0
b (t)
2
0
p0 p2 p0 p2
2 1 1 2 1 1
b (t ) = (1− t ) b (t ) + tb (t )
0 0 1
0 1 b (t ) = (1− t ) b (t ) + tb (t )
0 0 1
0 1
b12 (t ) = (1− t ) b11 (t ) + tb12 (t ) t=0.5 b12 (t ) = (1− t ) b11 (t ) + tb12 (t ) t=0.75
b (t)
0
3
b 20 (t ) = (1− t ) b10 (t ) + tb11 (t ) 0 1 0
where bi (t ) = pi
b (t) 1
0
0
b21(t)
0 1
b30 (t ) = (1− t ) b 20 (t ) + tb12 (t ) Index
i = 0,!, n − r
t=0.25
b12(u)
p3
b02(u)
b01(u) b03(u)
b21(u) p2
p0 p2 p3
0 1 u = (b − a) t + a p0 p0
t b−u u−a
⇔ 1− t = , t=
a b
b−a b−a Demo
u
ProperEes
of
Bezier
Curve
ProperEes
of
Bezier
Curve
• End
Point
InterpolaEon
• Affine
Invariance
b[p0 , p1 ,!,p n ;0] = p0 , b[p0 , p1 ,!,p n ;1] = p n
Φb[p0 , p1 ,!,p n ; t ] = b[Φp0 , Φp1 ,!, Φp n ; t ]
• Approximate
Shape
(Control
Polygon)
• Affine
Parameter
TransformaEon
p1 p2 p1 b − u r −1 u − a r −1 # u = (b − a) t + a &
bir (u ) = bi (u ) + bi +1 (u ) % (
b−a b−a % u−a (
p3 • Convex
Hull
Property
%⇔ t=
$
(
b−a '
• End
Point
InterpolaEon
p2 b[p0 , p1 ,!,p n ;0] = p0 , b[p0 , p1 ,!,p n ;1] = p n
p3
p0 p0 • Approximate
Shape
(Control
Polygon)
Demo