Tampereen yliopisto Tietokonegrafiikka 2013 Tietojenkäsittelytiede Harjoitus

Samankaltaiset tiedostot
2 Pistejoukko koordinaatistossa

Yleistä vektoreista GeoGebralla

BM20A5800 Funktiot, lineaarialgebra ja vektorit Harjoitus 4, Syksy 2016

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

Kertausosa. 5. Merkitään sädettä kirjaimella r. Kaaren pituus on tällöin r a) sin = 0, , c) tan = 0,

A-osio. Tehdään ilman laskinta ja taulukkokirjaa! Valitse tehtävistä A1-A3 kaksi ja vastaa niihin. Maksimissaan tunti aikaa suorittaa A-osiota.

Tampereen yliopisto Tietokonegrafiikka 2013 Tietojenkäsittelytiede Harjoitus

Luento 7: Lokaalit valaistusmallit

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

MAA15 Vektorilaskennan jatkokurssi, tehtävämoniste

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

Vanhoja koetehtäviä. Analyyttinen geometria 2016

Tekijä Pitkä matematiikka Poistetaan yhtälöparista muuttuja s ja ratkaistaan muuttuja r.

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

Tekijä Pitkä matematiikka

Mb8 Koe Kuopion Lyseon lukio (KK) sivu 1/2

1. Olkoot vektorit a, b ja c seuraavasti määritelty: a) Määritä vektori. sekä laske sen pituus.

Juuri 4 Tehtävien ratkaisut Kustannusosakeyhtiö Otava päivitetty Kertaus. b) B = (3, 0, 5) K2. 8 ( 1)

Piste ja jana koordinaatistossa

Matematiikan ilmiöiden tutkiminen GeoGebran avulla

MAB3 - Harjoitustehtävien ratkaisut:

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

Paraabeli suuntaisia suoria.

Tekijä Pitkä matematiikka b) Kuvasta nähdään, että b = i 4 j. c) Käytetään a- ja b-kohtien tuloksia ja muokataan lauseketta.

102 Käyrä. Piste ( 3,0 ) on käyrällä, jos ja vain jos sen koordinaatit. Siis piste ( 1, 2) Siis piste ( 3,0 ) ei ole käyrällä.

MATEMATIIKAN KOE PITKÄ OPPIMÄÄRÄ Merkitään f(x) =x 3 x. Laske a) f( 2), b) f (3) ja c) YLIOPPILASTUTKINTO- LAUTAKUNTA

Tekijä Pitkä matematiikka

Suora. Määritelmä. Oletetaan, että n = 2 tai n = 3. Avaruuden R n suora on joukko. { p + t v t R},

Juuri 4 Tehtävien ratkaisut Kustannusosakeyhtiö Otava päivitetty Kertaus. b) B = (3, 0, 5) K2. ( )

Havainnollistuksia: Merkitään w = ( 4, 3) ja v = ( 3, 2). Tällöin. w w = ( 4) 2 + ( 3) 2 = 25 = 5. v = ( 3) = 13. v = v.

Ratkaisuja, Tehtävät

3 Yhtälöryhmä ja pistetulo

TASON YHTÄLÖT. Tason esitystapoja ovat: vektoriyhtälö, parametriesitys (2 parametria), normaalimuotoinen yhtälö ja koordinaattiyhtälö.

Insinöörimatematiikka D, laskuharjoituksien esimerkkiratkaisut

Differentiaali- ja integraalilaskenta 2 (CHEM) MS-A0207 Hakula/Vuojamo Kurssitentti, 12.2, 2018, arvosteluperusteet

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

Suorista ja tasoista LaMa 1 syksyllä 2009

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

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

Kertaus. x x x. K1. a) b) x 5 x 6 = x 5 6 = x 1 = 1 x, x 0. K2. a) a a a a, a > 0

KJR-C1001 Statiikka ja dynamiikka. Luento Susanna Hurme

Juuri Kertaus Tehtävien ratkaisut Kustannusosakeyhtiö Otava päivitetty

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

Vektoriarvoiset funktiot Vektoriarvoisen funktion jatkuvuus ja derivoituvuus

0, niin vektorit eivät ole kohtisuorassa toisiaan vastaan.

x 5 15 x 25 10x 40 11x x y 36 y sijoitus jompaankumpaan yhtälöön : b)

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

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

Matematiikan taito 9, RATKAISUT. , jolloin. . Vast. ]0,2] arvot.

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.

yleisessä muodossa x y ax by c 0. 6p

T Vuorovaikutteinen tietokonegrafiikka Tentti

30 + x ,5x = 2,5 + x 0,5x = 12,5 x = ,5a + 27,5b = 1,00 55 = 55. 2,5a + (30 2,5)b (27,5a + 27,5b) =

Integrointi ja sovellukset

Näihin harjoitustehtäviin liittyvä teoria löytyy Adamsista: Ad6, Ad5, 4: 12.8, ; Ad3: 13.8,

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

Tehtävien ratkaisut

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

Mb8 Koe Kuopion Lyseon lukio (KK) sivu 1/3

5.3 Suoran ja toisen asteen käyrän yhteiset pisteet

Insinöörimatematiikka D

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.

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

Tekijä Pitkä matematiikka On osoitettava, että jana DE sivun AB kanssa yhdensuuntainen ja sen pituus on 4 5

Kertaus. x x x. K1. a) b) x 5 x 6 = x 5 6 = x 1 = 1 x, x 0. K2. a) a a a a, a > 0

Laudatur 4 MAA4 ratkaisut kertausharjoituksiin

Vektorit, suorat ja tasot

MS-A0003/A0005 Matriisilaskenta Laskuharjoitus 2 / vko 45

Helsingin, Itä-Suomen, Jyväskylän, Oulun, Tampereen ja Turun yliopisto Matematiikan valintakoe klo Ratkaisut ja pisteytysohjeet

Kahden suoran leikkauspiste ja välinen kulma (suoraparvia)

MAB3 - Harjoitustehtävien ratkaisut:

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)

Ympyrän yhtälö

Ylioppilastutkintolautakunta S t u d e n t e x a m e n s n ä m n d e n

1 2 x2 + 1 dx. (2p) x + 2dx. Kummankin integraalin laskeminen oikein (vastaukset 12 ja 20 ) antaa erikseen (2p) (integraalifunktiot

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

Juuri 12 Tehtävien ratkaisut Kustannusosakeyhtiö Otava päivitetty

Pistetulo eli skalaaritulo

Derivaatan sovellukset (ääriarvotehtävät ym.)

Tämä luku nojaa vahvasti esimerkkeihin. Aloitetaan palauttamalla mieleen, mitä koordinaatistolla tarkoitetaan.

VEKTORIT paikkavektori OA

MATEMATIIKAN KOE, PITKÄ OPPIMÄÄRÄ (1 piste/kohta)

Ympyrä 1/6 Sisältö ESITIEDOT: käyrä, kulma, piste, suora

3.3 Paraabeli toisen asteen polynomifunktion kuvaajana. Toisen asteen epäyhtälö

Toisen asteen käyrien ja pintojen geometriaa Ympyrän ja pallon ominaisuuksia

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.

Luento 3: 3D katselu. Sisältö

Helsingin, Itä-Suomen, Jyväskylän, Oulun, Tampereen ja Turun yliopisto Matematiikan valintakoe klo 10-13

Ratkaisu: Maksimivalovoiman lauseke koostuu heijastimen maksimivalovoimasta ja valonlähteestä suoraan (ilman heijastumista) tulevasta valovoimasta:

MS-A0003/A0005 Matriisilaskenta Laskuharjoitus 2 / vko 45

1 Ensimmäisen asteen polynomifunktio

Kertausta: avaruuden R n vektoreiden pistetulo

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

l 1 2l + 1, c) 100 l=0

Transkriptio:

Tampereen yliopisto Tietokonegrafiikka 201 Tietojenkäsittelytiede Harjoitus 6 1..201 1. Tarkastellaan Gouraudin sävytysmallia. Olkoon annettuna kolmio ABC, missä A = (0,0,0), B = (2,0,0) ja C = (1,2,0) ja vastaavat normaalit kulmapisteissä n A = (0,0,1), n B = (0.18,0.6,0.91), n C = (0.7,0,0.9). Monikulmion materiaalin arvot ovat k a = 0., k d = 0.2, k s = 0.5 ja n =. Olkoon pistemäinen valonlähde pisteessä L = (2,, 5) ja siitä monikulmioon tulevan valon intensiteetti I L = 1.0 ja hajavalon intensiteetti I a = 0.5. Oletetaan vielä, että katsoja on pisteessä E = (0,0,5). Laske Gouraudin mallin mukainen havaittu intensiteetti pisteessä (0.5, 0.5, 0). Laskut voi tehdä likiarvoilla. 2. Sama kuin edellinen tehtävä, mutta käyttäen Phongin sävytysmallia.. Luennoilla aletaan piakkoin käsitellä pinnoitustekniikoita, kuten teksturointia. Monikulmion pinnalla olevia attribuutteja interpoloidaan yleensä lineaarisesti maailman koordinaatistossa, ts. jos attribuutin, kuten värin, arvo jonkin janan päätepisteessä on v 0 ja toisessa päätepisteessä v 1 on sen arvo pisteiden välissä v(t) = v 0 +t(v 1 v 0 ),0 t 1. Piirrettäessä rasterille ei kuitenkaan voida tehdä näin, koska perspektiiviprojektio aiheuttaa sen, että tasavälein maailman koordinaatistossa lasketut arvot eivät ole tasavälein ruudulla ja toisin päin. Tarkastellaan ao. tilannetta. x(0) x(t) x(1) z(1) z(t) z(0) x (0) x (s) x (1) z = 1 z = 0 Tarkastellaan perspektiiviprojektiota tasolle z = 1, kun projektion keskipiste on tasolla z = 0. Maailman koordinaatistossa janan x-koordinaatit saadaan kaavalla x(t) = x 0 +t(x 1 x 0 ),0 t 1 (vastaavasti z-koordinaatit z(t)). 1

Projisoidunpisteenx-koordinaattisaadaanx = x/z,jotenprojisoidunjanan x-koordinaatit ovat x (s) = x 0 + s(x 1 x 0),0 s 1. Oheisen konstruktion avulla saadaan projisoidun ja alkuperäisen janan x-koordinaattien välille yhteys x (s) = x(t)/z(t). Määritä tästä kaava, jolla saadaan muuttujaa s vastaava muuttujan t arvo. Käytännössä piirrettäessä interpoloidaan ruudulla, joten tästä saadaan oikea (= perspektiivikorjattu) attribuutin arvo pikselille. Vihje: Laske arvojen x 0 ja x 1 kertoimet molemmilla puolilla (huom. x 0 +t(x 1 x 0 ) = (1 t)x 0 +tx 1 ) ja merkitse yhtäsuuriksi. Allekirjoittanut sai vastaukseksi t = sz 0 /(z 1 s(z 1 z 0 )). Mitä suhteelle tapahtuu, jos projektiotaso onkin etäisyydellä n? -5. Kirjoita ohjelma, joka piirtää GL TRIANGLE STRIP piirtotavalla D- esityksenä funktion f(x,z) = 0.2x 2 +0.z 2 kuvaajan. Voit tehdä vaikkapa Mesh-luokan,jossa määrittelet x-,y- ja z-arvot jokaiselle piirrettävälle kulmapiseelle. Ohjelmassa funktion arvoalueen x- ja z-suuntaiset alueet muodostavat neliön. Parametreina ohjelma käyttää x- ja z-suunnan maksimi ja minimiarvoja sekä arvoja dx ja dz, joilla määrätään piirrettävän x- ja z-suuntaisten pisteiden välimatka. Toisin sanoen piirrettävän verkon tiheys. Täydennä ohjelmaa siten, että se käyttää valaistusta. Tätä varten pitää laskea kulmapisteille normaalivektorit. Tämän voi tehdä keskiarvoistamalla yhteen kulmapisteeseen liittyvien kolmioiden normaalivektorit. x- ja z- suuntainen kulmapisteverkko voidaan tehdä esimerkiksi positiivisessa x- ja z-alueessa. Tämän jälkeen sen voi siirtää origoon vaikkapa vähentämällä jokaisesta kulmapisteen x- ja z-komponentista koko verkon x- ja z-suuntaiset keskiarvot. Tämän tehtävän idea on lähellä ns. korkeuskartan height map ideaa. Erotuksena on ainoastaan se, että korkeusarvot y lasketaan, eikä niitä lueta tiedostosta. Tällä tekniikalla voidaan toteuttaa esimekkiksi erilaisia maaston muotoja sovelluksissa. Esimerkki 1 Olkoon katsoja pisteessä E = (1, 2, 5), kolmion ABC kulmat pisteissä A = (0,0,0), B = (1,0,0), C = (0,1,0), normaalit kulmissa n A = (0,0,1), n B = (0.6,0,0.89), n C = (0,0.6,0.89), pistevalo pisteessä L = ( 1,0,2), valon kolmioon tuleva intensiteetti I = 0.5, hajavalo I a = 0.2 ja kolmion materiaalin parametrit k a = 0.1, k d = 0.6, k s = 0., n = 2 (huom. parametrit summautuvat arvoon 1). Lasketaan Gouraudin sävytysmallin antama intensiteettiarvo I P pisteessä P = (0.25,0.25,0). 2

n C C r C v C E A P B L l C n A n B Kulmapisteessä A tulevan valon suunta l A on heijastussuunta r A saadaan l A = A L A L = 1 5 (1,0, 2) (0.6,0, 0.89), r A = l A 2(l A n A )n A = (0.6,0, 0.89) 2( 0.89)(0,0,1) = (0.6,0,0.89) ja suunta katsojaan kulmapisteestä v A on v A = E A E A = 1 0 (1,2,5) (0.18,0.7,0.91). Gouraudin mallin mukaan havaittu intensiteetti pisteessä A on I A = k a I a +I L (k d ( l A n A )+k s (r A v A ) n ). Huom. Käytetään l A, koska laskettiin tulosuunta; kirjan formulointi laskee vektorin toisin päin. Spekulaarin komponentin arvo on (r A v A ) n = ((0.6,0,0.89) (0.18,0.7,0.91)) 2 = 0.89 2 0.8 ja diffuusin komponentin arvo on Intensiteetti I A pisteessä A on (l A n A ) = (0.6,0,0.89) (0,0,1) = 0.89. I A = 0.1 0.2+0.5(0.6 0.89+0. 0.8) = 0.07 0.1. Vastaavasti saadaan I B 0.11 ja I C 0.2. Intensiteettiä I B laskettaessa huomataan myös, että spekulaarin komponentin arvo ennen potenssiin korotusta on

negatiivinen, tällöin spekulaari komponentti on 0 eli ei ole sellaista kuin negatiivinen valo. Kirjassa tämä pikkuseikka on sivuutettu tekstin sekaan jätetyllä maininnalla. Intensiteetti I P pisteessä P lasketaan interpoloimalla kulmapisteiden intensiteettiarvoja. Interpoloidaan ensin reunaa AC pitkin pisteeseen(0, 0.25). Tästä saadaan arvo 0.75 I A +0.25 I C = 0.6. Arvo on vain painotettu keskiarvo pisteiden A ja C intensiteeteistä; painotus tapahtuu etäisyydellä. Vastaavasti interpoloidaan pitkin reunaa BC pisteeseen (0.75, 0.25) (tässä tapauksessa leikkauspiste vaakasuoran y = 0.25 kanssa on helppo laskea). Tässä pisteessä intensiteetti on 0.75 I B +0.25 I C = 0.1. Huom. Yllä painotetussa keskiarvossa arvot eivät ole koordinaatin arvot, vaan suhteellinen etäisyys pisteisiin B ja C janalla BC. Tässä tapauksessa ne vain sattuvat olemaan samat. Lähempänä olevaa pistettä painotetaan tietenkin enemmän. Janan BC yhtälö on BC(t) = B + t(c B),0 t 1, ja interpoloidut arvot saadaan vastaavasti I(t) = I B +t(i C I B ) = (1 t)i B +ti C. Leikkaus tapahtuu t:n arvolla 0.25, josta em. tulos seuraa. Lopuksi interpoloidaan pisteiden (0, 0.25) ja (0.75, 0.25) välillä intensiteettiä pisteeseen (0.25, 0.25), joka on 1/ etäisyyden päässä pisteestä (0.0, 0.25) joten I P = 2 0.5+1 0.1 0.28. Esimerkki 2 Suoritetaan edellisen esimerkin laskelmat Phongin valaistusmallilla. Ensin lasketaan normaali n P pisteessä P interpoloimalla kulmien normaaleja reunoja pitkin. n C C n AC n P na P A n BC B n B

Pisteessä (0,0.25) normaali n AC on n AC = n A +n B = 0.25(0,0.6,.89) = (0,0.12,0.97) ja vastaavasti pisteessä (0.75, 0.25) normaali on n BC = n B +n C = 0.25(1.8, 0.6,.56) = (0.5, 0.12, 0.89). Interpoloinnilla näiden normaaleiden välillä saadaan normalisoimaton normaali pisteessä P n P = 2n AC +n BC = (0.18, 0.12, 0.9). Varsinainen normaali saadaan normalisoimalla eli Valon tulosuunta pisteessä P on ja heijastussuunta l P = P L P L n P = n P n P = (0.19,0.12,0.97). = 0.2(1.25,0.25, 2.0) = (0.5,0.11, 0.8) r P = l P 2(l P n P )n P = (0.5,0.11, 0.8) 2( 0.7)(0.19,0.12,0.97) = (0.80,0.28,0.52). Katsojan suunta on v P = E P E P Spekulaarin komponentin pistetulo on = 0.186(0.75,1.75,5) = (0.1,0.,0.9) r P v P 0.69, joten spekulaari komponentti on (0.69) 2 = 0.7. Diffuusi komponentti on Sijoittamalla valaistusyhtälöön saadaan l P n P = 0.7. I P = 0.1 0.2+0.5(0.6 0.7+0. 0.7) = 0.. 5