FERGUSONOVA KUBIKA. ( u) ( ) ( ) X s X s. Kubický spline C 2 má dva stupně volnosti Q 1 Q 2

Podobné dokumenty
Plochy počítačové grafiky II. Interpolační plochy Bezierovy pláty nad obdélníkovou a trojúhelníkovou sítí Recionální Bezierovy pláty B-spline NURBS

Ivana Linkeová SPECIÁLNÍ PŘÍPADY NURBS REPREZENTACE. 2 NURBS reprezentace křivek

Aproximační křivky. Trocha historie. geometrické modelování veliký pokrok v oblasti letectví 1944 Roy Liming

Aproximační křivky. Trocha historie. geometrické modelování veliký pokrok v oblasti letectví 1944 Roy Liming

Kristýna Bémová. 13. prosince 2007

Bézierovy křivky Bohumír Bastl KMA/GPM Geometrické a počítačové modelování Bézierovy křivky GPM 1 / 26

Křivky a plochy technické praxe

Křivky a plochy II. Petr Felkel. Katedra počítačové grafiky a interakce, ČVUT FEL místnost KN:E-413 na Karlově náměstí

15. listopadu Matematický ústav UK Matematicko-fyzikální fakulta. Hermitovská interpolace

Jana Dannhoferová Ústav informatiky, PEF MZLU

KMA/GPM Barycentrické souřadnice a

POČÍTAČOVÁ GRAFIKA - PGR PROGRAM PŘEDNÁŠEK. Po 9:00-10:30, KN:A-214

3. SB 3. SC. Kružnice nemá s úběžnicí žádný společný bod. Obraz nemá žádný nevlastní bod. Tímto obrazem je křivka zvaná elipsa.

5. Plochy v počítačové grafice. (Bézier, Coons)

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY

u (x i ) U i 1 2U i +U i+1 h 2. Na hranicích oblasti jsou uzlové hodnoty dány okrajovými podmínkami bud přímo

Plochy počítačové grafiky

Rhino - základní příkazy

KŘIVKY A PLOCHY. Obrázky (popř. slajdy) převzaty od

Matematický ústav UK Matematicko-fyzikální fakulta

Matematický ústav UK Matematicko-fyzikální fakulta

Plochy zadané okrajovými křivkami

x 2 = a 2 + tv 2 tedy (a 1, a 2 ) T + [(v 1, v 2 )] T A + V Příklad. U = R n neprázdná množina řešení soustavy Ax = b.

1. Spektrální rozklad samoadjungovaných operátorů 1.1. Motivace Vlastní čísla a vlastní vektory symetrické matice 1 1 A = 1 2.

NURBS REPREZENTACE KŘIVEK V MAPLE

Křivky a plochy I. Petr Felkel. Katedra počítačové grafiky a interakce, ČVUT FEL místnost KN:E-413 na Karlově náměstí

Subdivision křivky a plochy

Zavedeme-li souřadnicový systém {0, x, y, z}, pak můžeme křivku definovat pomocí vektorové funkce.

Interpolační křivky. Interpolace pomocí spline křivky. f 1. f 2. f n. x... x 2

Rozvinutelné plochy. tvoří jednoparametrickou soustavu rovin a tedy obaluje rozvinutelnou plochu Φ. Necht jsou

Vektorové podprostory, lineární nezávislost, báze, dimenze a souřadnice

Učební texty k státní bakalářské zkoušce Matematika Vlastní čísla a vlastní hodnoty. študenti MFF 15. augusta 2008

Definice. Vektorový prostor V nad tělesem T je množina s operacemi + : V V V, tj. u, v V : u + v V : T V V, tj. ( u V )( a T ) : a u V které splňují

B-spline a racionální B-spline křivky

Definice Tečna paraboly je přímka, která má s parabolou jediný společný bod,

PROSTORU MODELLING OF NURBS CURVES AND SURFACES IN THE PROJECTIVE SPACE

2 OBSAH. Literatura 162

1 Linearní prostory nad komplexními čísly

na magisterský studijní obor Učitelství matematiky pro střední školy

1. Jordanův kanonický tvar

Křivky a plochy. Pavel Strachota. FJFI ČVUT v Praze

Matematika I A ukázkový test 1 pro 2018/2019

modelovani_ploch.pdf - návod k vypracování 2.sam. práce a vzor vyplnění formuláře ( přineste na 5.cvičení)

Golayův kód 23,12,7 -kód G 23. rozšířený Golayův kód 24,12,8 -kód G 24. ternární Golayův kód 11,6,5 -kód G 11

Důkazy vybraných geometrických konstrukcí

Derivace funkcí více proměnných

Lineární algebra : Lineární prostor

Michal Zamboj. December 23, 2016

Základní vlastnosti křivek

AXONOMETRIE. Rozměry ve směru os (souřadnice bodů) jsou násobkem příslušné jednotky.

Napěťový vektor 3d. Díky Wikipedia za obrázek. n n n

Michal Zamboj. January 4, 2018

prostorová definice (viz obrázek vlevo nahoře): elipsa je průsečnou křivkou rovinného

Numerická matematika A

Úsečka spojující sousední vrcholy se nazývá strana, spojnice nesousedních vrcholů je úhlopříčka mnohoúhelníku.

Shodná zobrazení. bodu B ležet na na zobrazené množině b. Proto otočíme kružnici b kolem

10 Přednáška ze

Diferenciální počet 1 1. f(x) = ln arcsin 1 + x 1 x. 1 x 1 a x 1 0. f(x) = (cos x) cosh x + 3x. x 0 je derivace funkce f(x) v bodě x0.

Lineární algebra : Polynomy

ALGEBRA. Téma 5: Vektorové prostory

pro každé i. Proto je takových čísel m právě N ai 1 +. k k p

(2) [B] Nechť G je konečná grupa tvořena celočíselnými maticemi roměru 2 2 s operací násobení. Nalezněte všechny takové grupy až na izomorfizmus.

(4x) 5 + 7y = 14, (2y) 5 (3x) 7 = 74,

[1] Motivace. p = {t u ; t R}, A(p) = {A(t u ); t R} = {t A( u ); t R}

Statika 1. Vnitřní síly na prutech. Miroslav Vokáč 11. dubna ČVUT v Praze, Fakulta architektury. Statika 1. M.

Vektory a matice. Obsah. Aplikovaná matematika I. Carl Friedrich Gauss. Základní pojmy a operace

Kolik existuje různých stromů na pevně dané n-prvkové množině vrcholů?

Matice. Je dána matice A R m,n, pak máme zobrazení A : R n R m.

KRUHOVÁ ŠROUBOVICE A JEJÍ VLASTNOSTI

Offsety KMA/ITG Informační technologie ve vyučování geometrie Offsety ITG 1 / 33

Lineární prostory. - vektorové veličiny(síla, rychlost, zrychlení,...), skládání, násobení reálným číslem

Geometrické vyhledávání

Vybrané kapitoly z matematiky

Další plochy technické praxe

Kružnice, úhly příslušné k oblouku kružnice

6 Skalární součin. u v = (u 1 v 1 ) 2 +(u 2 v 2 ) 2 +(u 3 v 3 ) 2

Soustavy lineárních rovnic

Vektorový součin I

Vlastní číslo, vektor

Konvexní útvary. Kapitola 4. Opěrné roviny konvexního útvaru v prostoru

Matematika pro real-time grafiku

Čtyři body na kružnici

{ } Ox ( 0) 4.2. Konvexnost, konkávnost, inflexe. Definice Obr. 52. Poznámka. nad tečnou

Čebyševovy aproximace

6.1 Vektorový prostor

7 Konvexní množiny. min c T x. při splnění tzv. podmínek přípustnosti, tj. x = vyhovuje podmínkám: A x = b a x i 0 pro každé i n.

Přehled. Motivace Úvod. Křivky a plochy počítačové grafiky. Závěr. Rozvoj počítačové grafiky Výpočetní geometrie

Necht tedy máme přirozená čísla n, k pod pojmem systém lineárních rovnic rozumíme rovnice ve tvaru

Dá se ukázat, že vzdálenost dvou bodů má tyto vlastnosti: 2.2 Vektor, souřadnice vektoru a algebraické operace s vektory

2.6. Vlastní čísla a vlastní vektory matice

MATICE. a 11 a 12 a 1n a 21 a 22 a 2n A = = [a ij]

Interpolace, ortogonální polynomy, Gaussova kvadratura

Fergusnova kubika, která je definována pomocí bodu P1, vektoru P1P2, bodu P3 a vektoru P3P4

ina ina Diskrétn tní náhodná veličina může nabývat pouze spočetně mnoha hodnot (počet aut v náhodně vybraná domácnost, výsledek hodu kostkou)

X = A + tu. Obr x = a 1 + tu 1 y = a 2 + tu 2, t R, y = kx + q, k, q R (6.1)

ÚLOHY S POLYGONEM. Polygon řetězec úseček, poslední bod je totožný s prvním. 6 bodů: X1, Y1 až X6,Y6 Y1=X6, Y1=Y6 STANOVENÍ PLOCHY JEDNOHO POLYGONU

Úvodní informace Soustavy lineárních rovnic. 12. února 2018

Numerické metody a statistika

3 Lineární kombinace vektorů. Lineární závislost a nezávislost

P ˇ REDNÁŠKA 3 FUNKCE

Transkript:

FERGUSONOVA KUBIKA C F F F ( u) = Q F ( u) + Q F ( u) + Q F ( u) + Q F ( u), u F ( u) = u ( u) = u + ( u) = u u ( u) = u u u + u + u Q Q Q Q C napojení Fergusonových kubk Kubcký splne C má dva stupně volnost Q + ( = ) = ( = ) X s X s ( ) Q Q = Q + 4Q + Q ( ) Q Q = Q + 4Q + Q n n n n n Q Q Q Q

Cardnal Splnes Tečna v bodě P je určena pomocí bodů P + P - ( c) ( P P ) = τ k k + k c parametr napětí spec.pro c=o dostáváme Catmull-Rom Splnes C spojtost, lokalta změn, Catmull-Rom Splnes 4 Tečný vektor v bodě P je rovnoběžný s vektorem P - P + Výpočet oblouků probíhá postupně a to nejprve pomocí bodů P, P, P, P, poté body P, P, P, P 4 atd. Př dvojnásobném výskytu prvního a posledního bodu tj. např. P, P, P, P,..., P n-, P n, P n bude křvka nterpolovat všem body. ( ) ( ) R u = R u P, u = R := + t t t 5 R := + t t R := + t t t R := t t

COONSOVA KUBIKA 5 C ( u) = C ( u), u C ( ) u = ( u) 6 P = C C C ( u) = ( u 6u + 4) 6 ( u) = ( u + u + u + ) 6 ( u) = u 6 COONSOVA KUBIKA 6 C ( u) = C ( u), u P = Q P V V P Q = V Q = V Q P P

COONSŮV V KUBICKÝ B-SPLINE B 7 BÉZIEROVA KUBIKA 8 ( ), ( ) C u = B u V, u B B B B,,, = ( u) = ( u) ( u) = u( u) ( u) = u ( u),( u) = u V V V V 4

BÉZIEROVA A FERGUSONOVA KUBIKA 9 Fergusonovu kubku můžeme vyjádřt jako Bezerovu kubku. Nechť je Fergusonova kubka dána body Q, Q a tečným vektory Q, Q. Pak pro vrcholy Bezerovy kubky V, V, V, V jednoduše odvodíme vztah Q = V Q = Q = Q = V ( V V ) ( V V ) Q = V Q V V Q = V V = Q V = Q + V = Q V = Q Q Q Q Coonsova kubka a Bezerova kubka Coonsův kubcký splne můžeme vyjádřt jako Bezerovu kubku. Nechť je Coonsův kubcký splne dán řídícím polygonem P,P,P,P. Pak pro vrcholy Bezerovy kubky V, V, V, V platí: (V, V anttěžště, V =V +(P -P )/6, V =V +(P -P )/6) V = P + P + P 6 6 V = P + P V = P + P V = P + P P 6 6 5

Bézerova křvka st. k k ( ), k ( ) C u = B u V, u = k B, k u t t ( ) = ( ) k Bezerovy křvky jsou symetrcké Jestlže obrátíme pořadířídících bodů, dostaneme stejnou křvku ( ) = ( ) B t B t, n n, n n n n n ( ) = ( ) n t t t t De Castaljau algortmus Je dáno pole řídících bodů arrvrcholy(), =..n For j = To n- For = To n-j- arrvrcholy()()=(-t)*arrvrcholy()()+t* arrvrcholy(+)() arrvrcholy()()=(-t)*arrvrcholy()()+t* arrvrcholy(+)() arrvrcholy()()=(-t)*arrvrcholy()()+t* arrvrcholy(+)() Next Next Rhno.AddPont arrvrcholy() 6

Napojení Bezerových křvek n n n X ( t) = n B, n ( t) ( V + V ) = n B, n ( t) V + B, n ( t) V = = = Dervace je určena rozdílem Bezerových křvek nžšího stupně s řídícím polygony V, V,, V n- a V, V,, V, C Bezerův splne shodnost druhé dervace odpovídá shodným druhým dferencím n n X t = n n B t R R = n n B t V V + V = = ( ) ( ), n ( ) ( + ) ( ), n ( )( + + ) P P + P = Q Q + Q ( P P ) ( P P ) = ( Q Q ) ( Q Q ) ( P P ) = ( P P ) + ( Q Q ) =Q =Q Q =Q Napojení Bezerových křvek 4 C Bezerův splne shodnost druhé dervace odpovídá shodným druhým dferencím ( P P ) = ( P P ) + ( Q Q ) PQ = P Q P P =Q Q P Q P Q 7

Zvýšen ení stupně Bezerovy křvky 5 ( α ) Q P P = α + α = =... n + n + Př: Kvadratcká Bezerova křvka je dána body P, P, P. Zadejte tutéž parabolu pomocí 4 řídících bodů. Q = P ; Q = P + P ; Q = P + P ; Q = P X( t ) = ( t) Q+ t ( t) Q+ t ( t) Q+ t Q X( t ) = P Pt + Pt + t P t P+ t P X( t ) = ( t + t ) P + ( t + t) P+ t P N B-SPLINE t t, t pro jnde + m = = ( ) k X ( u) PN u k k + k + = ( ) ( ) k N t = N t + N ( t) t t t t + t+ k t t+ k + t+ 6 Cox de Boorova formule 8

B-SPLINE BÁZOVB ZOVÉ FUNKCE 7 N k k + k + k N ( t) = N ( t) + N+ ( t) = t+ k t t+ k + t+ t t, t pro jnde + t t t t [,] [ ] t t N = t t, jnde [ ] [ ] t t, N = t t, jnde [ ] [ ] t t, N = 4 t t, 4 jnde BÁZOVÉ FUNKCE KUBICKÉHO B-SPLINEB 8 t t, t+ N = pro jnde N, N, N, N, 9

OTEVŘEN ENÁ B-SPLINE KŘIVKAK 9 P P C n ( u) = N, p ( u) P, u p u um p = u = u = U = {,,,,,,, 4} P u = u = u = u = u = 4 u = P N, N, N, N, B-SPLINE Křvka je zadaná: m+ řídícím body P Stupněm křvky k m = = ( ) k X ( t) PN t Uzlovým vektorem parametru {t, t,, t m+k+ } Na každém ntervalu uzlového vektoru je nejvýše k+ bázových funkcí nenulových

Lokalta změn N t t, t pro jnde k k + k + = ( ) ( ) k N t = N t + N+ ( t) + t t t t t t t t + k + k + + N k je nenulová na ntervalu [t,t +k+ ] Vlv stupně křvky Změna vrcholu P má vlv na křvku vykreslenou v ntervalu [t, t +k+ ] Čím nžšího stupně křvka je, tím těsněj přmyká k řídícímu polygonu k = 7 k=5 k=

Násobnost uzlu parametrů B-splne Nechť t je r násobný uzel vektoru parametrů {t, t,, t m+k+ } B- splne křvky stupně k. Pak v bodě X(t ) je křvka C k-r spojtá. m = 7, k = 4 u - u 4 u 5 u 6 - u 7 u 8 u 9 - u u u - u 6 u 7 u 8 - u.5.5.75.5.65.75.875 Ukotvená B-splne 4 B-splne křvka stupně k s uzlovým vektorem parametrů { t = t =... = t, t,..., t = t = t } k k + n k n k + n je Bezerovou křvkou stupně k. Počet ntervalů uzlového vektoru nenulové délky je roven počtu segmentů křvky Bernstenovy polynomy jsou specální B-splne bazí. Důkaz-m... k=, u=(,,,). C(t)=(-t)V +tv. Nechť věta platí pro k k + t t t+ k + t N ( t) = B, k ( t) + B +, k ( t) t t t t + k + k + + ( ) = ( ) + ( ) ( ) = ( ) N t tb t t B t B t k +, k +, k, k + NURBS

Podmínka konvexního obalu 5 Pro každou hodnotu u v ntervalu [u, u + ] křvka leží v konvexním obalu řídícího polygonu P, P +,, P -k. (Segment křvky leží v konvexním obalu k+ řídících bodů) [u 4,u 5 ] [u 9,u ] B-splne m=, k= u u u u u 4 u 5 u 6 u 7 u 8 u 9 u u u u u 4..5.7.5.6.75.87 Varaton Dmnshng property, Affne nvarance 6 Křvka protne přímku v nejvýše tolka bodech, v kolka protne její řídící polygon Afnní nvarance

Vložen ení nového uzlu 7 Je dána množna m+ řídících bodů P, P,..., P m, stupeň k, uzlový vektor parametrů T = { t, t,..., t m+k+ }. Chceme vložt nový uzel t, anž by se změnla křvka. Pro hodnotu t v ntervalu [t, t + ] křvka leží v konvexním obalu řídícího polygonu P, P +,, P -k, ostatní bázové funkce jsou nula. ( α ) Q = P + α P Vložen ení nového uzlu 8 Je dána množna m+ řídících bodů P, P,..., P m, položíme P m+ =o m m t t t t + = = t+ k t = t+ k + t+ k k + k + ( ) ( ) ( ) k ( ) C t = P N t = P N t + P N t = t t t t = P N t + P N t = m m+ k k = t+ k t = t+ k t t t t t Q = P + P + k t+ k t t+ k t ( α ) + k ( ) ( ) m+ t t t+ k t k = P + P N t = t+ k t t+ k t Q = P + α P ( ) 4

9 Stupeň n, m+ bodů P Násobné vložen ení uzlu Hodnotu t vložíme do uzlového vektoru h-krát. ( α ) Q = P + α P, h, h, h, h, h α, h = t t t t + k ( h ) for r = to h do for = k-p+r to k-s do begn a,r := (t - u ) / ( u +p-r+ - u ) P,r := ( - a,r ) P -,r- + a,r P,r- end s=násobnost t (pokud je uzlem původního vektoru) 5

De Boorův algortmus Je-l násobnost uzlu t rovna stupn křvky, pak bod C(t) je bodem křvky. (Zvolíme hodnotu uzlu t, vložíme j k-krk krát a dostáváme bod na křvce) k Algortmus. Vstup: stupeň křvky k, řídící body, uzlový vektor, hodnota parametru t. Nalézt nterval [t, t + ] v němž t leží. Pokud t=t, je nutné určt násobnost uzlu s. 4. Opakované vložení uzlu (k-s)- krát De Casteljau a Boorův algortmus B-splne křvka C(t) stupně k defnovaná k+řídícím body P,..., P k a uzlovým vektorem ve kterém je prvních a posledních k+ hodnot splývá je Bezerova křvka stupně k. Oba algortmy generují pro všechna t (,) body stejné křvky. C() = P, C() = P k. Nechť t = t =... = t k = a t k+ = t k+ =... = t k+ =, tedy t [t k, t k+ ). t +k - t k =, t = pro každé =,,,k t t α = = t; =,,..., k t t + k k Všechny strany řídícího polygonu jsou rozděleny ve stejném poměru α :-α, tedy první vložení uzlu de Boorova algortmu dává první terac de Casteljau's algortmu. 6

Raconáln lní Bezerovy křvky z= rovna D Bezer D raconální Bezer Změna Váhy V bodů 4 Pohyb řídícího bodu (vlevo) působí na tvar křvky odlšně než změna váhy (vpravo) 7

Kružnce jako kvadratcký NURBS 5 Oblouk - Bezerova kvadrka. Délka úseků na tečnách musí být shodná. Vektor uzlových bodů [,,,,,] w = w = w = Kružnce kvadratcký NURBS. Řídící vrcholy jsou tvořeny vrcholy opsaného čtverce a středy stran w 4 =. Vektor uzlových bodů,,,,,,,,,,, 4 4 4 4 w = 5 w = w 6 = w = w = w8 = w = 7 Cvčen ení - Oskulační kružnce elpsy 6 8

Cvčen ení - KUBICKÝ NURBS-RHINO RHINO 7 stupeň stupeň 9