Modelowanie i Wizualizowanie 3W grafiki. Krzywe i płaty Béziera
Aleksander Denisiuk
Uniwersytet Warmi ´nsko-Mazurski
Olsztyn, ul. Słoneczna 54
denisjuk@matman.uwm.edu.pl
Krzywe i płaty Béziera
Krzywe Béziera Interpolacja Krzywymi Béziera
Płaty Béziera
Najnowsza wersja tego dokumentu dost ˛epna jest pod adresem
http://wmii.uwm.edu.pl/~denisjuk/uwm
Krzywe Béziera
Krzywe Béziera
• Splajny
• Krzywe Béziera
• Algorytm de Casteljau
• Krzywe Béziera sklejane
• Krzywe Béziera dowolnego stopnia Interpolacja Krzywymi Béziera
Płaty Béziera
Splajny
Krzywe Béziera
• Splajny
• Krzywe Béziera
• Algorytm de Casteljau
• Krzywe Béziera sklejane
• Krzywe Béziera dowolnego stopnia Interpolacja Krzywymi Béziera
Płaty Béziera
• Krzywe Béziera
◦ Pierre Bézier — Renault: 1968, 1974
◦ Paul de Casteljau — Citroën: 1959, 1963
• B-splajny (Isaac Jacob Schoenberg 1946)
Krzywe Béziera trzeciego stopnia
Krzywe Béziera
• Splajny
• Krzywe Béziera
• Algorytm de Casteljau
• Krzywe Béziera sklejane
• Krzywe Béziera dowolnego stopnia Interpolacja Krzywymi Béziera
Płaty Béziera
q(u)
p
0
p
1
p
2
p
3
Figure VII.1: A degree three Bezier urve q(u). The urve is parametri ally
dened with 0 u 1, and it interpolates the rst and last ontrol points with
q(0) = p
0
and q(1) = p
3
. The urve is \pulled towards" the middle ontrol
points p
1
and p
2
. At p
0
, the urve is tangent to the line segment joining p
0
Krzywe Béziera trzeciego stopnia
Krzywe Béziera
• Splajny
• Krzywe Béziera
• Algorytm de Casteljau
• Krzywe Béziera sklejane
• Krzywe Béziera dowolnego stopnia Interpolacja Krzywymi Béziera
Płaty Béziera
p
0 p
1
p
2 p
3
p
0
p
1
p
2
p
3
Figure VII.2: Two degree three Bezier urves, ea h dened by four ontrol
points. The urves interpolate only their rst and last ontrol points, p
0
and
p
3
. Note that, just as in gure VII.1, the urves start o, and end up, tangent
to line segments joining ontrol points.
Krzywe Béziera trzeciego stopnia
Krzywe Béziera
• Splajny
• Krzywe Béziera
• Algorytm de Casteljau
• Krzywe Béziera sklejane
• Krzywe Béziera dowolnego stopnia Interpolacja Krzywymi Béziera
Płaty Béziera
• q(u) = B 0 (u)p 0 + B 1 (u)p 1 + B 2 (u)p 2 + B 3 (u)p 3 , gdzie
◦ B i (u) = 3 i u i (1 − u) 3−i — wielomiany Bernsteina,
◦ m n
= C n m = m !(n−m)! n! — symbol Newtona
◦ B 0 (u) = (1 − u) 3 , B 1 (u) = 3u(1 − u) 2
◦ B 2 (u) = 3u 2 (1 − u), B 3 (u) = u 3
◦
P 3 i =0
B i (u) = P 3
i =0 3
i
u i (a − u) 3−i = u + (1 − u) 3 = 1
Wielomiany Bernsteina (stopnia 3)
Krzywe Béziera
• Splajny
• Krzywe Béziera
• Algorytm de Casteljau
• Krzywe Béziera sklejane
• Krzywe Béziera dowolnego stopnia Interpolacja Krzywymi Béziera
Płaty Béziera
B
0
B
1
B
2 B
3 1
1 0
y
u
Wielomiany Bernsteina (stopnia 3)
Krzywe Béziera
• Splajny
• Krzywe Béziera
• Algorytm de Casteljau
• Krzywe Béziera sklejane
• Krzywe Béziera dowolnego stopnia Interpolacja Krzywymi Béziera
Płaty Béziera
B 0 ′ (0) = −3, B 1 ′ (0) = 3, B 2 ′ (0) = 0, B 3 ′ (0) = 0 B 0 ′ (1) = 0, B 1 ′ (1) = 0, B 2 ′ (1) = −3, B 3 ′ (1) = 3
q ′ (0) = 3(p 1 − p 0 ),
q ′ (1) = 3(p 3 − p 2 )
Algorytm de Casteljau
Krzywe Béziera
• Splajny
• Krzywe Béziera
• Algorytm de Casteljau
• Krzywe Béziera sklejane
• Krzywe Béziera dowolnego stopnia Interpolacja Krzywymi Béziera
Płaty Béziera
p
0
p
1
p
2
p
3 r
0
r
1
r
2
s
0
s
1
t
0
Figure VII.4: The de Casteljau method for omputing q(u) for q a degree
three Bezier urve. This illustrates the u = 1=3 ase.
r i = (1 − u) · p i + u · p i+1 , s i = (1 − u) · r i + u · p i +1 ,
t = (1 − u) · s + us
Algorytm de Casteljau ( u = 1 2 )
Krzywe Béziera
• Splajny
• Krzywe Béziera
• Algorytm de Casteljau
• Krzywe Béziera sklejane
• Krzywe Béziera dowolnego stopnia Interpolacja Krzywymi Béziera
Płaty Béziera
p
0
p
1
p
2
p
3 r
0
r
1
r
2 s
0
s
1 t
0
q
1
(u) q
2 (u)
Figure VII.5: The de Casteljau method for omputing q(u) for q a degree
three Bezier urve is the basis for nding the new points needed for re ursive
subdivision. Shown here is the u = 1=2 ase. The points p
0
;r
0
;s
0
;t
0
are the
ontrol points for the Bezier urve q
1
(u) whi h is equal to the rst half of the
urve q(u), i.e., starting at p
0
and ending at t
0
. The points t
0
;s
1
;r
2
;p
3 are
the ontrol points for the urve q
2
(u) equal to the se ond half of q(u), i.e.,
starting at t
0
and ending at p
3 .
r i = p i + p i+1
2 , s i = r i + r i+1
2 , t 0 = s 0 + s 1 2 , q(1/2) = t 0 = 1
8 p 0 + 3
8 p 1 + 3
8 p 2 + 1
8 p 3
Podział krzywej
Krzywe Béziera
• Splajny
• Krzywe Béziera
• Algorytm de Casteljau
• Krzywe Béziera sklejane
• Krzywe Béziera dowolnego stopnia Interpolacja Krzywymi Béziera
Płaty Béziera
p
0
p
1
p
2
p
3 r
0
r
1
r
2 s
0
s
1 t
0
q
1
(u) q
2 (u)
Figure VII.5: The de Casteljau method for omputing q(u) for q a degree
three Bezier urve is the basis for nding the new points needed for re ursive
subdivision. Shown here is the u = 1=2 ase. The points p
0
;r
0
;s
0
;t
0
are the
ontrol points for the Bezier urve q
1
(u) whi h is equal to the rst half of the
urve q(u), i.e., starting at p
0
and ending at t
0
. The points t
0
;s
1
;r
2
;p
3 are
the ontrol points for the urve q
2
(u) equal to the se ond half of q(u), i.e.,
starting at t
0
and ending at p
3 .
Twierdzenie 1. Niech q(u) b ˛edzie krzyw ˛ a Béziera o punktach kontrolnych p 0 , p 1 , p 2 , p 3 . Wtedy q 1 (u) = q(u/2) b ˛edzie Krzyw ˛ a Béziera o punktach kontrolnych p 0 , r 0 , s 0 , t 0 ,
q 2 (u) = q((u + 1)/2) b ˛edzie krzyw ˛ a Béziera o punktach t 0 , s 1 , r 2 ,
p 3 .
Zag ˛eszczanie (recursive subdivision)
Krzywe Béziera
• Splajny
• Krzywe Béziera
• Algorytm de Casteljau
• Krzywe Béziera sklejane
• Krzywe Béziera dowolnego stopnia Interpolacja Krzywymi Béziera
Płaty Béziera
p
0 p
1
p
2
p
3 r
0
r
1
r
2
s
0
s
1
t
0
Figure VII.4: The de Casteljau method for omputing q(u) for q a degree
three Bezier urve. This illustrates the u= 1=3 ase.
Twierdzenie 2. Niech q(u) b ˛edzie krzyw ˛ a Béziera o punktach kontrolnych p 0 , p 1 , p 2 , p 3 . Wtedy q 1 (u) = q(u 0 u) b ˛edzie Krzyw ˛ a Béziera o punktach kontrolnych p 0 , r 0 , s 0 , t 0 ,
q 2 (u) = q(u 0 + (1 − u 0 )u) b ˛edzie krzyw ˛ a Béziera o punktach t 0 ,
s 1 , r 2 , p 3 .
Renderowanie krzywych Béziera w postaci odcinków
Krzywe Béziera
• Splajny
• Krzywe Béziera
• Algorytm de Casteljau
• Krzywe Béziera sklejane
• Krzywe Béziera dowolnego stopnia Interpolacja Krzywymi Béziera
Płaty Béziera
• kq( 1 2 ) − 1 2 (p 0 + p 3 )k < ε ,
• kp 0 − p 1 − p 2 + p 3 k 2 < (8ε/3) 2 ,
• p 1 , p 2 ≈∈ p 0 p 3
Wła ´sciwo ´s ´c otoczki wypukłej
Krzywe Béziera
• Splajny
• Krzywe Béziera
• Algorytm de Casteljau
• Krzywe Béziera sklejane
• Krzywe Béziera dowolnego stopnia Interpolacja Krzywymi Béziera
Płaty Béziera
• Krzywa Béziera zawiera si ˛e w otoczce wypukłej swoich punktów
kontrolnych
Krzywe Béziera sklejane
Krzywe Béziera
• Splajny
• Krzywe Béziera
• Algorytm de Casteljau
• Krzywe Béziera sklejane
• Krzywe Béziera dowolnego stopnia Interpolacja Krzywymi Béziera
Płaty Béziera
q
1 (u)
q
2 (u)
p
1;0 p
1;1
p
1;2 p
1;3
= p
2;0 p
2;1
p
2;2
p
2;3
(a)
q
1 (u)
q
2 (u)
p
1;0 p
1;1
p
1;2
p
1;3
= p
2;0 p
2;1
p
2;2
p
2;3
(b)
Figure VII.7: Two urves, ea h formed from two Bezier urves, with ontrol
points as shown. The urve in part (a) is G 1
- ontinuous, but not C 1
-
ontinuous. The urve in part (b) is neither C 1
- ontinuous nor G 1
- ontinuous.
Compare these urves to the urves of gures VII.5 and VII.6 whi h are both
C 1
- ontinuous and G 1
- ontinuous.
q 1 ′ (1) = q 2 ′ (0) ⇒ p 1,3 − p 1,2 = p 2,1 − p 2,0
Krzywe Béziera dowolnego stopnia
Krzywe Béziera
• Splajny
• Krzywe Béziera
• Algorytm de Casteljau
• Krzywe Béziera sklejane
• Krzywe Béziera dowolnego stopnia Interpolacja Krzywymi Béziera
Płaty Béziera
q(u) =
k
X
i =0
B i k (u)p i
B i k (u) = k i
!
u i (1 − u) k−i ,
k
X
i=0
B i k (u) =
k
X
i=0
k i
!
u i (1 − u) k−i = u + (1 − u) k = 1, q ′ (0) = k(p 1 − p 0 ),
q ′ (1) = k(p k − p k− 1 ).
Krzywe Béziera dowolnego stopnia
Krzywe Béziera
• Splajny
• Krzywe Béziera
• Algorytm de Casteljau
• Krzywe Béziera sklejane
• Krzywe Béziera dowolnego stopnia Interpolacja Krzywymi Béziera
Płaty Béziera
p
0
p
1
(a) Degree one
p
0
p
2 p
1
(b) Degree two
p
0
p
1
p
2
p
3
p
4
p
5
p
6
p
7
p
8
( ) Degree eight
Podwy˙zszenie stopnia
Krzywe Béziera
• Splajny
• Krzywe Béziera
• Algorytm de Casteljau
• Krzywe Béziera sklejane
• Krzywe Béziera dowolnego stopnia Interpolacja Krzywymi Béziera
Płaty Béziera
P ˆ 0 = P 0 P ˆ k+1 = P k P ˆ i = i
k + 1 P i− 1 + k − i + 1
k + 1 P i
Interpolacja Krzywymi Béziera
Krzywe Béziera Interpolacja Krzywymi Béziera
• Bessel-Overhauser
• Splajn TBC
Płaty Béziera
Zagadnienie interpolacji
Krzywe Béziera Interpolacja Krzywymi Béziera
• Bessel-Overhauser
• Splajn TBC Płaty Béziera
• Dane s ˛ a punkty p 0 , . . . , p m i w ˛ezły u 0 , . . . , u m .
• Okre´sli´c parametryzowan ˛ a krzyw ˛ a q(u) tak, ˙zeby q(u i ) = p i
dla i = 0, . . . , m .
• Krzywa odcinkowo-wielomianowa (trzeciego stopnia).
• Sklejanie krzywych Béziera.
Splajny Catmulla-Roma
Krzywe Béziera Interpolacja Krzywymi Béziera
• Bessel-Overhauser
• Splajn TBC Płaty Béziera
• Dane s ˛ a punkty P 0 , . . . , P m i w ˛ezły u i = i dla i = 0, . . . , m .
• Okre´sli´c parametryzowan ˛ a krzyw ˛ a q(u) tak, ˙zeby q(i) = P i
dla i = 1, . . . , m − 1 .
• Krzywa Catmull-Rom składa si ˛e z m − 2 krzywych Béziera.
• Punkty kontrolne wybiera si ˛e tak, ˙zeby krzywa była klasy C 1 .
Splajny Catmulla-Roma
Krzywe Béziera Interpolacja Krzywymi Béziera
• Bessel-Overhauser
• Splajn TBC Płaty Béziera
p
i 1 p
i p
i
p +
i
p
i+1
p
i+1
p +
i+1
p
i+2 2l
i+1
2l
i
Figure VII.22: Dening the Catmull-Rom spline segment from the point p
i
to the point p
i+1
. The points p
i , p
i
, and p +
i
are ollinear and parallel to
p
i+1 p
i 1
. Thepoints p
i , p
+
i , p
i+1
, and p
i+1
form the ontrol points of a
degree threeBezier urve, whi hisshown asadotted urve.
l i = 1
2 (p i +1 − p i− 1 ), p ± i = p i ± 1
3 l i
Syngularno ´s ´c splajnu Catmulla-Roma
Krzywe Béziera Interpolacja Krzywymi Béziera
• Bessel-Overhauser
• Splajn TBC Płaty Béziera
p
0 p
1
p
2
p
3
p
4
p
5
p
0
p
1
p
2 p
3 p
4 p
5
p
6
p
7
Figure VII.23: Two examples of Catmull-Rom splines with uniformly spa ed
knots.
Splajny Bessela-Overhausera
Krzywe Béziera Interpolacja Krzywymi Béziera
• Bessel-Overhauser
• Splajn TBC Płaty Béziera
• Parameter u ≈ długo´sci ci ˛eciwy.
• u i+1 − u i = kp i+1 − p i k .
Metoda Bessela-Overhausera
Krzywe Béziera Interpolacja Krzywymi Béziera
• Bessel-Overhauser
• Splajn TBC Płaty Béziera
• v i + 1
2 = u p i +1 − p i
i +1 − u i , i = 0, . . . , m − 1 .
• v i = (u
i +1 − u i )v
i− 1 2
+(u i − u i−1 )v i + 1
2
u i +1 − u i−1 , i = 1, . . . , m − 1 .
• p − i = p i − 1 3 (u i − u i− 1 )v i , i = 1, . . . , m − 1 .
• p + i = p i + 1 3 (u i +1 − u i )v i , i = 1, . . . , m − 1 .
• Krzywa Béziera o punktach kontrolnych p i , p + i , p − i +1 , p i+1 ,
i = 1, . . . , m − 1 .
Splajn Bessela-Overhausera
Krzywe Béziera Interpolacja Krzywymi Béziera
• Bessel-Overhauser
• Splajn TBC Płaty Béziera
p
0 p
1
p
2
p
3
p
4
p
5
p
0
p
1
p
2 p
3 p
4 p
5
p
6
p
7
Figure VII.24: Two examples of Overhauser spline urves. The knot positions
were set by hord-length parameterization. These are dened from exa tly the
same ontrolpoints as the Catmull-Rom urves in gureVII.23.
Przykład
Krzywe Béziera Interpolacja Krzywymi Béziera
• Bessel-Overhauser
• Splajn TBC Płaty Béziera
• p 0 = p 1 = (0, 0) , p 2 = (10, 0) , p 3 = p 4 = (10, 1) ,
• u 0 = 0 , u 1 = 1 , u 2 = 2 , u 3 = 2,1 , u 4 = 3,1 .
p
0
=p
1
p
2 p
3
=p
4 y
x
Figure VII.25: The Overhauser spline whi h is the solution to exer ise VII.24.
Splajn Bessela-Overhausera
Krzywe Béziera Interpolacja Krzywymi Béziera
• Bessel-Overhauser
• Splajn TBC Płaty Béziera
Twierdzenie 3. Splajn Bessela-Overhausera jest krzyw ˛ a klasy C 1 .
Twierdzenie 4. Niech dane b ˛ed ˛ a punkty p 0 , . . . , p m i w ˛ezły
u 0 , . . . , u m . Niech f i (u) b ˛edzie wielomianem kwadratowym, taklim
˙ze f i (u i− 1 ) = p i− 1 , f i (u i ) = p i , f i (u i +1 ) = p i +1 dla
i = 1, . . . , m − 1 .
Wtedy
q i (u) = (u i +1 − u)f i (u) + (u − u i )f i +1 (u) u i +1 − u i
zgadza si ˛e ze splajnem Bessela-Overhausera na odcinku [u i , u i+1 ] .
Splajn TBC
Krzywe Béziera Interpolacja Krzywymi Béziera
• Bessel-Overhauser
• Splajn TBC Płaty Béziera
• Tension-Bias-Continuity, (Napi ˛ecie-Skos-Gładko´s´c).
• Wpływ na punkty kontrolne p ± i .
• Pochodne w ko ´ncach przedziału:
Dq i − = lim u→u i − q (u i )−q(u)
u i − u = 3(p i − p − i ) , Dq i + = lim u→u i + q(u)−q(u i )
u−u i = 3(p + i − p i ) .
• p + i = p i + 1 3 Dq i + , p − i = p i − 1 3 Dq i − .
• Catmull-Rom: Dq i − = Dq i + = 1 2 v i− 1
2 + 1 2 v i+ 1
2
, gdzie
v i− 1
2 = p i − p i− 1 .
Napi ˛ecie t
Krzywe Béziera Interpolacja Krzywymi Béziera
• Bessel-Overhauser
• Splajn TBC Płaty Béziera
• t < 1 , (Catmull-Rom t = 0 ).
• Dq i − = Dq i + = (1 − t) 1 2 v i− 1
2 + 1 2 v i + 1
2
, gdzie
v i− 1
2 = p i − p i− 1 .
t = 1=2 t = 1=2
t = 0 p
0
p
1
p
5
p
6
Figure VII.26: The ee ts of the tension parameter.
Gładko ´s ´c c
Krzywe Béziera Interpolacja Krzywymi Béziera
• Bessel-Overhauser
• Splajn TBC Płaty Béziera
• Dla krzywej klasy C 1 parametr c = 0 .
• Dla −1 6 c < 0 pochodnia w u i nie jest ci ˛ agła.
• Dq i − = 1−c 2 v i− 1
2 + 1+c 2 v i + 1
2
, Dq i + = 1+c 2 v i− 1
2 + 1−c 2 v i + 1
2
, gdzie v i− 1
2 = p i − p i− 1 .
= 1=2
= 1
= 0 p
0
p
1
p
5
p
6
Figure VII.27: The ee ts of the ontinuity parameter.
Skos b
Krzywe Béziera Interpolacja Krzywymi Béziera
• Bessel-Overhauser
• Splajn TBC Płaty Béziera
• Dq i − = Dq i + = 1+b 2 v i− 1
2 + 1−b 2 v i + 1
2
,
• gdzie v i− 1
2 = p i − p i−1 .
b = 1=2 b= 1=2
b = 0 p
0
p
1
p
5
p
6
Figure VII.28: The ee ts of the bias parameter.
TCB
Krzywe Béziera Interpolacja Krzywymi Béziera
• Bessel-Overhauser
• Splajn TBC Płaty Béziera
• Dq i − = (1−t)(1−c)(1+b)
2 v i− 1
2 + (1−t)(1+c)(1−b)
2 v i+ 1
2
,
• Dq i + = (1−t)(1+c)(1+b)
2 v i− 1
2 + (1−t)(1−c)(1−b)
2 v i + 1
2
,
• gdzie v i− 1
2 = p i − p i−1 .
Płaty Béziera
Krzywe Béziera Interpolacja Krzywymi Béziera
Płaty Béziera
• Powierzchnie Béziera
• Wymierne krzywe Béziera
• Bryła obrotowa
Powierzchnie Béziera
Krzywe Béziera Interpolacja Krzywymi Béziera
Płaty Béziera
• Powierzchnie Béziera
• Wymierne krzywe Béziera
• Bryła obrotowa
p
0;0
p
3;0 p
0;3
p
3;3
Powierzchnie Béziera trzeciego stopnia
Krzywe Béziera Interpolacja Krzywymi Béziera
Płaty Béziera
• Powierzchnie Béziera
• Wymierne krzywe Béziera
• Bryła obrotowa
q(u, v) =
3
X
i=0 3
X
j =0
B i (u)B j (v)p i,j =
=
3
X
i=0
B i (u)
3
X
j =0
B j (v)p i,j
=
=
3
X
j=0
B j (v)
3
X
i=0
B i (u)p i,j
!
,
(u, v) ∈ [0, 1] × [0, 1]
Przekrój powierzchni Béziera
Krzywe Béziera Interpolacja Krzywymi Béziera
Płaty Béziera
• Powierzchnie Béziera
• Wymierne krzywe Béziera
• Bryła obrotowa
Figure VII.12: A degree three Bezier pat h and some ross se tions. The ross
se tions are Bezier urves.
• q(u, v) = P 3
i=0
B i (u) P 3
j =0
B j (v)p i,j
!
• r i = P 3
j =0
B j (v)p i,j , s j = P 3
i =0
B i (u)p i,j
Graniczne linie powierzchni Béziera
Krzywe Béziera Interpolacja Krzywymi Béziera
Płaty Béziera
• Powierzchnie Béziera
• Wymierne krzywe Béziera
• Bryła obrotowa
p
0;0
p
3;0 p
0;3
p
3;3
Figure VII.11: A degree three Bezier pat h and its ontrol points. The ontrol
points are shown joined by straight line segments.
• v = 0, u ∈ [0, 1] : granica „przednia”, p i, 0
• u = 0, v ∈ [0, 1] : granica „lewa”, p 0,j
Pochodne cz ˛ astkowe powierzchni Béziera
Krzywe Béziera Interpolacja Krzywymi Béziera
Płaty Béziera
• Powierzchnie Béziera
• Wymierne krzywe Béziera
• Bryła obrotowa
∂q
∂v (u, 0) =
3
X
i=0
3B i (u)(p i, 1 − p i, 0 )
∂q
∂v (u, 1) =
3
X
i =0
3B i (u)(p i, 3 − p i, 2 )
∂q
∂u (0, v) =
3
X
i =0
3B j (v)(p 1,j − p 0,j )
∂q
∂v (1, v) =
3
X
i =0
3B j (v)(p 3,j − p 3,j )
Sklejane powierzchnie Béziera
Krzywe Béziera Interpolacja Krzywymi Béziera
Płaty Béziera
• Powierzchnie Béziera
• Wymierne krzywe Béziera
• Bryła obrotowa
p
0;0 p
0;3
p
3;0
= r
0;0 p
3;3
= r
0;3
r
3;0 r
3;3
q
1
q
2
Wymierne krzywe Béziera
Krzywe Béziera Interpolacja Krzywymi Béziera
Płaty Béziera
• Powierzchnie Béziera
• Wymierne krzywe Béziera
• Bryła obrotowa
p i = (x : y : z : w) ,
q(u) = X
i
B i k (u)p i
• współrz ˛edna w pozwala na powi ˛ekszenie wagi punktu kontrolnego
• modelowanie krzywych sto˙zkowych
• rzut perspektywiczny krzywej wymiernej jest zawsze krzyw ˛ a wymiern ˛ a
• punkty kontrolne mog ˛ a by´c umieszczone w niesko ´nczono´sci
Powi ˛ekszenie wagi punktu kontrolnego
Krzywe Béziera Interpolacja Krzywymi Béziera
Płaty Béziera
• Powierzchnie Béziera
• Wymierne krzywe Béziera
• Bryła obrotowa
43 / 49
q(u) = X
i
B i k (u)(w i p i : w i ) ∼ X
i
w i B i k (u)
P
j w j B i k (u) p i
hp
0
;1i h3p
1
;3i
h 1
3 p
2
; 1
3 i hp
3
;1i
Figure VII.16: A degree three, rational Bezier urve. The ontrol points are
the same as in the left-hand side of gure VII.2 on page 156, but now the
Okr ˛ ag
Krzywe Béziera Interpolacja Krzywymi Béziera
Płaty Béziera
• Powierzchnie Béziera
• Wymierne krzywe Béziera
• Bryła obrotowa
p
0
= h0;1;1i
p
2
= h0; 1;1i
p
1
= h1;0;0i q(u)
Figure VII.17: The situation of Theorem VII.9. The middle ontrol point is
a tually a point at innity, and the dotted lines joining it to the other ontrol
points are a tually straight and are tangent to the ir le at p
0
and p
2
q(u) = (1 − u) 2 p 0 + 2u(1 − u)p 1 + u 2 p 2 =
.= 2u(1 − u) : (1 − u) 2 − u 2 : (1 − u) 2 + u 2 ∼
∼ 2u(1 − u)
(1 − u) 2 + u 2 , (1 − u) 2 − u 2 (1 − u) 2 + u 2
!
Krzywe sto˙zkowe
Krzywe Béziera Interpolacja Krzywymi Béziera
Płaty Béziera
• Powierzchnie Béziera
• Wymierne krzywe Béziera
• Bryła obrotowa
Twierdzenie 5. Niech T 0 i T 2 b ˛ed ˛ a stycznymi do krzywej
sto˙zkowej C w punktach p 0 i p 2 , p 1 b ˛ezie punktem przeci ˛ecia T 0
i T 2 . Wtedy istnieje waga w > 0 taka, ˙ze wymierna krzywa Béziera o punktach kontrolnych (p 0 : 1) , (p 1 : w) , (p 2 : 1) generuje odcinek krzywej C pomi ˛edzy p 0 a p 2 .
p
0
p
1
p
2 T
0
T
2
Krzywe sto˙zkowe
Krzywe Béziera Interpolacja Krzywymi Béziera
Płaty Béziera
• Powierzchnie Béziera
• Wymierne krzywe Béziera
• Bryła obrotowa
p
2
= h0;1i;
w
2
= 1
p
1
= h1;1i;
w
1
= p
2
2
p
0
= h1;0i;
w
0
= 1
p
2
= h p
3
2
; 1
2 i;
w
2
= 1
p
0
= h p
3
2
; 1
2 i;
w
0
= 1 p
1
= h0;2i;
w
1
= 1
2
Figure VII.19: Two ways to dene ir ular ar s with rational Bezier urves
without ontrol points at innity.
Półokr ˛ ag jako krzywa trzeciego stopnia
Krzywe Béziera Interpolacja Krzywymi Béziera
Płaty Béziera
• Powierzchnie Béziera
• Wymierne krzywe Béziera
• Bryła obrotowa
Okr ˛ ag o promieniu 2
Krzywe Béziera Interpolacja Krzywymi Béziera
Płaty Béziera
• Powierzchnie Béziera
• Wymierne krzywe Béziera
• Bryła obrotowa
(p 0 , p 1 , p 2 ) 7→ (p ∗ 0 = M p 0 , p ∗ 1 = M p 1 , p ∗ 2 = M p 2 )
p
0
= h0;1;1i
p
2
= h0; 1;1i
p
1
= h1;0;0i q(u)
Figure VII.17: The situation of Theorem VII.9. The middle ontrol point is
a tually a point at innity, and the dotted lines joining it to the other ontrol
points are a tually straight and are tangent to the ir le at p
0
and p
2 .
Bryła obrotowa
Krzywe Béziera Interpolacja Krzywymi Béziera
Płaty Béziera
• Powierzchnie Béziera
• Wymierne krzywe Béziera
• Bryła obrotowa
h2; 1;0i
h3;0;0i h
3
2
; 1
2
;0i
h2;1;0i
(a) (b)
Figure VII.21: (a) A silhouette of a surfa e of revolution (the ontrol points
are in x;y;z- oordinates). (b) The front half of the surfa e of revolution. This
example is implemented in the SimpleNurbs progam.