Laste ned presentasjonen
Presentasjon lastes. Vennligst vent
1
Forelesningsnotater SIF8039/ Grafisk databehandling
Notater til forelesninger over: Kapittel 4: ”Geometric Objects and Transformations” i: Edward Angel: ”Interactive Computer Graphics” Vårsemesteret 2002 Torbjørn Hallgren Institutt for datateknikk og informasjonsvitenskap Norges teknisk-naturvitenskapelige universitet
2
Geometriske transformasjoner
Flytting og endring av objekter modellert i egne koordinatsystemer Sette sammen objekter av delobjekter Endring av koordinatsystem Også kalt: Modelleringstransformasjoner Koordinattransformasjoner
3
Plan Basistransformasjonene Problem: Rotasjoner rundt vilkårlig akse
Konstatere problem Løse problemet Basistransformasjonene på nytt Rotasjoner rundt vilkårlig akse Stoff for mer enn en dobbelttime
4
Geometriske transformasjoner
Skalering Rotasjon Basistransformasjoner Translasjon Skjærtransformasjoner Refleksjon
5
Skalering 2 x 3 x Skalering relativt origo. (Referansepunkt: origo)
6
Skalering På matriseform:
7
Rotasjon y Rotasjonsvinkel: x
Rotasjon i planet om origo. (Referansepunkt: origo)
8
Rotasjon Ser på rotasjon av ett punkt: y (x’,y’) (x,y) x
9
Rotasjon På matriseform:
Rotasjon i x-y-planet kan sees på som rotasjon om z-aksen med konstant z. I 3D blir da matriseformen:
10
Rotasjon På samme måte: rotasjon om x-aksen: Rotasjon om y-aksen:
11
Rotasjon Syklisk ombytting som grunnlag for rotasjons-
matrisene om x- og y-aksene: z -> x z -> x -> y y -> z y -> z -> x x -> y x -> y -> z
12
Rotasjon Enhver rotasjon kan sees på som sammensatt
av en rotasjon om hver av koordinataksene.
13
Translasjon y (x’,y’) (x,y) x
14
Translasjon På vektorform:
PROBLEM: lar seg ikke skrive på matriseform ved hjelp av en 3x3-matrise!!
15
Affine rom Ved hjelp av homogene koordinater:
Hjelper oss å skille mellom de geometriske entitetene: punkt og vektorer Ordner opp med translasjons-problemet
16
Punkt og vektorer -Punkt er steder i rommet
-Vektorer har lengde og retning, men er IKKE stedfestet
17
Koordinatsystemer z Et koordinatsystem er et vektorrom spent ut av en
basis bestående av tre ortonormale enhetsvektorer. For å kunne angi koordinater, har vi i tillegg et origo y x
18
Vektorrom En mengde av vektorer med gyldige operasjoner:
addisjon skalar multiplikasjon og med følgende egenskaper: u + v = v + u (kommutativ) ( u + v ) + w = u + ( v + w ) (assosiativ) u + 0 = u (nullvektor) a + ( -a ) = 0 ß ( u + v ) = ß u + ß v (distributiv) ( ß + µ ) u = ß u + µ u (distributiv) ß ( µ u ) = ( ß µ ) u (assosiativ) 1 u = u u, v og w er vektorer. ß og µ er skalarer
19
Vektorrom og affine rom
Vektorrom av dimensjon n har en basis bestående av n lineært uavhengige vektorer: v1, v2, v3, … , vn Affine rom: For affine rom inngår i tillegg et referanse-punkt slik at basis blir: v1, v2, v3, … , vn, P0
20
Affine rom Tilleggsegenskap for affine rom:
v = P - Q (punkt-punkt subtraksjon gir en vektor) Q = v + P (vektor-punkt sum gir et punkt) Begrepet koordinatsystem erstattes med begrepet frame
21
Affine rom Vektorer i det affine rommet: med ”representasjonen”:
22
Affine rom Punkt i det affine rommet: med ”representasjonen”:
23
Homogene koordinater Punkt: Vektorer:
24
Skalering På matriseform med homogene koordinater:
25
Rotasjon
26
Rotasjon Om z-aksen på matriseform i homogene koordinater:
27
Rotasjon Rotasjon om x-aksen i homogene koordinater:
Rotasjon om y-aksen i homogene koordinater:
28
Translasjon På matriseform i homogene koordinater:
Vi har løst problemet!!
29
Egenskaper ved skalering
Invers transformasjon: To skaleringer etter hverandre:
30
Egenskaper ved rotasjon
Invers transformasjon: To rotasjoner om samme akse etter hverandre: Ortogonalitet:
31
Egenskaper ved translasjon
Invers transformasjon: To translasjoner etter hverandre:
32
Rotasjon om punkt utenfor origo
y Rotasjonsakse parallell med z-aksen (x,y,z) x 1. Translere slik at rotasjonsaksen faller langs z-aksen 2. Rotere 3. Translere tilbake
33
Konkatenering Sammenslåing av transformasjoner
Eks.: punktet p gjennomgår transformasjonene A, B og C i nevnte rekkefølge: p’=Ap p’’=Bp’=BAp p’’’=Cp’’=CBAp Resultattransformasjon: M=CBA TRANSFORMASJONENE KONKATENERES I MOTSATT REKKEFØLGE I FORHOLD TIL REKKEFØLGEN DE UTFØRES I
34
Rotasjon om vilkårlig akse
z P Rotere vinkelen ß om aksen gjennom punktene P og Q Q y x
35
Rotasjon om vilkårlig akse
Plan: 1. Translere slik at Q faller i origo 2. ”Svinge” rotasjonsaksen inn i x-z-planet 3. ”Svinge” rotasjonsaksen slik at den faller sammen med z-aksen 4. Rotere vinkelen ß om z-aksen 5. Invers av 3 6. Invers av 2 7. Invers av 1
36
Rotasjon om vilkårlig akse
z Retningsvinkler: P , og Q Q’ y x Steg 1 - translasjon av rotasjonsaksen
37
Rotasjon om vilkårlig akse
Nyttig for ”fremtidig bruk” - enhetsvektor i rotasjons- akseretningen: Vektor i retningen: Enhetsvektor:
38
Rotasjon om vilkårlig akse
retningskosinuser
39
Rotasjon om vilkårlig akse
z d v Q’ y x Steg 2 - ”svinge” rotasjonsaksen inn i x-z-planet
40
Rotasjon om vilkårlig akse
z v x Steg 3 - svinge rotasjonsaksen slik at den faller sammen med z-aksen
41
Rotasjon om vilkårlig akse
Transformasjonene for stegen 1 og 2 blir etter dette:
42
Rotasjon om vilkårlig akse
Transformasjonene for stegen 3 og 4 blir etter dette:
43
Rotasjon om vilkårlig akse
Den fullstendige transformasjonen blir:
44
Basistransformasjonene
Enhver kombinasjon av basistransformasjonene resulterer i en transformasjonsmatrise av formen: Affine transformasjoner Affine transformasjoner bevarer parallellitet (alle tre basistransformasjonene) Stive transformasjoner bevarer i tillegg størrelse og vinkler (rotasjon og translasjon)
45
Skifte av koordinatsystem
z n u v y Kjenner koordinatene i xyz-systemet. Søker koordinatene i uvn-systemet: Puvn=Muvn<-xyzPxyz x
46
Skifte av koordinatsystem
Ser på uvn-systemet som et objekt skapt i xyz-systemet med akser sammenfallende med xyz-systemets akser Transformasjon til nåværende posisjon med matrisen M Referansen til et punkt i ”uvn-objektet i sin endelige posisjon” referert til xyz-system: [ x’ y’ z’ 1 ]T som tilsvarer Pxyz Referansen til det samme punktet i sin opprinnelige posisjon i xyz-systemet: [ x y z 1 ]T = [ u v n 1 ]T som tilsvarer Puvn
47
Skifte av koordinatsystem
Vi får: Pxyz = M Puvn Puvn= M-1 Pxyz Muvn<-xyz = M-1 Konklusjonen er: Matrisen for transformasjon av koordinater i xyz-systemet til koordinater i uvn-systemet kommer fram av den transformasjonen som skal til for at uvn-systemet flyttes slik at dets akser faller sammen med xyz-systemets
48
Ortogonale matriser Definisjon av ortogonal matrise: Teorem:
En reell kvadratisk matrise er ortogonal hvis og bare hvis kolonnevektorene og radvektorene hver for seg danner ortonormale systemer
49
Ortogonale matriser Rotasjonsmatrisen:
50
Ortogonale matriser Dette koordinatsystemet kan
være ett som er forankret på en intelligent måte i vårt objekt som skal roteres
51
Ortogonale matriser z v P Rotere vinkelen ß om aksen gjennom punktene
P og Q u Q n y Vesentlig: En av enhetsvektorene legges langs rotasjonsaksen. De to andre enhetsvektorene kan velges fritt slik det er mest hensiktsmessig så lenge de tre danner et ortonormalt system x
52
Ortogonale matriser Rotasjonsaksen vil nå ligge langs en av
koordinataksene (langs x-aksen dersom enhetsvektoren u ble lagt langs rotasjonsaksen)
53
Ortogonale matriser Systemet av ortonormale vektorer
er tilbake på sin opprinnelige plass. Rotasjonen er fullført
Liknende presentasjoner
© 2024 SlidePlayer.no Inc.
All rights reserved.