Luento 6: Geometrinen mallinnus

Samankaltaiset tiedostot
Luento 6: Geometrinen mallinnus

Luento 2: Tulostusprimitiivit

Luento 6: Tulostusprimitiivien toteutus

2.2. Kohteiden konstruktiivinen avaruusgeometrinen esitys

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

T Vuorovaikutteinen tietokonegrafiikka Tentti

2 Pistejoukko koordinaatistossa

Lieriö ja särmiö Tarkastellaan pintaa, joka syntyy, kun tasoa T leikkaava suora s liikkuu suuntansa

PRELIMINÄÄRIKOE PITKÄ MATEMATIIKKA

Luento 3: 2D Katselu. Sisältö

Luento 2: 2D Katselu. Sisältö

Osoita, että kaikki paraabelit ovat yhdenmuotoisia etsimällä skaalauskuvaus, joka vie paraabelin y = ax 2 paraabelille y = bx 2. VASTAUS: , b = 2 2

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.

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

Avaruuden kolme sellaista pistettä, jotka eivät sijaitse samalla suoralla, määräävät

Objektien deformaatiot

Luento 3: 3D katselu. Sisältö

HARJOITUSTEHTÄVIÄ. Millä vektorin c arvoilla voidaan vektoreita a + b, a + c ja b +2 c siirtelemällä muodostaa kolmio?

Anna jokaisen kohdan vastaus kolmen merkitsevän numeron tarkkuudella muodossa

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

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

Tampereen yliopisto Tietokonegrafiikka 2013 Tietojenkäsittelytiede Harjoitus

Perusteet 5, pintamallinnus

Tekijä Pitkä matematiikka

Kartio ja pyramidi

I Geometrian rakentaminen pisteestä lähtien

massa vesi sokeri muu aine tuore luumu b 0,73 b 0,08 b = 0,28 a y kuivattu luumu a x 0,28 a y 0,08 = 0,28 0,08 = 3,5

Todista suoraan integraalin määritelmään perustuen tasointegraalin ominaisuus. λ f = λ f,

Oppimateriaali oppilaalle ja opettajalle : GeoGebra oppilaan työkaluna ylioppilaskirjoituksissa 2016 versio 0.8

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

Kenguru 2013 Student sivu 1 / 7 (lukion 2. ja 3. vuosi)

Monikulmiot 1/5 Sisältö ESITIEDOT: kolmio

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.

Perusteet 3, tilavuus ja pintamallinnus

BM20A5800 Funktiot, lineaarialgebra ja vektorit Harjoitus 4, Syksy 2016

Ratkaisut vuosien tehtäviin

Derivaatta: funktion approksimaatio lineaarikuvauksella.

Geogebra -koulutus. Ohjelmistojen pedagoginen hyödyntäminen

Differentiaali- ja integraalilaskenta 2 Ratkaisut: loppuviikko 2

Sisältö. Luento 6: Piilopinnat. Peruskäsitteet (jatkuu) Peruskäsitteitä. Yksinkertaisia tapauksia. Yksinkertaiset tapaukset jatkuu

Tampereen yliopisto Tietokonegrafiikka 2013 Tietojenkäsittelytiede Harjoitus

MAA15 Vektorilaskennan jatkokurssi, tehtävämoniste

MATEMATIIKAN KOE PITKÄ OPPIMÄÄRÄ

Tässä osassa ei käytetä laskinta. Selitä päätelmäsi lyhyesti tai perustele ratkaisusi laskulausekkeella, kuviolla tms.

Suorat ja tasot, L6. Suuntajana. Suora xy-tasossa. Suora xyzkoordinaatistossa. Taso xyzkoordinaatistossa. Tason koordinaattimuotoinen yhtälö.

MS-A0202 Differentiaali- ja integraalilaskenta 2 (SCI) Luento 2: Usean muuttujan funktiot

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

9. Lineaaristen differentiaaliyhtälöiden ratkaisuavaruuksista

Vanhoja koetehtäviä. Analyyttinen geometria 2016

KESKEISET SISÄLLÖT Keskeiset sisällöt voivat vaihdella eri vuositasoilla opetusjärjestelyjen mukaan.

Luento 3: Tulostusprimitiivien toteutus

Suorien ja tasojen geometriaa Suorien ja tasojen yhtälöt

Luento 7: 3D katselu. Sisältö

3 Suorat ja tasot. 3.1 Suora. Tässä luvussa käsitellään avaruuksien R 2 ja R 3 suoria ja tasoja vektoreiden näkökulmasta.

Diplomi-insinööri- ja arkkitehtikoulutuksen yhteisvalinta 2017 Insinöörivalinnan matematiikan koe , Ratkaisut (Sarja A)

! 7! = N! x 8. x x 4 x + 1 = 6.

Luento 7: Lokaalit valaistusmallit

Yhtälön oikealla puolella on säteen neliö, joten r. = 5 eli r = ± 5. Koska säde on positiivinen, niin r = 5.

MS-A0003/A0005 Matriisilaskenta Malliratkaisut 5 / vko 48

Matriisilaskenta Laskuharjoitus 5 - Ratkaisut / vko 41

MS-A0207 Differentiaali- ja integraalilaskenta 2 (CHEM) Luento 2: Usean muuttujan funktiot

1. a. Ratkaise yhtälö 8 x 5 4 x + 2 x+2 = 0 b. Määrää joku toisen asteen epäyhtälö, jonka ratkaisu on 2 x 1.

POHDIN - projekti. Funktio. Vektoriarvoinen funktio

Ensimmäinen osa: Rautalankamallinnus. Rautalankamallinnus

Preliminäärikoe Tehtävät Pitkä matematiikka / 3

Vapaus. Määritelmä. jos c 1 v 1 + c 2 v c k v k = 0 joillakin c 1,..., c k R, niin c 1 = 0, c 2 = 0,..., c k = 0.

Ota tämä paperi mukaan, merkkaa siihen omat vastauksesi ja tarkista oikeat vastaukset klo 11:30 jälkeen osoitteesta

Teoriatausta. Mallinnuksen vaiheet. CAD työkalut harjoituksessa. Uppokipinätyöstön elektrodi

Tekijä Pitkä matematiikka Suoran pisteitä ovat esimerkiksi ( 5, 2), ( 2,1), (1, 0), (4, 1) ja ( 11, 4).

Vektorien pistetulo on aina reaaliluku. Esimerkiksi vektorien v = (3, 2, 0) ja w = (1, 2, 3) pistetulo on

1 Kompleksitason geometriaa ja topologiaa

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

z 1+i (a) f (z) = 3z 4 5z 3 + 2z (b) f (z) = z 4z + 1 f (z) = 12z 3 15z 2 + 2

Kokelaan sukunimi ja kaikki etunimet selväsi kirjoitetuna. Kaava 1 b =2a 2 b =0,5a 3 b =1,5a 4 b = 1a. 4 5 b =4a 6 b = 5a

Epäeuklidista geometriaa

Vektorit, suorat ja tasot

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

Painevalut 1. Teoriatausta Knit. Mallinnuksen vaiheet. CAD työkalut harjoituksessa diecasting_1.sldprt. CAE DS Kappaleensuunnitteluharjoitukset

Perusteet 6, lisää pintamallinnusta

Luento 2: Viivan toteutus

A-osa. Ratkaise kaikki tämän osan tehtävät. Tehtävät arvostellaan pistein 0-6. Taulukkokirjaa saa käyttää apuna, laskinta ei.

Tietokonegrafiikka. Jyry Suvilehto T Johdatus tietoliikenteeseen ja multimediatekniikkaan kevät 2014

Muotin rakenne Ruisku tai painevalukappaleen rakenteen perusasiat: hellitys eli päästö, kulmapyöristys, jakopinta ja vastapäästö.

Pintamallintaminen ja maastomallinnus

Peruskoulun matematiikkakilpailu Loppukilpailu 2010 Ratkaisuja OSA 1

Insinöörimatematiikka D

Lisätehtäviä. Rationaalifunktio. x 2. a b ab. 6u x x x. kx x

Kenguru 2016 Student lukiosarja

1. a) b) Nollakohdat: 20 = c) a b a b = + ( a b)( a + b) Derivaatan kuvaajan numero. 1 f x x x g x x x x. 3. a)

Käyrien välinen dualiteetti (projektiivisessa) tasossa

GEOMETRIA MAA3 Geometrian perusobjekteja ja suureita

4 Yleinen potenssifunktio ja polynomifunktio

Perusteet 5, pintamallinnus

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

Kenguru 2019 Student Ratkaisut

T Johdatus tietoliikenteeseen ja multimediatekniikkaan: Tietokonegrafiikka. Tassu Takala. Mediatekniikan laitos

x = sinu z = sin2u sinv

Transkriptio:

Tietokonegrafiikan perusteet T-111.4300 3 op Luento 6: Geometrinen mallinnus Lauri Savioja 11/05 Geometrinen mallinnus / 1 Mitä on mallintaminen? Perusmenetelmät Mallihierarkiat Sisältö Geometrinen mallinnus / 2 1

Mitä on mallintaminen? Mallintamisella tarkoitetaan sellaisen keinotekoisen objektin rakentamista, jolla on samat ominaisuudet kuin mallinnettavalla kohteella - niiltä osin kuin tarkastelunäkökulma edellyttää. Geometrinen malli esittää objektin: muotoa kokoa sijaintia asentoa yms. avaruudellisia ominaisuuksia. Riittävää on siis tieto siitä, mitkä avaruuden pisteet kuuluvat objektiin. Muut ominaisuudet ovat joko tästä johdettavissa tai eigeometrisia lisäominaisuuksia. Geometrinen mallinnus / 3 Mallintaminen? (jatkuu) Geometrisia mallintamismenetelmiä ja -järjestelmiä voidaan luonnehtia sen mukaan, kuinka moniulotteisia objekteja niillä voidaan käsitellä. Mallinnusavaruuden dimensio >= objektin sisäinen dimensio Esimerkiksi 3-ulotteinen (3D) mallintaminen sinänsä tarkoittaa vain mallintamista 3-ulotteisessa avaruudessa, mikä voi pitää sisällään: 1-ulotteisista viivoista koostuvia ns. rautalankamalleja (wireframe model) 2-ulotteisia pintamalleja (surface model) 3-ulotteisia tilavuusmalleja (solid model). Sovelluksissa, esim. tietokoneavusteisessa suunnittelussa (CAD) tarvitaan usein kaikkia näitä rinnakkain Grafiikassa käytettävät tietorakenteet ovat itse asiassa 2- ulotteisia geometrisia malleja. Samoin kukin tulostusprimitiivi voidaan ymmärtää geometrisena peruselementtinä. Geometrinen mallinnus / 4 2

Perusmenetelmiä Lähes kaikkien menetelmien peruselementtinä on piste. Se esitetään koordinaattiensa avulla, joita on yhtä monta kuin on käsiteltävän avaruuden ulottuvuus. Piste on siis vektori: p = [ x, y, z ]. Usein käytetään ns. homogeenista koordinaatistoa, jolloin kuhunkin vektoriin lisätään ylimääräinen skaalaustekijä w : p = [ wx, wy, wz, w ] <=> p = [ x, y, z ] Geometrinen mallinnus / 5 Reunaesitys Jana (suora viiva) voidaan esittää kahden päätepisteensä avulla, ja murtoviiva (polyline) pidempänä jonona pisteitä: s = [ p 1, p 2 ] ; poly = [ p 1, p 2,..., p n ] Monikulmio (polygon t. fill-area) on viivaketju, jonka molemmat päätepisteet ovat samat, jolloin niistä toinen voidaan jättää pois. Se rajaa sisäänsä tietyn 2-ulotteisen alueen. Monitahokaspinta 3-ulotteisessa avaruudessa voidaan esittää joukkona monikulmioita, joiden yleensä oletetaan olevan tasomaisia. Koska vierekkäiset monikulmiot jakavat keskenään samoja nurkkapisteitä ja reunajanoja, esitetään yhtenäinen pinta usein verkkorakenteena, joka kuvaa vain tahojen väliset liittymät l. topologian. Kustakin verkon osasta on viite osien muodot l. geometrian sisältävään tietorakenteeseen siten, että kukin jaettu tieto (pisteiden koordinaatit, janojen ja tahojen yhtälöt) on talletettu vain kerran. Geometrinen mallinnus / 6 3

Jos pinta on sulkeutuva, se rajaa sisälleen tietyn 3-ulotteisen tilavuuden. Tällöin puhutaan monitahokaskappaleen reunaesityksestä (boundary representation). Sitä kuvaavan verkon erityisominaisuus on, että kukin särmä rajaa täsmälleen kahta tahoa. Verkkomainen reunaesitys voidaan yleistää myös monitahokkaisiin, joiden särmät ovat käyriä ja tahot kaarevia. Geometrinen mallinnus / 7 Parametrikäyrät ja -pinnat Rajattu, jatkuva käyrä (minkä ulotteisessa avaruudessa hyvänsä) voidaan esittää kuvauksena reaalilukusuoran rajatulta intervallilta avaruuteen eli yhden muuttujan vektoriarvoisena funktiona: p (t) = [ x (t), y (t), z (t) ] ; t [0 1] t = 0.0.25.5.75 1.0 Geometrinen mallinnus / 8 4

Kullekin koordinaatille annettu funktio voi periaatteessa olla mikä hyvänsä, mutta matala-asteiset (2-3 ) polynomit ovat laskennan kannalta käyttökelpoisimpia. Monimutkaisia käyriä voidaan koota liittämällä rajattuja käyriä yhteen ketjuksi. Tällaista yhdistelmää kutsutaan palapolynomikäyräksi eli spliniksi. Jotta yhdistelmä näyttäisi sileältä käyrältä, on palojen liityttävä toisiinsa samansuuntaisesti l. tangentiaalisesti (ns. C1- jatkuvuus) ja mahdollisesti myös niiden kaarevuuksien on oltava samat (ns. C2 -jatkuvuus). Geometrinen mallinnus / 9 Vastaavaan tapaan kaareva splinipinta muodostuu paloista, jotka ovat kuvauksia tason yksikköneliöstä avaruuteen eli kahden muuttujan vektorifunktioita: p (u,v) = [ x (u,v), y (u,v), z (u,v) ] ; u,v [0 1] Koska polynomien kertoimien määrääminen numeromuodossa on epähavainnollista, johdetaan ne yleensä splinikäyrän tai -pinnan geometrisista ohjauspisteistä. Ohjauspisteet sijaitsevat käyrän/pinnan läheisyydessä siten, että ohjauspisteen siirtäminen vetää pintaa mukanaan samaan suuntaan. Alijakopinnat v=1 v=0 u=0 u=1 Geometrinen mallinnus / 10 5

Algebralliset yhtälöt Rajoittamaton taso 3-ulotteisessa avaruudessa (tai vastaavasti suora tasossa) voidaan esittää myös tason jokaiselle pisteelle p pätevänä lineaarisena yhtälönä: F (x,y,z) = ax + by + cz + d = n p = 0, missä tason piste p = [ x, y, z, 1 ] esitetään homogeenisessa koordinaatistossa ja n = [ a, b, c, d ] on tason normaalivektori, jonka osa [a,b,c] on normaalin suunta ja d on tason etäisyys origosta. Suora voidaan ilmaista kahden tason leikkauksena (kahden yhtälön ryhmänä) ja piste vastaavasti kolmen (eli siis suoran ja tason leikkauksena). Geometrinen mallinnus / 11 Myös kaarevia pintoja voidaan ilmaista algebrallisilla yhtälöillä. Esimerkiksi ns. kvadraattiset pinnat (pallo, ellipsoidi, sylinteri, kartio, paraboloidi, hyperboloidi) toteutuvat eri kertoimilla samasta 2 yhtälöstä. Yhtälön määrittämä pinta jakaa avaruuden kahteen erilliseen pistejoukkoon eli puoliavaruuteen, jotka kumpikin saadaan vastaavista epäyhtälöistä: F (x,y,z) < 0 ja F (x,y,z) > 0 Geometrinen mallinnus / 12 6

Perusmenetelmät - CSG Jos puoliavaruus on rajattu, sillä on tietty tilavuus eli se on tilavuusmalli. Epäyhtälöitä voidaan yhdistellä loogisin operaatioin (JA, TAI, EI), jotka vastaavat niiden määrittämien joukkojen yhdistelmiä (unioni, leikkaus, komplementti). Tällainen joukko-opillinen malli voidaan esittää binääripuuna (periaate tunnetaan usein nimellä CSG eli Constructive Solid Geometry): + - = Geometrinen mallinnus / 13 Solumallit Monimutkainen geometrinen malli voidaan myös esittää yksinkertaisista perusosista (neliö, kolmio, tetraedri, kuutio, jne.) yhteen "liimattuna" solurakenteena, jossa solut koskettavat toisiaan, mutta eivät ulotu toistensa sisälle. Esimerkiksi lujuusanalyysissä käytettävät ns. FEM-mallit (Finite Element Method). Kullakin solulla voi olla erilaisia ominaisuuksia, kuten materiaali ja sen kimmoisuus, väri, jne. Solut voivat muodostua myös avaruuden säännöllisestä osiinjaosta. Esimerkiksi grafiikan rasterikuva on tasavälinen 2-ulotteinen jako, jonka elementit ovat pikseleitä. Vastaava 3-ulotteinen jako koostuu vokseleista. Homogeeninen kappale voidaan esittää luettelemalla kaikki siihen kuuluvat vokselit. Geometrinen mallinnus / 14 7

Solumallit (jatkuu) Osiinjaon ei tarvitse olla kaikkialla samanlainen, vaan se voi olla tiheämpi siellä, missä mallissa on pienempiä yksityiskohtia (yleensä mallin pinnalla) ja taas harvempi muualla (mallin sisäja ulkopuolella). Näin voidaan esittää tarkempia malleja vähemmällä tietomäärällä. Lähtemällä liikkeelle koko tarkasteltavan 2-D (3-D) avaruuden sisältävästä neliöstä (kuutiosta), jota jaetaan aina tarvittaessa neljään (kahdeksaan) yhtä suureen osaan, saadaan hierarkkinen puurakenne, quadtree (octree): 1 2 3 4 1 2 3 4 NIL NIL 1 2 3 4 NIL NIL 1 2 3 4 NIL NIL NIL 1 2 3 4 NIL NIL NIL Geometrinen mallinnus / 15 Proseduraaliset mallit Monia geometrisia muotoja on kätevintä kuvata kyseisen muodon tuottavan proseduurin avulla. Esimerkiksi kartio, lieriö tai yksivaippainen hyperboloidi voidaan määritellä niiden pisteiden urana, joiden kautta annettu jana kulkee pyörähtäessään akselina toimivan suoran ympäri. Vastaavasti tilavuusmalli saadaan, kun annettu 2-ulotteinen kuvio (esim. monikulmio tai ympyrä) liikkuu määriteltyä rataa pitkin muodostaen samalla ns. pyyhkäisykappaleen (sweep model): Geometrinen mallinnus / 16 8

Proseduraaliset mallit (jatkuu) Mallin muodostava proseduuri voi olla myös rekursiivinen, itseään toistava. Täten voidaan määritellä äärettömän määrän pieniä yksityiskohtia sisältäviä fraktaalimalleja. Tämän kaltaisia mallinnettavia kohteita esiintyy runsaasti luonnossa, esimerkiksi järven rantaviiva sisältää mielivaltaisen määrän mutkia, mittaustarkkuudesta riippuen. Geometrinen mallinnus / 17 Mallien hierarkia Ihmiselle luontainen taipumus on jäsentää laajoja kokonaisuuksia hierarkkisesti. Kokonaisuus koostuu osista, jotka edelleen kukin koostuvat pienemmistä osista ja niin edelleen. Vastaavaan tapaan geometriset mallitkin yleensä esitetään puurakenteina, joissa puun "juuri" on koko käsiteltävä maailma (world) ja sen oksina (lapsina) on pienempiä osamaailmoja (subworld). Osamaailmoista puu haarautuu edelleen pienempiin oksiin, kunnes lopulta tullaan "lehtiin", primitiivisiin mallielementteihin. Geometrinen mallinnus / 18 9

Mallien hierarkia (jatkuu) Tavallista on, että laajassa mallissa on useita samankaltaisia osia. Kutakin eri tyyppistä osaa kannattaa yksityiskohtaisesti mallintaa vain yksi alkuperäiskappale (master copy), jonka moninkertaiset ilmentymät (instance) sitten esitetään vain kopiointiviitteinä. Jokaiseen ilmentymään liittyy geometrinen muunnos (modeling transformation), joka osoittaa mihin paikkaan ja asentoon (ja minkä kokoisena) mallin kopio asettuu. Näin puurakenteen oksat saattavat myös osittain yhtyä ensin haarauduttuaan. Esimerkiksi liikennesimulaatio voisi sisältää suuren määrän eri merkkisiä autoja. Näistä kukin merkki esitetään omana alkuperäismallinaan, joiden ilmentymät asettuvat omille paikoilleen tiellä. Auton alkuperäismallista puolestaan on neljä ilmentymäviitettä samaan renkaan määrittelyyn, joka voi olla jaettu eri automerkkienkin kesken. Renkaan määrittely taas käyttää hyväkseen standardipultin mallia, jne. Geometrinen mallinnus / 19 Mallien hienorakenne Mallin kaikkia eri tasoisia yksityiskohtia ei kannata aina kuvata samalla perusmenetelmällä, vaan useita tapoja voidaan yhdistää - varsinkin hierarkian eri tasoilla. Samasta mallista voi olla myös useampia vaihtoehtoisia esitysmuotoja, joiden kesken valinta voidaan tehdä tilanteen vaatimusten mukaan (LOD - Level of Detail). Esimerkiksi hyvin kaukaa katsottuna talo voidaan kuvata pelkkänä kuutiona, vähän lähempää tulevat näkyviin katto, ikkunat ja ovet, ja lopulta avaimenreiästä kurkistettaessa näkyvät lukon pienimmätkin yksityiskohdat. Geometrinen mallinnus / 20 10

Mallien hienorakenne (jatkuu) Mallin perusmuoto, hahmo, voidaan yleensä kuvata suhteellisen karkealla tasolla jotakin edellä kuvatuista perusmenetelmistä käyttäen. Hahmon hienorakennetta eli tekstuuria kuvataan puolestaan rasterilla tai proseduraalisella mallilla, joka kiinnitetään mallin geometrisiin koordinaatteihin. Menetelmää läheisesti vastaava analogia on koristekuvion liimaaminen vaikkapa kahvikupin sileään pintaan. Paitsi mallin pinnan väritystä ja muita valaistusparametreja, tekstuurilla voidaan kuvata myös pieniä poikkeamia (offset) geometrisesta perusmuodosta, tai vaikkapa pinnan karvoitusta. Geometrinen mallinnus / 21 11