Luento 6: Geometrinen mallinnus

Samankaltaiset tiedostot
Luento 6: Geometrinen mallinnus

4. Esittäminen ja visualisointi (renderöinti)

Visualisoinnin perusteet

T Tietokoneanimaatio ja mallintaminen. Lauri Savioja Teknillinen korkeakoulu Tietoliikenneohjelmistojen ja multimedian laboratorio 02/02

MS-A0202 Differentiaali- ja integraalilaskenta 2 (SCI) Luento 1: Parametrisoidut käyrät ja kaarenpituus

Luento 2: Viivan toteutus

Luento 2: Tulostusprimitiivit

Numeeriset menetelmät TIEA381. Luento 7. Kirsi Valjus. Jyväskylän yliopisto. Luento 7 () Numeeriset menetelmät / 43

Luento 3: 3D katselu. Sisältö

MS-A0205/MS-A0206 Differentiaali- ja integraalilaskenta 2 Luento 1: Parametrisoidut käyrät ja kaarenpituus

Luento 3: Tulostusprimitiivien toteutus

Luento 6: Piilopinnat ja Näkyvyys

Luento 6: Tulostusprimitiivien toteutus

13. Taylorin polynomi; funktioiden approksimoinnista. Muodosta viidennen asteen Taylorin polynomi kehityskeskuksena origo funktiolle

T Vuorovaikutteinen tietokonegrafiikka Tentti

Taso 1/5 Sisältö ESITIEDOT: vektori, koordinaatistot, piste, suora

Tietokonegrafiikan kertausta eli mitä jokaisen animaattorin tulisi tietää tekniikasta

Objektien deformaatiot

MS-A0305 Differentiaali- ja integraalilaskenta 3 Luento 4: Taso- ja avaruuskäyrät

Numeeriset menetelmät TIEA381. Luento 6. Kirsi Valjus. Jyväskylän yliopisto. Luento 6 () Numeeriset menetelmät / 33

7 tapaa mallintaa maasto korkeuskäyristä ja metodien yhdistäminen

2.2. Kohteiden konstruktiivinen avaruusgeometrinen esitys

Lauseen erikoistapaus on ollut kevään 2001 ylioppilaskirjoitusten pitkän matematiikan kokeessa seuraavassa muodossa:

MS-A0202 Differentiaali- ja integraalilaskenta 2 (SCI) Luento 4: Ketjusäännöt ja lineaarinen approksimointi

Tampereen yliopisto Tietokonegrafiikka 2013 Tietojenkäsittelytiede Harjoitus

Solmu 3/2001 Solmu 3/2001. Kevään 2001 ylioppilaskirjoitusten pitkän matematiikan kokeessa oli seuraava tehtävä:

Pintoja kuvaavien verkkojen muodostaminen ja optimointi. Antti Seppälä

Tik Tietokoneanimaatio

Sovituskomennot GeoGebrassa

TIES471 Reaaliaikainen renderöinti

Pintamallintaminen ja maastomallinnus

Harjoitus Bones ja Skin

2016/07/05 08:58 1/12 Shortcut Menut

kaikki ( r, θ )-avaruuden pisteet (0, θ ) - oli θ

POLYNOMISET JA RATIONAALISET PARAMETRISET KÄYRÄT MUODONOPTIMOINNISSA. Juha Mäkipelto Rakenteiden mekaniikka, Vol. 37 No. 2, 2004, ss.

Numeeriset menetelmät

Tekijä Pitkä matematiikka Pisteen (x, y) etäisyys pisteestä (0, 2) on ( x 0) Pisteen (x, y) etäisyys x-akselista, eli suorasta y = 0 on y.

MS-A0305 Differentiaali- ja integraalilaskenta 3 Luento 3: Vektorikentät

4 (x 1)(y 3) (y 3) (x 1)(y 3)3 5 3

Insinöörimatematiikka D, laskuharjoituksien esimerkkiratkaisut

Numeeriset menetelmät TIEA381. Luento 11. Kirsi Valjus. Jyväskylän yliopisto. Luento 11 () Numeeriset menetelmät / 37

2 Pistejoukko koordinaatistossa

BM20A0300, Matematiikka KoTiB1

Tilanhallintatekniikat

RATKAISUT a + b 2c = a + b 2 ab = ( a ) 2 2 ab + ( b ) 2 = ( a b ) 2 > 0, koska a b oletuksen perusteella. Väite on todistettu.

6.5. Renderöintijärjestys

Selvästi. F (a) F (y) < r x d aina, kun a y < δ. Kolmioepäyhtälön nojalla x F (y) x F (a) + F (a) F (y) < d + r x d = r x

8.7. Kolmiulotteiset tekstuuritekniikat. Kolmiulotteinen kohina eli häiriö. Turbulenssin simulointi. turbulence

MS-A0305 Differentiaali- ja integraalilaskenta 3 Luento 5: Kaarenpituus ja skalaarikentän viivaintegraali

1.2 Kulma. Kulmien luokittelua. Paralleeliaksiooma

MS-A0205/MS-A0206 Differentiaali- ja integraalilaskenta 2 Luento 3: Osittaisderivaatta

Suora 1/5 Sisältö ESITIEDOT: vektori, koordinaatistot, piste

Vanhoja koetehtäviä. Analyyttinen geometria 2016

11. Geometria Valikot ja näppäintoiminnot. Geometriasovelluksessa voit tehdä puhdasta tai analyyttista geometriaa.

T Tietotekniikan peruskurssi: Tietokonegrafiikka. Tassu Takala TKK, Tietoliikenneohjelmistojen ja multimedian laboratorio

Vektoreita GeoGebrassa.

Luento 3: 2D Katselu. Sisältö

Mat Dynaaminen optimointi, mallivastaukset, kierros Johdetaan välttämättömät ehdot funktionaalin. g(y(t), ẏ(t),...

Gaussin ja Jordanin eliminointimenetelmä

Geogebra -koulutus. Ohjelmistojen pedagoginen hyödyntäminen

3D-mallinnus ja teksturointi tietokonepeleissä

, on säännöllinen 2-ulotteinen pinta. Määrää T x0 pisteessä x 0 = (0, 1, 1).

y=-3x+2 y=2x-3 y=3x+2 x = = 6

Kompleksiluvut Kompleksitaso

1 Kompleksitason geometriaa ja topologiaa

MS-A010{3,4} (ELEC*) Differentiaali- ja integraalilaskenta 1 Luento 5: Taylor-polynomi ja sarja

BM20A1501 Numeeriset menetelmät 1 - AIMO

Numeeriset menetelmät TIEA381. Luento 8. Kirsi Valjus. Jyväskylän yliopisto. Luento 8 () Numeeriset menetelmät / 35

2.6 Funktioiden kuvaajat ja tasa-arvojoukot

Vektoriarvoiset funktiot Vektoriarvoisen funktion jatkuvuus ja derivoituvuus

Polkuintegraali yleistyy helposti paloitain C 1 -poluille. Määritelmä Olkoot γ : [a, b] R m paloittain C 1 -polku välin [a, b] jaon

4. Käyrän lokaaleja ominaisuuksia

12. Hessen matriisi. Ääriarvoteoriaa

Laskuharjoitus 2A ( ) Aihepiiri: Raja-arvot etc. Adams & Essex, 8th Edition, Chapter 12. z = f(x, 0) = x2 a z = f(0, y) = 02 a 2 + y2

Yhtälöryhmä matriisimuodossa. MS-A0007 Matriisilaskenta. Tarkastellaan esimerkkinä lineaarista yhtälöparia. 2x1 x 2 = 1 x 1 + x 2 = 5.

Matematiikka B1 - avoin yliopisto

läheisyydessä. Piirrä funktio f ja nämä approksimaatiot samaan kuvaan. Näyttääkö järkeenkäyvältä?

Luento 7: 3D katselu. Sisältö

Tekijä Pitkä matematiikka a) Ratkaistaan nimittäjien nollakohdat. ja x = 0. x 1= Funktion f määrittelyehto on x 1 ja x 0.

Grafiikka 205. Tässä luvussa käsitellään geometriaa ja graafisia kohteita. Mukana on pääosin alkeisoperaatioita.

min x x2 2 x 1 + x 2 1 = 0 (1) 2x1 1, h = f = 4x 2 2x1 + v = 0 4x 2 + v = 0 min x x3 2 x1 = ± v/3 = ±a x 2 = ± v/3 = ±a, a > 0 0 6x 2

Cantorin joukon suoristuvuus tasossa

2 Raja-arvo ja jatkuvuus

BM20A5840 Usean muuttujan funktiot ja sarjat Harjoitus 7, Kevät 2018

Sarake 1 Sarake 2 Sarake 3 Sarake 4. Vahvistumisen jälkeen tavaran hinta on 70. Uusi tilavuus on

Numeeriset menetelmät TIEA381. Luento 12. Kirsi Valjus. Jyväskylän yliopisto. Luento 12 () Numeeriset menetelmät / 33

f x da, kun A on tason origokeskinen yksikköympyrä, jonka kehällä funktion f arvot saadaan lausekkeesta f (x, y) = 2x 3y 2.

Yleistä vektoreista GeoGebralla

Kahden suoran leikkauspiste ja välinen kulma (suoraparvia)

Maksimit ja minimit 1/5 Sisältö ESITIEDOT: reaalifunktiot, derivaatta

Johdatus tekoälyn taustalla olevaan matematiikkaan

Tik Tietokoneanimaatio

3.1 Väliarvolause. Funktion kasvaminen ja väheneminen

Matematiikan tukikurssi

a) on lokaali käänteisfunktio, b) ei ole. Piirrä näiden pisteiden ympäristöön asetetun neliöruudukon kuva. VASTAUS:

Oletetaan ensin, että tangenttitaso on olemassa. Nyt pinnalla S on koordinaattiesitys ψ, jolle pätee että kaikilla x V U

Yhtälöryhmä matriisimuodossa. MS-A0004/A0006 Matriisilaskenta. Tarkastellaan esimerkkinä lineaarista yhtälöparia. 2x1 x 2 = 1 x 1 + x 2 = 5.

BM20A5800 Funktiot, lineaarialgebra ja vektorit Harjoitus 4, Syksy 2016

Numeerinen integrointi

Transkriptio:

Tietokonegrafiikan perusteet T-111.4300 3 op Luento 6: Geometrinen mallinnus Lauri Savioja, Janne Kontkanen 11/2007 Geometrinen mallinnus / 1 Sisältö Mitä on geometrinen mallinnus tietokonegrafiikassa Ulottuvuuksia < 3 Piste, viiva, jana ja polygoni Parametriset käyrät Implisiittiset käyrät Kolmiulotteinen mallinnus Polygoniverkko Parametriset pinnat Alijakopinnat Pistemallit Muita: CSG, Hilaesitys, Octree-esitys, Proseduraalinen geometria Lyhyesti: Transformaatiohierarkiat Hienorakenteen esittämisestä Geometrinen mallinnus / 2 1

Piste Tasossa piste esitetään kahdella koordinaatilla [x,y] tai homogeenisissa koordinaateissa [xh, yh, h] [x,y] Geometrinen mallinnus / 3 Viiva Viiva voidaan esittää viivayhtälöllä y = kx + c c Geometrinen mallinnus / 4 2

Viiva Tai määritellä kahden pisteen avulla [x0,y0]-[x1,y1] [x1,y1] [x0,y0] Geometrinen mallinnus / 5 Viiva Tai pisteen [x,y] ja suunnan [dx,dy] avulla [dx,dy] [x,y] Geometrinen mallinnus / 6 3

Jana Jana on suoran osa alkupisteestä [x0,y0] loppupisteeseen [x1,y1] [x1,y1] [x0,y0] Geometrinen mallinnus / 7 Monikulmio eli Polygoni Monikulmio eli polygoni määritellään luettelona reunapisteitä p 0, p 1 p n Pisteet määrittelevät polygonin reunaviivan p 4 p 3 p 2 p 0 p 1 Geometrinen mallinnus / 8 4

Erilaisia Polygoneja Ei-konveksi (kovera) polygoni Konveksi (kupera) polygoni Polygoni joka ei ole yksinkertainen (simple) Täytetty polygoni Geometrinen mallinnus / 9 Parametriset käyrät Parametrisella käyrälla tarkoitetaan esitystä joka on muotoa: p (t) = [ x (t), y (t) ] ; t : [0 1] x() ja y() voivat olla mitä tahansa funktiota Matala-asteiset (2-3 ) polynomit ovat kuitenkin käyttökelpoisimpia Korkeampiasteiset funktiot käyttäytyvät epäennustettavasti Geometrinen mallinnus / 10 5

Paloittaiset parametriset käyrät eli splinit Useita parametrisia käyriä voidaan liittää yhteen ketjuksi Jotta yhdistelmä näyttäisi sileältä täytyy leikkauskohdissa vaatia vähintään C 1 jatkuvuus (ensimmäisen derivaatan jatkuvuus) Geometrinen mallinnus / 11 Paloittaiset parametriset käyrät eli splinit Käyrien määrittelemisestä ja muokkaamisesta Polynomikerrointen määritteleminen manuaalisesti hankalaa (kuinka säilyttää jatkuvuus ja saada haluttu muoto) Kertoimet voidaan määrittää automaattisesti, perustuen käyttäjän asettamiin kontrollipisteisiin ja jatkuvuusehtoihin Sovitus voi olla interpoloiva tai approksimoiva Tarkka menetelmä riippuu käytettävästä splinityypistä Splinityyppejä Natural Cubic Spline Hermite Spline Cardinal Spline Bezier B-Spline NURBS Geometrinen mallinnus / 12 6

Implisiittiset käyrät Käyrä voidaan määritellä myös implisiittisessä muodossa olevalla yhtälöllä, esimerkkinä ympyrä: [x,y] 2 2 x + y = r 2 Muita tavallisia muotoja: parabeli, ellipsi, jne. Implisiittisessä muodossa ei ole helppo esittää millaisia käyriä tahansa, vaan sopiva yhtälö on pystyttävä muodostamaan Geometrinen mallinnus / 13 Kolmiulotteinen Mallinnus Geometrinen mallinnus / 14 7

Monikulmioverkko (mesh) Erittäin tavallinen tapa pinnan esittämiseksi kolmessa ulottuvuudessa Renderöinti tehokasta Muokkaaminen hieman kömpelöä Paloittain lineaarinen esitys: saavutetaan ainoastaan C 0 jatkuvuus Geometrinen mallinnus / 15 Monikulmioverkko (mesh) Monikulmioverkko voidaan tallettaa monella tapaa muistiin Tapa 1: Pistelista: p 0,p 1 p n, jossa p i = [ x i, y i, z i ] Monikulmiolista: m 0,m 1,m 2 m k, jossa kukin m i sisältää yhtä monta indeksiä pistelistaan kuin monikulmiossa on kulmia Tapa 2: Pistelista: p 0,p 1 p n, jossa p i = [ x i, y i, z i ] Särmälista: e 0,e 1 e q, jossa kukin e i sisältää kaksi indeksiä pistelistaan Monikulmiolista: m 0,m 1,m 2 m k, jossa kukin m i sisältää yhtä monta indeksiä särmälistaan kuin monikulmiossa on särmiä Usein monikulmioverkkoon talletetaan muutakin tietoa Esim. kulmapisteiden normaalivektorit (erityisesti jos verkolla approksimoidaan kaarevaa pintaa) Geometrinen mallinnus / 16 8

Parametriset Pinnat Parametrinen käyrä kolmessa ulottuuvudessa p (u) = [ x (u), y (u), z(u) ] ; u : [0 1] Parametrinen pinta puolestaan p(u,v) = [ x(u,v), y(u,v), z(u,v) ] ; u,v : [0 1] Pintatilkku, joka saadaan yhdistämällä kaksi kolmannen asteen parametrista käyrää on hyvin suosittu mallinnusprimitiivi (bi-cubic patch) Mallien rakentaminen tilkuista ja tilkkujen yhteenliittäminen ei ole täysin ongelmatonta Lähde: http://fuzzyphoton.tripod.com/rtref/rtref_b.htm Geometrinen mallinnus / 17 Alijakopinnat (subdivision surfaces) Pintaa voidaan muokata useilla eri tarkkuustasoilla Voidaan määritellä minkä vain monikulmioverkon avulla Lopputulos on sileä (ainakin C 1 jatkuva) Esitystapa kasvattaa suosiotaan jatkuvasti Lähde: http://grail.cs.washington.edu/projects/subdivision/ Geometrinen mallinnus / 18 9

Pistemallit Malli voidaan ilmaista pelkkinä pisteinä ja niihin assosioituina pintanormaaleina Mallin pinta voidaan rekonstruoida käyttäen nk. surface splatting tekniikkaa, joka virittää kuhunkin pisteeseen naapuripisteistä riippuvaisen rekonstruktiokernelin Kehitteillä oleva tekniikka, jota pidetään polygoniverkkoesityksen kilpailijana Lähde: Surface Splatting: Theory, Extensions and Implementation (Jussi Räsänen 2002) Geometrinen mallinnus / 19 Muita Esitystapoja CSG = Constructive Solid Geometry Määritellään uusia kappaleita tekemällä joukko-opillisia operaatioita primitiivikappaleiden välillä Kolmiulotteinen hilaesitys Mikä vain äärellisen osa-avaruuden määrittelevä malli voidaan esittää myös diskretoidussa hilassa, joka on kaksiulotteisen rasterikuvan kolmiulotteinen vastine + - = Octree-esitys Hilaesitys voidaan rakentaa hierarkisesti, jolloin kokonaan tyhjät tai samaa ainetta olevat solut voidaan ilmaista karkealla tasolla (ohessa 2D havaintokuva eli itse asiassa quadtree) 1 2 3 4 1 2 3 4 NIL NIL 1 2 3 4 NIL NIL 1 2 NIL 3 4 NIL NIL 1 2 3 4 NIL NIL NIL Geometrinen mallinnus / 20 10

Muita Esitystapoja: Proseduraalinen Geometria Fraktaalit Sopivat hyvin luonnollisten rakennelmien mallintamiseen (esim. vuoristot) Hyvin yksinkertaisilla säännöillä voidaan saada vaikuttavan näköisiä tuloksia L-systeemit Kielioppi joka sopii esimerkiksi kasvien kasvusäännöstön määrittelyyn (oheinen puu tuotettu yksinkertaisella L-systeemillä) Geometrinen mallinnus / 21 Lyhyesti: Transformaatiohierarkia AKA scene graph Tarpellinen silloin kun malli koostuu useammasta osasta jotka voidaan luontevasti järjestää hierarkiaan Esim. Auto koostuu korista ja renkaista, tällöin voi olla luontevaa järjestää mallit seuraavasti: Auto Kori Rengas 1 Rengas 2 Rengas 3 Rengas 4 Jos Auto-objektiin tehdään jokin koordinaattimuunnos, tämä heijastuu myös hierarkiassa alapuolella oleviin objekteihin Lisäksi samaa geometrista mallia käyttävät objektit voivat sisältää viittauksen yhteen ainoaan instanssin varsinaisesta geometriasta Geometrinen mallinnus / 22 11

Hienorakenteen esittämisestä Usein ei ole mielekästä esittää kaikkein hienojakoisimpia yksityiskohtia edellä kuvatuilla tavoilla Hienorakenteen esittämiseen voidaan käyttää geometrian pinnalle liitettävää tekstuuria Tekstuurin ei välttämättä tarvitse sisältää ainoastaan pinnan värejä, vaan voidaan tallettaa myös Normaalivektoreita (normal mapping) Geometrian poikkeutukseen tarkoitettuja arvoja (displacement mapping) LoD - Level of Detail Geometrinen mallinnus / 23 12