1 / 53

Forelesningsnotater SIF8039/ Grafisk databehandling

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

whitney
Download Presentation

Forelesningsnotater SIF8039/ Grafisk databehandling

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  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: • 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: • 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. Punkt: Vektorer: Homogene koordinater

  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

More Related