Presentatie titel
Rotterdam, 00 januari 2007
Computer Graphics
Technische Informatica
www.hogeschool-rotterdam.nl/cmi
Les 4 • Les 4 gaat over de hoofdstukken:
• 6.1 Meetkundige 3D transformaties
• 6.2 3D transformaties van coordinaten
• 6.3 Samengestelde 3D transformaties
• 6.4 Instantie 3D transformaties
• 7.1 Indelingen van Projectie
• 7.2 Perspectief projectie
• 7.3 Parallelle projectie
Inleiding • Manipulatie en constructie van 3-dimensionale
grafische beelden vereist het gebruik van 3 dimensionale meetkundige en coordinaat transformaties
• Gevormd door basis transformaties:• Translatie• Rotatie• Verschaling
1. Directe manipulatie met meetkundige transformaties
2. Stationair via coordinaat transformaties
Meetkundige transformaties• Een object Obj in het vlak kan worden
beschouwd als een verzameling punten
Obj= {P(x,y,z)}
• Als het verplaatst wordt , wordt het een nieuw object Obj’ , waarin alle punten P’(x’,y’,z’) verkregen kunnen worden uit P(x,y,z) door middel van meetkundige transformaties
Translatie• Bij een translatie wordt een object verplaatst
over een gegeven afstand van de orginele positie
• De verplaatsing is gegeven door de vector v=aI +bJ+cK
• Het nieuwe punt P’(x’,y’,z’) kan gevonden worden door de transformatie Tv vanuit P(x,y,z )
• P’= Tv (P) (zie fig 6-1)
Translatie• Om transformaties mogelijk te maken zijn
homogene coordinaten nodig:
Verschalen t.o.v. oorsprong• Bij verschaling veranderen de afmetingen van
het object
• De schaalfactor s bepaald of de verschaling een vergroting is, s>1 of een verkleining s<1
• De volgende transformatie:
Verschalen t.o.v. oorsprong• In matrix vorm
• Met homogene coordinaten:
Rotatie om de oorsprong• Rotatie in 3 dimensies is veel complexer dan
bij 2 dimensies
• Bij 2 dimensies heb je een rotatie met rotatiehoek θ en een rotatiecentrum P
• Bij 3 dimensies heb je een rotatiehoek en een rotatieas
• De canonieke rotaties zijn gedefinieerd als één van de positieve x,y,z-assen is gekozen als rotatieas
• Dan wordt de constructie van de transformatie gelijk aan die in 2 dimensies (zie fig 6-2)
Rotatie om de oorsprong
• Rotatie om de z-as
• Hierin is θ de rotatiehoek
• En K de rotatie as (z-as)
Rotatie om de oorsprong• Rotatie om de x-as
• Hierin is θ de rotatiehoek
• En J de rotatie as (y-as)
• Deze wordt verkregen door cyclische permutatie vanuit rotatie om z-as:
• Verwissel
• x met y (overal waar x staat vul je y in)
• y met z (overal waar y staat vul je z in)
• z met x (overal waar z staat vul je x in)
Rotatie om de oorsprong• Rotatie om de y-as
• Hierin is θ de rotatiehoek
• En I de rotatie as (x-as)
• Deze wordt verkregen door cyclische permutatie vanuit rotatie om z-as:
• Verwissel
• x met z (overal waar x staat vul je z in)
• y met x (overal waar y staat vul je x in)
• z met y (overal waar z staat vul je y in)
Rotatie om de oorsprong• De richting van de positieve rotatiehoek is
overeenkomstig de rechterhand-regel met betrekking tot de rotatieas (zie appendix 2)
Rotatie om de oorsprong• Rotatie om de z-as
• In matrix vorm
• Met homogene coordinaten:
Rotatie om de oorsprong• Rotatie om de y-as
• In matrix vorm
• Met homogene coordinaten:
•
Rotatie om de oorsprong• Rotatie om de x-as
• In matrix vorm
• Met homogene coordinaten:
Rotatie om de as L• Deze kan bepaald worden uit de canonieke
rotaties
• Gegeven: De rotatieas L heeft de richtingsvector V en een lokatie punt P op L (zie fig 6-5)
• Gevraagd de transformatie voor een rotatie van θ om L
Rotatie om de as L• Er dienen de volgende stappen te worden
uitgevoerd:
1. Een translatie van P naar de oorsprong (T-P)
2. Laat de richting van V samenvallen met die van K (Av) (A=alignment =uitlijning)
3. Roteer θ om de as K (Rθ,K)
4. Maak de richting van K weer gelijk aan V (Av-1)
5. Een translatie terug van de oorsprong naar P (T-P
-1)
Rotatie om de as L• De transformatie wordt dan:
• Rθ,L= T-P-1.Av
-1.Rθ,K.Av.T-P
• De transformatie Av is beschreven in oefening 6.2 ( zie fig 6-4a en 6-4b en 64-c)
• Gegeven is de vector V=aI+ bJ +cK
• De volgende transformaties moeten worden uitgevoerd:
1. Roteer om de X-as over een hoek θ1 zodat V roteert in het bovenste xz vlak (vector V1) (fig 6-4b)
2. Roteer V1 om de Y-as met een hoek –θ 2 zodat V1 roteert naar de positieve z-as (vector V2) (fig 6-4c)
Rotatie om de as L• Fig 6-4a
Rotatie om de as L• Fig 6-4b
Rotatie om de as L• Fig 6-4c
Coordinaten transformatie• We kunnen ook het object stil houden en het
coordinatensysteem veranderen
• We plaatsen een coordinatensysteem bij de observator
• We bewegen de observator en het coordinaatsysteem
• We berekenen de coordinaten van het object t.o.v. het nieuwe coordinatensysteem ( zie fig 6-3)
• De verplaatsing beschreven wordt door vector V=aI+bJ+cK
• Een P(x,y,z) uit het orginele systeem gaat naar P’(x’,y’,z’)
Coordinaten transformatie
• Dan is:
Coordinaten transformatie• De afleiding is identiek bij 2 dimensies
• Gelijke afleidingen zijn er voor rotatie en verschaling
• De relatie tussen coordinaat en meetkundige transformaties
Coordinaten Meetkundig
• Translatie: v T-v
• Rotatie: θ R-θ
• Verschalen: sx,sy,sz S 1/sx,1/sy,1/sz
• De inverse operaties:
•
Samengestelde transformaties• Meer complexe transformaties worden
gebouwd vanuit de basis transformaties met compositie van functies ( zie appendix 1)
• Voor matrix functies is compositie gelijk aan matrix vermenigvuldiging
• De standaard 3*3 matrix kan omgezet worden in een 4*4 matrix ( homogeen)
Instantie transformaties• Als een object gecreerd is met eigen
coordinatensysteem kunnen we een copie of een instantie plaatsen in een grotere scene
• Die scene is beschreven in een onafhankleijk coordinatensysteem
• We kunnen dan een coordinaten transformatie uitvoeren. Dit noemen we een instant transformatie
Wiskunde van projecties
• Er zijn fundamentele verschillen tussen de echte 3D-wereld en de beschrijving van een 2D plaatje ( projectie)
• Projectie is gedefinieerd als een afbeelding van punt P(x,y,z) op zijn beeld P’(x’,y’,z’) in het projectievlak (view plane) (zie fig 7-1)
Wiskunde van projecties• De afbeelding wordt bepaald door een
projectielijn genaamd projector die door P gaat en het projectievlak snijdt in P’
• Het resultaat is afhankelijk van de ruimtelijke relatie tussen de projectors (zie de klassificatie van projectie)
• De 2 basismethoden perspectief en parallel zijn ontworpen om het basis probleem van presentatie op te lossen
• Weergeven zoals het object zich voordoet en het behouden van echte grootte en vorm
Classificatie van projectie• Men kan verschillende projecties maken
afhankelijk van het beeld dat gewenst wordt
• In fig 7-2 is een classificatie gegeven van families van perspectieve en parallelle projecties
• Sommige hebben namen: cavalier, cabinet, isometrisch, enz
• Andere projecties kwalificeren het hoofdtype van een projectie ( verdwijnpunt voor 1 as)
Classificatie van projectie
Perspectief projectie • Basis principe
• De techniek van perspectieve projecties zijn generalisaties van het principe dat door kunstenaars is gebruikt om 3D weer te geven
• Het oog van de kunstenaar wordt geplaatst in het centrum van projectie en het doek ( het vlak van het doek) wordt het view plane
• Een beeldpunt wordt gevormd door een projector die vanuit het object punt (P1) gaat naar het centrum van projectie (C) (zie fig 7-3)
Perspectief projectie
Perspectief projectie • Perspectief tekeningen worden gekarakteriseerd
door 2 elementen:
1. Verkorting: Dit is de illusie dat objecten en lengten kleiner zijn als de afstand van het projectie centrum toeneemt ( fig. A geen verkorting, fig. B wel)
Perspectief projectie 2. Verdwijnpunt: De illusie dat parallelle lijnen
samenkomen in een punt ver verwijderd
• Dit punt heet verdwijnpunt
• Hoofdverdwijnpunten worden gevormd door parallelle lijnen evenwijdig aan de x,y of z-as
• Het aantal hoofdverdwijnpunten wordt bepaald door het aantal hoofdassen die het view plane snijden
Perspectief projectie
Wiskundige beschrijving van perspectieve projectie
• Een perspectief transformatie wordt bepaald door een projectiecentrum en een view plane
• Een view plane wordt bepaald door view referentiepunt R en view plane normaal N
• Het objectpunt wordt bepaald door wereldcoordinaten in P(x,y,z)
• Het probleem is de beeldpunt coordinaten P’(x’,y’,z’) te bepalen ( zie fig 7-3)
Wiskundige beschrijving van perspectieve projectie
• Voorbeeld 1:
• De standaard perspectief projectie is in fig 7-4 gegeven
Wiskundige beschrijving van perspectieve projectie
• Het view-plane is het xy vlak
• Projectiecentrum is C(0,0,-d) op de negatieve z-as
• Met behulp van driehoek ABC en A’OC wordt :
• Zie onderstaand figuur voor de verhouding van de y-waarde
B(0,0,z)
D(0,y,z)
D(0,y’,z)
O(0,0,0) C(0,0,-d)
y’y
dz
Wiskundige beschrijving van perspectieve projectie
• De perspectief transformatie tussen object en beeldpunt is niet lineair , daarom geen 3*3 matrix. We gebruiken homogene coordinaten
• De factor 1/(z+d) kan weggelaten worden want de grootte van de vector is niet van belang maar de richting
• Een algemene transformatie (met n=normaal op vlak en C(a,b,c)= projectiecentrum ) is in opg. 7.5 gegeven
Perspectief afwijkingen
• Het proces van perspectief introduceert afwijkingen van grootte en vorm
1. Verkorting Hoe verder een object weg hoe kleiner het voor ons verschijnt (zie fig 7-5)
Perspectief afwijkingen
2. Verdwijnpunt: Lijnen van projectie die niet parallel aan het view plane zijn verschijnen aan ons op enig punt op het view plane
• Een algemene manifestatie van deze afwijking is de illusie dat de spoorstaven een punt aan de horizon bereiken
Parallelle projectie
• Parallelle projectiemethoden worden gebruikt door tekenaars en engineers om werktekeningen te maken van een object , waarbij de schaal en vorm behouden blijven
• De complete presentatie van deze details vereist 2 of meer aanzichten (projecties) van het object op verschillende view planes
• Bij parallelle projectie worden beeldpunten gevonden als het snijpunt van het view plane met de projector die getekend wordt vanuit het objectpunt en heeft een vaste richting (zie fig 7-9)
Parallelle projectie
Parallelle projectie
• De richting van de projectie is gelijk voor alle projectors
• Orthografische projectie wordt gekenmerkt door het feit dat de richting van projectie loodrecht op het view plane is
• Als de richting evenwijdig aan de coordinaatas is, dan krijgen we vooraanzicht, bovenaanzicht en zijaanzicht van technische tekeningen (multiview tekeningen)
• Axonometrische projectie is orthografische projectie waarbij de richting van projectie niet evenwijdig is aan de coordinaatas
Parallelle projectie
• Niet orthografische parallelle projectie ( projectierichting loodrecht op view plane ) heet Oblique parallele projectie
Multiview tekening
Wiskundige beschrijving van Parallelle projectie
• Een parallelle projectieve transformatie wordt bepaald door de richting van de projectie vector V en een view plane
• Het view plane is gespecificeerd door zijn referentiepunt R0 en de normaal op het view plane N
• Het objectpunt P(x,y,z) in wereldcoordinaten
• Het probleem is om het beelpuntcoordinaat P(x’,y’,z’) te bepalen (zie fig 7-9)
• Als de projectievector V dezelfde richting heeft als N spreekt men van orthografisch ( anders oblique ( zie fig 7-10)
Wiskundige beschrijving van Parallelle projectie
Wiskundige beschrijving van Parallelle projectie
• Subcatogorie van orthografische projectie:
1. Isometrisch: De projectierichting heeft gelijke hoeken met alle 3 de hoofdassen
• L, B en H op schaal 1/1
• assenkruis met hoeken onder 120°
• eenvoudig
Wiskundige beschrijving van Parallelle projectie
Wiskundige beschrijving van Parallelle projectie
2. Dimetrisch: De projectierichting heeft gelijke hoeken met exact 2 van de hoofdassen
• H en B op schaal 1/1
• L op schaal 1/2
• Hoeken onder 7° en 42°
• niet eenvoudig
Wiskundige beschrijving van Parallelle projectie
Wiskundige beschrijving van Parallelle projectie
3. Trimetrisch: De projectierichting heeft geen gelijke hoeken met de hoofdassen
Wiskundige beschrijving van Parallelle projectie
• Subcategorieen van oblique projectie (projectierichting niet loodrecht op view plane)
1. Cavalier: De projectierichting is zo gekozen dat er geen verkorting plaats vindt loodrecht op xy-vlak
• Alle lijnen hebben de ware afmetingen (geen vervorming)
Wiskundige beschrijving van Parallelle projectie
2. Cabinet: De projectierichting is zo gekozen dat verkorting van een half plaats vindt loodrecht op xy-vlak
• Het voorvlak heeft de ware afmetingen (geen vervorming)
• Dit is wat de mens ziet ( meest gebruikt)
Wiskundige beschrijving van Parallelle projectie
• Voorbeeld 3:
• Bepaal de parallelle projectieve transformatie loodrecht op het xy vlak ( zie fig 7.11)
• De lijn loodrecht op het xy vlak gaat van P(x,y,z) naar P’(x’,y’,z’)
• Nu is P’(x’,y’,z’)= P’(x ,y ,0) zodat :
• Hierin K de vector evenwijdig aan z-as
Wiskundige beschrijving van Parallelle projectie
Wiskundige beschrijving van Parallelle projectie
• Hieruit volgt:
x’ = 1.x + 0.y +0.z + 0.1
y’ = 0.x + 1.y +0.z + 0.1
z’ = 0.x + 0.y +0.z + 0.1
1 = 0.x + 0.y +0.z + 1.1
• In matrix-vorm: