Plochy zadané okrajovými křivkami
Lineární plát
plocha je určena dvěma okrajovými křivkami a0 ( v ), a1 (v ), v I
pokud by pro tyto křivky byly intervaly, v nichž leží hodnoty parametru, různé, provedeme lineární transformaci parametru jedné z křivek tak, aby obě křivky měly parametr ze stejného intervalu
plát zkonstruujeme tak, že úsečkou spojíme body a0 ( vk ) a a1 ( vk )
kde vk je konstanta volená z intervalu
I
a0 (v )
rovnice plátu
a1 (v )
P(u, v ) a0 (v )(1 u) a1 (v )u, v I , u 0,1 Počítačová geometrie
Petra Surynková
Plochy zadané okrajovými křivkami
Lineární plát
pokud je pro plochu zadán systém křivek ai ( v ) , můžeme interpolovat po částech
tj. pro systém křivek můžeme výslednou plochu sestavit pomocí jednotlivých plátů
kvalita výsledné plochy je velmi nízká není zajištěno hladké napojení sousedních plátů v technické praxi se však s touto plochou setkáváme často – např. při interpolaci plochy dané velkým počtem křivek výhodou je, že parametrické křivky pro v = konst. jsou úsečky
Počítačová geometrie
Petra Surynková
Plochy zadané okrajovými křivkami
Lineární plát
příklady
P(u, v ) v, u, 2v v 2 (1 u ) , u 0,1 , v 0,2 přímý kruhový konoid
Počítačová geometrie
Petra Surynková
Plochy zadané okrajovými křivkami
Lineární plát
příklady
P(u, v ) u cos(v ), u sin( v ), v0v u 0,1 , v 0,2 přímý šroubový konoid
Počítačová geometrie
Petra Surynková
Plochy zadané okrajovými křivkami
Bilineární Coonsův plát
plocha je určena dvěma systémy křivek plochy, tj. parametrickými křivky jedné a druhé soustavy uvažujme jeden plát, pro jednoduchost předpokládejme, že tento plát bude mít parametry u 0,1 , v 0,1
obecný případ převedeme na tento tvar vhodnými transformacemi parametru
uvažujme tedy plát plochy určený okrajem (čtyřmi oblouky křivek) pro parametry z jednotkového čtverce
protějšími stranami okraje plátu jsou křivky
a0 (v ), a1 (v ) Počítačová geometrie
a
b0 (u ), b1 (u ) Petra Surynková
Plochy zadané okrajovými křivkami
Bilineární Coonsův plát
mapovací matici plátu nazveme matici
a0 (v ) P01 P00 M b0 (u ) P(u, v ) b1 (u ) , kde P a ( v ) P 1 11 10
P(u, v ) - je polohový vektor bodu plochy ozn. P(0,0) P00 ,... rovnice Coonsova bilineárního plátu je tvaru
Počítačová geometrie
1 v (1 u, 1, u ) M 1 0 v
u 0,1 , v 0,1 Petra Surynková
Plochy zadané okrajovými křivkami
Bilineární Coonsův plát
lze dokázat jsou-li protější dvě strany okraje bilineárního plátu úsečkami, je výsledná plocha přímkovou plochou (tedy spec. příklad lineárního plátu) Důkaz: je-li např.
b0 (u ) (1 u ) P00 uP10 b1 (u ) (1 u ) P01 uP11
potom parametrické křivky plátu pro v = konst. jsou rovněž úsečkami rovnice plátu je v tomto případě tvaru
P(u, v ) a0 (v )(1 u) a1 (v)u, u 0,1 , v 0,1 Počítačová geometrie
Petra Surynková
Plochy zadané okrajovými křivkami
Bilineární Coonsův plát
příklady
P ( u , v ) u , v , u u 2 v v 2 u 0,1 , v 0,1
Počítačová geometrie
Petra Surynková
Plochy zadané okrajovými křivkami
Bikubický Coonsův plát
určen stejně jako bilineární Coonsův plát svým okrajem jde o obecnější plochu rovnice Coonsova bikubického plátu je tvaru
F1 ( v ) ( F1 (u ), 1, F2 (u )) M 1 0 u 0,1 , v 0,1 F (v ) 2 funkce F1 (t ), F2 (t ) byly použity v souvislosti s Fergusonovými
křivkami
F1 (t ) 2t 3 3t 2 1 F2 (t ) 2t 3 3t 2 Počítačová geometrie
Petra Surynková
Plochy zadané okrajovými křivkami
Bikubický Coonsův plát
plocha obsahuje daný okraj, např. u = 0
a0 (v ) P01 F1 (v ) P00 (1 1,0) b0 (0) P(0, v ) b1 (0) 1 0 P a ( v ) P F ( v ) 1 11 2 10
P(0, v ) a0 (v )
analogicky ostatní dané křivky leží na plátu
Počítačová geometrie
Petra Surynková
Plochy zadané okrajovými křivkami
Bikubický Coonsův plát
vektory příčných derivací podél okrajových křivek jsou lineární kombinací tečných vektorů okrajových křivek v rozích plátu např.
P(0, v ) 1b0 (0) 2b1(0) u
analogicky pro další okrajové křivky
Počítačová geometrie
Petra Surynková
Plochy zadané okrajovými křivkami
Bikubický Coonsův plát
Plátování
uvažujme dva bikubické Coonsovy pláty plát 1 P(u, v ) s okrajovými křivkami
a0 (v ), a1 (v ), b0 (u ), b1 (u ), u 0,1 , v 0,1
2
plát P( w, v ) s okrajovými křivkami
a1 (v ), a2 (v ), b2 ( w), b3 ( w), v 0,1 , w 0,1
okrajové křivky složené plochy jsou třídy C
1
b0 (1) b2 (0) b1(1) b3 (0) Počítačová geometrie
Petra Surynková
Plochy zadané okrajovými křivkami
Bikubický Coonsův plát
Plátování
z předchozího je zřejmé, že navíc každá parametrická křivka v = konst. je třídy C1
Bikubické Coonsovy pláty zajišťují plátování
Počítačová geometrie
Petra Surynková
Plochy zadané okrajovými křivkami
Bikubický Coonsův plát
příklady
P(u, v ) u, v, u u 2 2v 3 3v 2 1 u 0,1 , v 0,1
Počítačová geometrie
Petra Surynková
Plochy zadané okrajovými křivkami
Bikubický Coonsův plát
příklady - napojení
Počítačová geometrie
Petra Surynková
Plochy zadané okrajovými křivkami
12-vektorový plát
Fergusonův plát ozn. P(0,0)
u
P00u ,...
Fergusonův plát je určen polohovými vektory P , P , P , P rohových bodů plátu 00 10 01 11 u u u u tečnými vektory P00 , P10 , P01 , P11 okrajových v-křivek v v v v tečnými vektory P , P , P , P okrajových u-křivek 00 10 01 11
Počítačová geometrie
Petra Surynková
Plochy zadané okrajovými křivkami
12-vektorový plát
rovnice 12-vektorového plátu je tvaru
F3 ( v ) F (v ) P(u, v ) ( F3 (u ), F1 (u ), F2 (u ), F4 (u )) M 1 u 0,1 , v 0,1 F2 ( v ) F (v ) 4 0 P00u P01u 0 3 2 F ( t ) 2 t 3 t 1 v v 1 P P P P 00 01 01 3 2 M 00v F ( t ) 2 t 3 t v 2 P10 P10 P11 P11 3 2 u u F ( t ) t 2 t t 3 0 P P 0 10 11 F4 (t ) t 3 t 2 Počítačová geometrie
Petra Surynková
Plochy zadané okrajovými křivkami
12-vektorový plát
platí
okrajovými křivkami Fergusonova plátu jsou Fergusonovy kubiky
např. u = 0
F3 ( v ) F (v ) P(0, v ) (0,1,0,0) M 1 F2 ( v ) F (v ) 4 P(0, v) P00 F1 (v ) P01F2 (v ) P00v F3 (v ) P01v F4 (v )
podobně i pro další tři okrajové křivky
Počítačová geometrie
Petra Surynková
Plochy zadané okrajovými křivkami
12-vektorový plát platí 12-vektorový plát splývá s Coonsovým bikubickým plátem, jehož okrajovými křivkami jsou Fergusonovy kubiky dané zadanými body a tečnými vektory 12-vektorového plátu Důkaz Do rovnice bikubického Coonsova plátu dosadíme za okrajové křivky příslušné rovnice Fergusonových kubik a po jistých algebraických úpravách obdržíme rovnici 12-vektorového plátu
Počítačová geometrie
Petra Surynková
Plochy zadané okrajovými křivkami
16-vektorový plát
zadání stejné jako u 12-vektorového plátu liší se v matici M
P00uv v P00 M P10v uv P10
Počítačová geometrie
P00u
P01u
P00
P01
P10
P11
P10u
P11u
P01uv P01v P11v P11uv
P00uv
P(0,0) ,... uv
tzv. zkrutové vektory
Petra Surynková
Plochy vzniklé vytažením
extrude
profil – křivka, kterou budeme vytahovat (např. ve směru nějaké z osy)
rovinná
k (u) [ x(u), y(u),0]
P(u, v ) [ x(u), y(u), v]
y x
prostorová k (u ) [ x(u ), y(u ), z(u )] + vektor vytažení a
u I ,v J
P(u, v ) k (u) va Počítačová geometrie
Petra Surynková
Plochy vzniklé vytažením
vytažení se změnou velikosti profilu profil k (u ) [ x(u ), y(u ),0]
P(u, v) [ mv x(u), mv y(u), v]
u I ,v J
vytažení ve směru osy z se současným zvětšováním nebo zmenšováním profilu zvětšení nebo zmenšení je přímo úměrné vytažení s koeficientem úměrnosti m
Počítačová geometrie
Petra Surynková
Šablonování křivky po trase
sweep
profil – křivka, která se pohybuje k1 (u ) [ x(u ), y(u ), z(u )] trasa – křivka, po které se pohybuje profil k2 (v ) [ x(v ), y(v ), z(v )]
P(u, v ) k1 (u) k1 (v )
u I ,v J
= translační plocha můžeme zaměnit roli křivek
Počítačová geometrie
Petra Surynková
Plochy vzniklé potažením
loft
dána soustava křivek – hledáme takovou plochu, která interpoluje dané křivky
a0 (v )
a1 (v )
a2 (v )
př. lineární plát, hermitovský plát
Počítačová geometrie
Petra Surynková
Šablonování křivky po dvou trasách
sweep 2 rails
b0 (u ) a0 (v )
dány tři okraje
b0 (u), b1 (u) a0 (v )
trasy profil
(není translační plocha, profil se mění)
b1 (u )
př. bilineární Coonsův plát
Počítačová geometrie
Petra Surynková
Bézierovy plochy
Bézierova plocha stupně m n je určena ( m 1) ( n 1) řídícími body a vztahem n
m
Q (u, v ) Pij Bin (u )B mj (v ), u 0,1 , v 0,1
, kde
i 0 j 0
bázové funkce Bi (t ), k n, m jsou Bernsteinovy polynomy k-tého stupně k
Bik (t ) k t i (1 t )k i i t 0,1 , i 0,1,..., k Počítačová geometrie
Petra Surynková
Bézierovy plochy
Bézierova plocha stupně m n
platí Bézierova plocha prochází rohovými body sítě a okrajové křivky plochy jsou Bézierovými křivkami pro okraje sítě tečná rovina v bodě P je určena body P , P , P 00 00 10 01 podobně pro další rohové body
Q (0,0) P00 Q (0,1) P0 m Q (1,0) Pn 0
okrajová křivka např.: m
Q (0, v ) P0 j B mj (v ) j 0
Q (1,1) Pnm Počítačová geometrie
Petra Surynková
Bézierovy plochy
Příklad
Bézierova plocha se sítí řídících bodů
Počítačová geometrie
Petra Surynková
Bézierovy plochy
Napojování
mějme dva Bézierovy pláty Q , R první z nich je určen sítí řídících bodů Qij , i 0,..., s; j 0,..., m druhý je určen sítí řídících bodů Rij , i 0,..., t; j 0,..., m
počet bodů ve směru v je stejný pro oba pláty a je roven m
pláty navazujeme ve směru u a požadujeme, aby jejich stupeň v tomto směru byl alespoň tři, tj. s 3, t 3
napojení C
0
pláty mají společnou stranu, tj. Q(u,1) R(0, v ) , toho docílíme ztotožněním řídících bodů, které určují příslušnou stranu
Qsj R0 j , j 0,..., m Počítačová geometrie
Petra Surynková
Bézierovy plochy
Napojování 0 napojení C
Počítačová geometrie
Petra Surynková
Bézierovy plochy
Napojování 1 napojení C
1
pokud společná strana plátů je C spojitá a jsou-li identické příčné tečné vektory ve směru u podél této strany tj. shoda C 1 spojité strany a splnění následující vztahu pro body řídících polygonů obou plátů
Qsj Qs 1 j R1 j R0 j , j 0,..., m
křivka spojující řídící body společné strany leží ve středu úseček, které spojují vždy předposlední bod řídícího polygonu plátu Q ve směru u s druhým bodem plátu R ve stejném směru
Počítačová geometrie
Petra Surynková
Bézierovy plochy
Napojování 1 napojení C
Počítačová geometrie
Petra Surynková
Bézierovy plochy
Bézierova bikubická plocha m 3, n 3 3
3
Q (u, v ) Pij Bi3 (u )B 3j (v ), u 0,1 , v 0,1 i 0 j 0
B03 (t ) (1 t )3 B13 (t ) 3t (1 t )2 B23 (t ) 3t 2 (1 t ) B33 (t ) t 3
1 3 3 3 6 3 MB 3 3 0 1 0 0
Q (u, v ) UM B PM BTV T u 3 u 2 Počítačová geometrie
1 P00 P01 P P11 0 10 P 0 P20 P21 P 0 30 P31 v3 2 T v u 1 M B PM B v 1
P02 P12 P22 P32
P03 P13 P23 P33
Petra Surynková