Jana Dannhoferová Ústav informatiky, PEF MZLU

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

Základní vlastnosti křivek

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

Křivky a plochy technické praxe

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

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. Obrázky (popř. slajdy) převzaty od

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

NURBS REPREZENTACE KŘIVEK V MAPLE

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

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

Základní vlastnosti ploch

KMA/GPM Barycentrické souřadnice a

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

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

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í

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

Počítačová grafika RHINOCEROS

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

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

Plochy zadané okrajovými křivkami

Numerické řešení diferenciálních rovnic

Aproximace funkcí. Numerické metody 6. května FJFI ČVUT v Praze

Derivace funkce Otázky

Vyplňování souvislé oblasti

Elementární křivky a plochy

Derivace funkce DERIVACE A SPOJITOST DERIVACE A KONSTRUKCE FUNKCÍ. Aritmetické operace

Čebyševovy aproximace

Aproximace funkcí. x je systém m 1 jednoduchých, LN a dostatečně hladkých funkcí. x c m. g 1. g m. a 1. x a 2. x 2 a k. x k b 1. x b 2.

Ukázka možností interpolace dat v softwaru Matlab

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

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

Rekonstrukce ploch: Polygonální a analytická reprezentace Vybrané metody aproximace ploch

Polynomy a interpolace text neobsahuje přesné matematické definice, pouze jejich vysvětlení

13 Barvy a úpravy rastrového

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

Subdivision křivky a plochy

Interpolace Lagrangeovy polynomy. 29. října 2012


Interpolace pomocí splajnu

Občas se používá značení f x (x 0, y 0 ), resp. f y (x 0, y 0 ). Parciální derivace f. rovnoběžného s osou y a z:

Q(y) dy = P(x) dx + C.

SROVNÁNÍ KVALITATIVNÍCH VLASTNOSTÍ INTERPOLAČNÍCH NURBS KŘIVEK

PROSTORU MODELLING OF NURBS CURVES AND SURFACES IN THE PROJECTIVE SPACE

I. Diferenciální rovnice. 3. Rovnici y = x+y+1. převeďte vhodnou transformací na rovnici homogenní (vzniklou

Zobrazování těles. problematika geometrického modelování. základní typy modelů. datové reprezentace modelů základní metody geometrického modelování

Nelineární obvody. V nelineárních obvodech však platí Kirchhoffovy zákony.

Pseudospektrální metody

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

PARAMETRICKÉ MODELOVÁNÍ V ARCHITEKTUŘE

Transformace obrazu. Pavel Strachota. 16. listopadu FJFI ČVUT v Praze

SEMESTRÁLNÍ PRÁCE X. Aproximace křivek Numerické vyhlazování

úloh pro ODR jednokrokové metody

i=1 Přímka a úsečka. Body, které leží na přímce procházející body a a b můžeme zapsat pomocí parametrické rovnice

Datové formáty grafiky, jejich specifika a možnosti využití. L u b o š T o m e š e k U M T M a n a ž e r s k á i n f o r m a t i k a 2015/ 16

Modelování ternárních systémů slitin

III. Diferenciál funkce a tečná rovina 8. Diferenciál funkce. Přírůstek funkce. a = (x 0, y 0 ), h = (h 1, h 2 ).

UNIVERZITA PARDUBICE. 4.4 Aproximace křivek a vyhlazování křivek

Text úlohy. Která barva nepatří do základních barev prostoru RGB? Vyberte jednu z nabízených možností: a. Černá b. Červená c. Modrá d.

MATURITNÍ TÉMATA Z MATEMATIKY

ODR metody Runge-Kutta

9. přednáška z předmětu GIS1 Digitální model reliéfu a odvozené povrchy. Vyučující: Ing. Jan Pacina, Ph.D.

DERIVACE. ln 7. Urči, kdy funkce roste a klesá a dále kdy je konkávní a

Aproximace a interpolace

Gymnázium Jiřího Ortena, Kutná Hora

Systematizace a prohloubení učiva matematiky. Učebna s dataprojektorem, PC, grafický program, tabulkový procesor. Gymnázium Jiřího Ortena, Kutná Hora

Matematika I (KX001) Užití derivace v geometrii, ve fyzice 3. října f (x 0 ) (x x 0) Je-li f (x 0 ) = 0, tečna: x = 3, normála: y = 0

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

Matematická analýza III.

Jana Dannhoferová Ústav informatiky, PEF MZLU

Metoda konečných prvků Charakteristika metody (výuková prezentace pro 1. ročník navazujícího studijního oboru Geotechnika)

obecná rovnice kružnice a x 2 b y 2 c x d y e=0 1. Napište rovnici kružnice, která má střed v počátku soustavy souřadnic a prochází bodem A[-3;2].

Geometrické transformace pomocí matic

5. Interpolace a aproximace funkcí

Příklady otázek PB009/jaro 2015

Zobrazování 2D Nadpis křivek 2 Nadpis 3

Newtonova metoda. 23. října 2012

IX. Vyšetřování průběhu funkce

Použití splinů pro popis tvarové křivky kmene

Geometrické transformace

Název: Konstrukce vektoru rychlosti

GIS Geografické informační systémy

Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od jara 2014

Počítačová grafika 2 (POGR2)

Matematika II, úroveň A ukázkový test č. 1 (2018) 1. a) Napište postačující podmínku pro diferencovatelnost funkce n-proměnných v otevřené

1. Chyby vstupních dat metody převedení úlohy na numerickou (řád použité metody) zaokrouhlovací reprezentace čísel v počítači

Rhino - základní příkazy

Funkce dvou a více proměnných

Drsná matematika III 6. přednáška Obyčejné diferenciální rovnice vyšších řádů, Eulerovo přibližné řešení a poznámky o odhadech chyb

Křivky v digitálním prostoru

Matematika II, úroveň A ukázkový test č. 1 (2016) 1. a) Napište postačující podmínku pro diferencovatelnost funkce n-proměnných v otevřené

Metamorfóza obrázků Josef Pelikán CGG MFF UK Praha

Disperzní chyby B-spline varianty. Ing. Radek Kolman, Ph.D.

1. DIFERENCIÁLNÍ POČET FUNKCE DVOU PROMĚNNÝCH

Diferenciál funkce dvou proměnných. Má-li funkce f = f(x, y) spojité parciální derivace v bodě a, pak lineární formu (funkci)

Katedra geotechniky a podzemního stavitelství

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

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

Numerická matematika. Zadání 25. Řešení diferenciální rovnice Rungovou Kuttovou metodou

Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od jara 2017

Transkript:

Počítačová grafika Křivky Jana Dannhoferová (jana.dannhoferova@mendelu.cz) Ústav informatiky, PEF MZLU Základní vlastnosti křivek křivka soustava parametrů nějaké rovnice, která je posléze generativně zobrazována vyjádření může být trojího druhu: Explicitní může být zadána např. jako spojitá funkce ve tvaru: y = f(x) použití pouze pro křivky, které jsou funkcemi Implicitní má tvar: F(x,y) = 0 obtížně zobrazitelné v porovnání s ostatními Parametrické chápeme ji fyzikálně jako dráhu pohybujícího se bodu, jehož souřadnice jsou funkcemi parametru t 2 Parametricky zadaná křivka Parametricky zadaná křivka parametrické vyjádření křivky: x = x(t) y = y(t) z = z(t) parametr t je z intervalu <t min, t max > (nejčastěji je volen z rozsahu <0,1>) vektorový zápis: q(t) = [x(t),y(t),z(t)], kde q(t) je tzv. polohový vektor (pro t = 0 a t = 1 jsou vyjádřeny krajní body) výhoda: závislost souřadnic křivky pouze na jediném parametru možnost vyjádřit průběh (postupný výpočet) 3 4 Tečný vektor Segmenty parametrická reprezentace umožňuje snadno vytvářet tečny ke křivce (využití při navazování křivek, skládání složitých tvarů z jednoduchých) tečna přímka, která se dotýká křivky v bodě Q(t) tečný vektor v bodě Q(t) je určen derivacemi parametricky vyjádřené křivky po složkách nechť Q 1 (t) a Q 2 (t) jsou dvě části (segmenty) jediné křivky Q(t) spojené v bodě Q 1 (1)=Q 2 (0) uzel = bod, ve kterém se křivky stýkají důležitou vlastností segmentů je způsob jejich napojení (tzv. spojitost v uzlu) = hladkost navázání křivek 5 6 1

Parametrická spojitost Parametrická spojitost C n parametrická spojitost stupně n křivka je třídy C n, má-li ve všech bodech spojité derivace až do řádu n spojení třídy C 0 (dva segmenty jsou spojitě navázány, pokud koncový bod prvního segmentu je počátečním bodem druhého segmentu) spojení třídy C 1 (tečný vektor v koncovém bodě segmentu Q 1 je roven tečnému vektoru segmentu Q 2 v jeho počátečním bodě) spojení třídy C 2 (analogicky je požadována rovnost první a druhé derivace) čím vyšší spojitost je požadována, tím delší dobu se oba segmenty přimykají ke stejnému směru 7 C 0 bod se pohybuje po spojité dráze, ale v uzlu může měnit skokem směr pohybu, rychlost i zrychlení C 1 směr pohybu a velikost rychlosti se nemůže měnit skokem C 2 zrychlení zůstává nezměněné 8 cíl: složitý tvar vytvořit pomocí jednoduše tvarovatelných částí (využití segmentů) křivkové segmenty definujeme tak, aby splňovaly některé z podmínek: průchod krajními body tečné vektory spojitost mezi navazujícími segmenty běžné geometrické podmínky pro křivky: 2 body + 2 tečné vektory (Hermite/Fergusson) 2 koncové body + 2 řídicí body (Bezier) 4 řídicí body (splajny) 9 základním druhem parametrických křivek používaných v PG jsou tzv. polynomiální křivky (rychlý výpočet) p n (t) = a 0 +a 1 t+ +a n t n z nich se skládají křivky po částech polynomiální (křivky, jejichž segmenty jsou polynomiálními křivkami) nejčastěji používané jsou křivky třetího stupně kubiky křivky vyššího stupně mohou způsobovat nežádoucí vlnění a oscilace a jsou náročnější na výpočet modelování křivek je definováno několik řídicích bodů (matematický aparát z jejich polohy určí průběh křivky) existují dva základní druhy interpretace řídicích bodů: interpolace aproximace 10 Hermit/Fergussonova kubika aproximační křivka interpolační křivka je určena 2 řídicími body a 2 tečnými vektory P 0,P 1 počáteční a koncový bod křivky, počáteční a koncový tečný vektor (v bodech P 0 a P 1 ) body P 0 a P 1 určují polohu křivky směr a velikost tečných vektorů určuje míru jejího vyklenutí dále budeme označovat: Q(t) křivka, P i řídicí body křivky 11 14 2

Aproximační křivky Beziérovy křivky aproximací bodů rozumíme vytvoření takové křivky, která je těmito body vhodně řízena není kladen požadavek na procházení opěrnými body (ani prvním a posledním bodem) smyslem není interpretace bodů, ale generování křivky křivka může být řízena body (tzv. řídicí polygon) nebo body a vektory metoda, která křivku vytváří, zaručuje její vlastnosti (např. hladkost, spojitost) aproximuje se po částech a pomocí kubik (pružné, dá se jimi vyjádřit vše, co je v PG třeba) nejpopulárnější aproximační křivky obecné Beziérovy křivky n-tého stupně Beziérovy kubiky Beziérova kubika je zadaná 4 body: P 0, P 1, P 2, P 3 (vychází z prvního řídicího bodu a končí v posledním) Beziérovy křivky n-tého stupně jsou určeny n+1 body řídícího polygonu a vztahem: Q(t) = ΣP i B in (t), i=0,,n kde B in ju tzv. Bernsteinovy polynomy n-tého stupně 16 17 Beziérovy kubiky Beziérovy kubiky nevýhoda: při změně polohy jediného řídicího bodu P i dojde ke změně tvaru celé křivky důvod, proč se dělí na segmenty nižšího stupně, které se postupně navazují 20 při navazování segmentů se sledují třídy spojitosti 21 Algoritmus decasteljau Algoritmus decasteljau jedna z metod, jak vypočítat Beziérovu křivku stupně n Beziérova křivka může být rozdělena v libovolném místě vstup: body řídicího polygonu výstup: hodnota křivky v bodě Q(t) (vypočítá se pomocí rekurentního vztahu) výpočet bodu Q(2/3) a schéma výpočtu aplikace: rozdělení Beziérovy křivky na dvě části v libovolném místě (nejjednodušší je dělení ve středu křivky) Q(t) je bod, ve kterém dojde k rozdělení 22 23 3

Spline křivky Uniformní kubický B-spline spline křivka stupně n je dáno n + 1 opěrných bodů (P 0,, P n ) je po částech polynomiální křivka, která je třídy C n (název odvozen od pružného pravítka/křivítka) přirozený spline interpoluje své řídicí body přirozený kubický spline interpolační křivka skládající se z polynomiálních křivek stupně tři teorie spline křivek je velice obsáhlá a patří spíše do matematiky než do počítačové grafiky v PG se nejčastěji používají B-spline kubiky (nejsou přirozené, jsou aproximační) 24 Uniformní stejná vzdálenost uzlů (segment Q i je určen body P i-3, P i-2, P i-1 a P i, následující segment Q i+1 je definován body P i-2, P i-1, P i a P i+1 ) je určen n 4 body a skládá se z n 3 segmentů spojistost: segment Q i+1 vychází z posledního bodu segmentu Q i jsou identické první a druhé derivace v daném bodě (C 2 ) 25 Uniformní kubický B-spline NURBS lokalita změny = pokud změníme polohu některého z řídicích bodů, změní se tvar pouze té části křivky, která je tímto bodem určena pokud posuneme bod P i kubiky Q(t), změní se tvar čtyř segmentů Q i, Q i+1, Q i+2, Q i+3 změnila se také poloha uzlů t, t a t 5 6 7 26 zobecnění B-spline křivek (jde o aproximační křivky) neuniformní racionální B-spline neuniformní (vzdálenost uzlů nemusí být u těchto křivek konstantní), racionální (body jsou reprezentovány jejich homogenními souřadnicemi) NURBS křivka je určena: n + 1 body řídicího polygonu (P 0,, P n, kde n 3) křivka prochází prvním a posledním bodem řídícího polygonu leží v konvexní obálce svého řídícího polygonu uzlovým vektorem U délky m + 1 (prochází prvním a posledním bodem řídicího polygonu) stupněm křivky p NURBS umožňují velice přesné vyjádření kuželoseček 27 NURBS řádu k NURBS řádu k Σw i P i N i,p (t) Q(t) = Σw i N i,p (t), kde i = 0,1,,n w i váha i-tého bodu řídícího polygonu N i,p (t) normalizované B-spline bázové funkce 28 29 4

NURBS Literatura pokud posuneme některý z řídicích bodů, změní se tvar pouze v té části, která je tímto bodem generována změnou polohy či váhy dochází ke změně lokální křivky, nikoliv však křivky celé tvar křivky lze také měnit odebráním či přidáním bodů ke křivce NURBS umožňují přesné vyjádření kuželoseček Beneš, B., Felkel, P., Sochor, J., Žára, J. Moderní počítačová grafika. Computer Press: Brno, 2004. Beneš, B., Sochor, J., Žára, J. Algoritmy počítačové grafiky. ČVUT: Praha, 1996. Sochor, J.: Základy počítačové grafiky. FI MU: Brno, 2001. 30 31 5