Upload
dangnhan
View
219
Download
0
Embed Size (px)
Citation preview
Computergraphik Grundlagen
IV. Koordinatensysteme und geometrische Transformationen
Prof. Stefan Schlechtweg Hochschule Anhalt
Fachbereich Informatik
2
Inhalt – Lernziele
1. Skalare Punkte und Vektoren 2. Koordinatensysteme
Kartesische Koordinaten Polarkoordinaten Sphärische Koordinaten
3. Transformationen in 2D Translation Skalierung Rotation Homogene Koordinaten Transformationsmatrizen Inverse Transformationen Zusammengesetzte Transformationen Weitere Transformationen
4. Affine Abbildungen 5. Transformationen in 3D 6. Koordinatentransformationen 7. Planare Orojektionen
Parallelprojektion Perspektivische Projektion Projektionsmatrizen
8. Zusammenfassung
Das mathematische Grundgerüst für Transformationen kennen
Verschiedene Koordinatensysteme kennen und anwenden können, Koordinaten zwischen den Koordinatensystemen umrechnen können
Transformationen als eine Grundlage der Computergraphik kennen und anwenden können
Das Konzept der Homogenen Koordinaten verstehen und beherrschen
Transformationsmatrizen in 2D kennen und herleiten können
Transformationsmatrizen in 3D kennen und anwenden können
Weitere Konzepte zu Koordinatensystemen und Transformationen überblicksartig beherrschen
Charakteristika und Arten planarer Projektionen kennenlernen
Mathematische Grundlagen planarer Projektionen verstehen
3
1. Skalare, Punkte, Vektoren
Mathematisches Grundgerüst für viele Anwendungen in der Computergraphik – Geometrische Modellierung in Koordinatensystemen – Rendering ist Transformationskette durch
Koordinatensysteme – Geometrische Modelle beschrieben durch Punkte und
Vektoren – Transformationen beschrieben durch Punkte,
Vektoren, Skalare, Matrizen – Animationen beschrieben durch Punkte, Vektoren,
Skalare, Matrizen
4
Skalare, Vektoren und Matrizen – Skalare – 0-dimensional – Vektoren – 1-dimensional, n Komponenten – Matrizen – 2-dimensional, n×m Elemente
Zusammenhang: – Komponenten eines Vektors bzw. Elemente einer
Matrix sind Skalare. – Zeilen bzw. Spalten einer Matrix sind Vektoren.
Warum Matrizen? – Beschreibung von Transformationen
(Transformationsmatrizen)
1. Skalare, Punkte, Vektoren
5
1. Skalare, Punkte, Vektoren
Skalare, Punkte und „Vektoren“ im 3D-Raum – Jeder Vektor (a,b,c) kann eindeutig in eine Linearkombination der
Elemente der Basis des Vektorraumes zerlegt werden: – (a,b,c) = a(1,0,0) + b(0,1,0) + c(0,0,1)
– Skalare sind reelle Zahlen. Bei Transformationen repräsentieren sie z.B. Drehwinkel und Skalierungsfaktoren.
x
y
z
(a,b,c)
a(1,0,0)
b(0,1,0)
c(0,0,1)
6
1. Skalare, Punkte, Vektoren
Punkt-Vektor Rechenregeln – Punkt + Punkt = undefiniert – Vektor ± Vektor = Vektor – Punkt ± Vektor = Punkt – Punkt - Punkt = Vektor – Skalar · Vektor = Vektor – Skalar · Punkt = Punkt
7
Vektorraum: enthält Vektoren und Skalare. In einem Vektorraum sind Operationen definiert, die Vektoren v und Skalare s verknüpfen. Multiplikation: f(v × s) → v Addition: f(v1,v2) → v
Affiner Raum ist ein Vektorraum, der um Punkte p erweitert wird. Punkte können subtrahiert werden. Subtraktion: f(p1, p2) → v
Euklidischer Raum ist ein affiner Raum, in dem skalare Werte quantifiziert werden, wobei das euklidische Abstandsmaß benutzt wird. In der CG nutzen wir vorrangig euklidische Räume.
1. Skalare, Punkte, Vektoren
8
Implementierung: – Graphikbibliotheken enthalten oft vordefinierte
Strukturen bzw. Klassen für Punkte, Vektoren und Matrizen.
– Diese enthalten Methoden zum „Rechnen“ mit Vektoren.
Beispiele: – Überladen von Operatoren zur Addition, Subtraktion – Bestimmung von Kreuz- und Skalarprodukt – Bestimmung der Größe eines Vektors
1. Skalare, Punkte, Vektoren
9
x
y
z
(a,b,c)
a(1,0,0)
b(0,1,0)
c(0,0,1)
Interpretation: Ein Vektor hat keine Position. Ausgehend von einem festen
Punkt (z.B. o) definiert ein Vektor einen Punkt.
Vektor (a,b,c) kann als Punkt im Raum dargestellt werden, der dem Endpunkt eines Vektors (a, b, c) ausgehend vom Koordinatenursprung (0,0,0) entspricht.
Äquivalentes gilt für andersdimensionale Vektorräume ℜn
2. Koordinatensysteme
10
Eine Menge (o, e1, e2, ..., en) bestehend aus einem Punkt o ∈ An und der Basis (e1, e2, ...,en) von An heißt Koordinatensystem.
Für jeden Punkt p ∈ An ist Ortsvektor von p Komponenten von v heißen Koordinaten bezüglich
(e1, e2, ..., en) d.h. p besitzt die Koordinaten (x1, x2, ..., xn):
Punkt o heißt Koordinatenursprung
2. Koordinatensysteme
11
2. Koordinatensysteme 2.1. Kartesische Koordinaten
zweidimensional
dreidimensional
x
y
y
x
y
z
linkshändiges Koordinatensystem
x
z rechtshändiges Koordinatensystem
X- Richtung des Daumens Y- Zeigefinger Z- Mittelfinger Die beiden Koordinaten- systeme sind spiegelbildlich und nicht durch Drehung ineinander zu überführen.
12
Punkte einer Ebene werden in Bezug auf einen Ursprung und eine Richtung angegeben
Umrechnung kartesische ↔ Polarkoordinaten x = r cos ϕ y = r sin ϕ
Quelle: Wikipedia
2. Koordinatensysteme 2.2. Polarkoordinaten
13
Polarkoordinaten erweitert um dritte Dimension
Position des Punktes eindeutig bestimmt durch einen Ursprung und zwei Winkel
Umrechnung: x = r sin θ cos ϕ y = r sin θ sin ϕ z = r cos θ
Quelle: Wikipedia
2. Koordinatensysteme 2.3. Sphärische Koordinaten
14
Fragestellung: – Wie werden Bewegungen beschrieben? – Wie berechnet man die Position von Objekten nach
Bewegungen?
Bewegungen = Transformationen – Veränderung der Position von Punkten – Verschiebung = Translation – Größenveränderungen = Skalierung – Drehung = Rotation – Weitere affine Transformationen:
• Spiegelung • Scherung
3. Transformationen in 2D
15
Punkt (x,y) wird auf gerader Linie nach (x’, y’) verschoben.
komponentenweise Addition von Vektoren
v’ = v + t
x’ = x + dx
y’ = y + dy
3. Transformationen in 2D 3.1. Translation
(x,y)
(x‘,y‘)
dx
dy
16
3. Transformationen in 2D 3.1. Translation
dx = 4 dy = 4
Y
X 0 1
1
2
2
3 4 5 6 7
3
4
5
6
Komponentenweise Addition v’ = v + t
x’ = x + dx y’ = y + dy
Polygone verschieben: Eckpunkte verschieben (Vektoren) und dann Kanten dazwischen neu zeichnen
erhält Länge ( isometrisch ) erhält Winkel ( konformal )
17
3. Transformationen in 2D 3.2. Skalierung
v’ = S . v
x’ = Sx . x y’ = Sy . y
Zentrum der Skalierung ist o Uniforme Skalierung
Sx = Sy
Nicht-uniforme Skalierung Sx <> Sy
(x,y)
(x‘,y‘)
o
18
v’ = S . v
x’ = Sx . x y’ = Sy . y
Längen werden nicht erhalten Winkel werden nicht erhalten (nur bei uniformer Skalierung)
3. Transformationen in 2D 3.2. Skalierung
Y
X 0 1
1
2
2
3 4 5 6 7 8 9 10
3
4
5
6
(3,1) (2,1) (6,2) (9,2)
Sx = 3 Sy = 2
19
3. Transformationen in 2D 3.3. Rotation
Rotationszentrum ist o. Punkt (x,y) wird um den
Winkel θ um o gedreht, so dass sich der Punkt (x‘,y‘) ergibt.
Positive Werte von θ ergeben eine Drehung entgegen dem Uhrzeigersinn. (x,y)
(x‘,y‘)
θ
o
20
(x,y)
(x‘,y‘)
r
r
θ φ
r cosφ r cos(θ + φ) x
y
Herleitung der Berechnungsvorschrift: Entfernung r vom Ursprung zu (x,y) bzw. (x‘,y‘) bleibt unverändert. Nutzung von Additionstheoremen für Winkelfunktionen.
3. Transformationen in 2D 3.3. Rotation
(I) in (III) und (IV) sowie (II) in (III) und (IV) einsetzen:
x’ = x cosθ – y sinθ y’ = x sinθ + y cosθ
y’ = r sin (θ + φ )
= r cos φ sin θ + r sin φ cosθ
(IV)
x’ = r cos (θ + φ )
= r cos φ cos θ - r sin φ sinθ
(III)
(I) (II) x = r cos φ y = r sin φ
21
3. Transformationen in 2D 3.3. Rotation
v’ = R θ . v
x’ = x cosθ – y sinθ y’ = x sinθ + y cosθ
Rotationen um negative Winkel erfolgen mit dem Uhrzeigersinn
ausnutzen: cos(-θ) = cos(θ) und sin(-θ) = -sin(θ)
Längen und Winkel werden erhalten
Y
X 0 1
1
2
2
3 4 5 6 7 8 9
3
4
5
6
22
Was, wenn Objekt nicht im Ursprung liegt? Lösung: in den Ursprung verschieben, rotieren, zurück verschieben. Skalierung erfordert ähnliche Behandlung, da außerhalb des
Ursprungs zusätzlich eine Translation erfolgt
3. Transformationen in 2D 3.3. Rotation
23
3. Transformationen in 2D 3.4. Homogene Koordinaten
Translation: v’ = v + t
Skalierung: v’ = S v
Rotation: v’ = Rθ v
Zusammenfassung schwierig auszudrücken, da Translation keine Matrixmultiplikation
Schwierig bei zusammengesetzten Transformationen! Einheitliche Repräsentation von Transformationen
gesucht → Homogene Koordinaten
24
3. Transformationen in 2D 3.4. Homogene Koordinaten
Ein Koordinatensystem wird in ein homogenes Koordinatensystem überführt, indem eine zusätzliche Dimension eingeführt wird: n → n+1 Dimensionen.
Ein Punkt (x, y) wird in homogenen Koordinaten durch das Tripel (x·w, y·w, w) repräsentiert, mit w≠0.
Normalisierte Darstellung: w = 1 ⇒ (x, y, 1)
Jeder Punkt hat unendlich viele äquivalente Repräsentationen in homogenen Koordinaten.
Achtung: Homogene Koordinaten von 2D-Punkten nicht mit „normalen“ 3D-Koordinaten verwechseln!
25
3. Transformationen in 2D 3.4. Homogene Koordinaten
Veranschaulichung in 2D – Punkt P=(x,y) wird erweitert zu P‘=(x,y,1) – Homogene Koordinaten von P ergeben Gerade in „3D“, da alle
Punkte P‘=(x,y,w) den gleichen Punkt P in 2D repräsentieren
x
y
w
w=1
P
P‘
P‘‘
26
Vorteile: – Repräsentation aller Punkte in homogenen Koordinaten ermöglicht
einheitliche Behandlung der Transformationen
Fragen: – Was steht für das Fragezeichen? – Welche Operation ist * ?
Antwort: – Transformationen werden als Matrizen repräsentiert – Verknüpfung durch Multiplikation
?
3. Transformationen in 2D 3.4. Homogene Koordinaten
27
Translation – Vorher: Addition eines Vektors – Jetzt: Multiplikation mit einer Translationsmatrix
Skalierung – Vorher: komponentenweise Multiplikation mit
Skalierungsfaktoren – Jetzt: Multiplikation mit einer Skalierungsmatrix
3. Transformationen in 2D 3.5. Transformationsmatrizen
28
Rotation – Vorher: komplexe Gleichung oder Matrixmultiplikation – Jetzt: Multiplikation mit einer Rotationsmatrix
Allgemeine 2D-Transformationsmatrix
Skalierung
Rotation
Translation
3. Transformationen in 2D 3.5. Transformationsmatrizen
29
Inverse Transformationen: – Frage: Wie macht man Transformationen rückgängig (was sind die
inversen Transformationen)? – Bsp.: Benutzer betätigt Undo-Taste
– Für elementare Transformationen einfach: • Translation: Verschiebung um den negativen
Verschiebungsvektor T-1(dx, dy) = T(-dx, -dy)
• Skalierung: Skalierung mit dem reziproken Skalierungsfaktor S-1( θ) = S
(1/ θ) • Rotation: Rotation um den negativen Rotationswinkel.
Da aber Rotationsmatrizen orthogonal sind, gilt R-1 = RT.
3. Transformationen in 2D 3.6. Inverse Transformationen
30
Nacheinanderausführung zweier Translationen
– Translation ist additiv, d.h. Ergebnis ist eine Verschiebung um die Summe beider Vektoren
Nacheinanderausführung zweier Skalierungen
– Skalierung ist multiplikativ, d.h. Ergebnis ist eine Skalierung um das Produkt der beiden Faktoren.
⇒
⇒
3. Transformationen in 2D 3.7. Zusammengesetzte Transformationen
31
Nacheinanderausführung zweier Rotationen
– Rotation ist additiv.
Allgemein: Homogene Koordinaten – Ermöglichen Vereinheitlichung und Kombination aller
geometrischen Transformationen
Schreibweise – Transformationen werden in der Reihenfolge T1, T2, ..., Tn
ausgeführt ⇒ P‘=Tn·...·T2·T1·P
3. Transformationen in 2D 3.7. Zusammengesetzte Transformationen
32
Zusammensetzen von Transformationen – Rotation eines Punktes um einen beliebigen Punkt P1 in der
Ebene – Ausführung in drei Schritten
1. Translation, so dass P1 im Ursprung liegt 2. Rotation um den Ursprung 3. Rück-Translation von P1
P1 P1
3. Transformationen in 2D 3.7. Zusammengesetzte Transformationen
33
Zerlegung von komplizierten Transformationen in elementare Transformationen
Repräsentation der Gesamt-Transformation durch eine Matrix möglich
3. Transformationen in 2D 3.7. Zusammengesetzte Transformationen
34
Aber: Matrixmultiplikation ist i.a. nicht kommutativ! Das bedeutet: Reihenfolge der Transformationen ist
ausschlaggebend für das Ergebnis also: Tn...T2T1P ≠ T1T2...TnP ≠ T2Tn...T1P wenn die Ti
voneinander verschiedene Transformationen sind Allerdings in einigen Fällen besteht Kommutativität:
– Nacheinanderausführung von Translationen – Nacheinanderausführung von Skalierungen – Nacheinanderausführung von Rotationen
3. Transformationen in 2D 3.7. Zusammengesetzte Transformationen
35
Spiegelung – an der x-Achse – an der y-Achse – wird implementiert als
Skalierung mit dem Faktor -1
3. Transformationen in 2D 3.8. Weitere Transformationen
36
Scherung – Versatz parallel zur x-
Achse, proportional zur y-Position (bzw. umgekehrt)
– in x-Richtung
– in y-Richtung
3. Transformationen in 2D 3.8. Weitere Transformationen
(x,y) (x‘,y‘)
a=1, y=4
a=1, y=1
37
Jede Sequenz von Rotation, Translation und Skalierung erhält die Parallelität von Linien, aber nicht Längen und Winkel.
Solche Transformationen heißen affine Transformationen / Abbildungen. Eine affine Abbildung ist eine Abbildung zwischen zwei Vektorräumen (oder
affinen Räumen), die Kollinearitäten (Bilder von Punkten, die auf einer Geraden liegen, liegen wieder auf einer Geraden) und Abstandsverhältnisse paralleler Strecken bewahrt.
mathematisch ausgedrückt: Eine Abbildung Φ: ℜ³ → ℜ³ heißt affin, falls
für alle λi∈ℜ mit Σλi=1 Die affinen Abbildungen umfassen alle linearen Abbildungen (z. B.
Rotation, Skalierung, Scherung) und ergänzen diese um die Translationen.
4. Affine Abbildungen
38
Affine Abbildungen sind: – Geradentreu. Das Bild einer Geraden ist wieder eine Gerade. – Parallelentreu. Parallele Geraden haben parallele Bildgeraden. – Teilverhältnistreu. Dem Teilverhältnis auf einer Geraden entspricht das Teilverhältnis
auf der Bildgeraden. – Bsp: Wenn Punkt C Strecke AB im Verhältnis 1:2 teilt, dann liegt C´auf A´B´und teilt
A´B´im gleichen Verhältnis.
Affine Abbildungen sind: – nicht verhältnistreu in Bezug auf Teilflächen – Bsp: Wenn ein Punkt D das Dreieck ABC in drei gleich große Dreiecke ABD, ACD
und BCD teilt, dann ist das Verhältnis der Flächen von A´B´D´zu A´C´D´zu B´C´D´im allgemeinen nicht 1:1:1.
– nicht längentreu – nicht winkeltreu – nicht flächentreu.
4. Affine Abbildungen
A B
C
D
39
4. Affine Abbildungen
Jede affine Abbildung läßt sich in homogenen Koordinaten mit einer Matrix darstellen:
Transformationsmatrizen als Werkzeug in der Computergraphik
40
5. Transformationen in 3D
Vorgehensweise gleich zu 2D Repräsentation in homogenen Koordinaten (4D)
Transformationsmatrizen demzufolge 4×4-Matrizen
41
5. Transformationen in 3D
Translation – Addition eines Translationsvektors bzw. Multiplikation mit einer
Translationsmatrix
Skalierung – Multiplikation mit Skalierungsfaktoren bzw. Multiplikation mit
einer Skalierungsmatrix
uniforme Skalierung, wenn sx=sy=sz, sonst Nicht-uniforme Skalierung
42
Rotation – Rotationen um die verschiedenen Koordinatenachsen
müssen betrachtet werden. – 3 verschiedene Rotationsmatrizen (Rotation um positive
Winkel in rechtshändigem Koordinatensystem)
– Achse, um die gedreht wird, bleibt „Einheitsvektor“ in der Matrix
5. Transformationen in 3D
43
Warum unterschiedliche Vorzeichen bei den Winkeln (Sinus)?
gegenüber der 2D-Herleitung: Spiegelung an der x-Achse
→ (x, -y) ⇒ (sin θ = - sin (- θ ), cos (- θ) = cos θ
x
y
z rechtshändiges Koordinatensystem
x
z
5. Transformationen in 3D
44
Überführung rechtshändiges in linkshändiges Koordinatensystem (Spiegelung)
5. Transformationen in 3D
45
Zusammensetzen von Transformationen – auch über Multiplikation der Matrizen – generelle Transformationsmatrix in 3D
Skalierung
Rotation
Translation
5. Transformationen in 3D
46
6. Koordinatentransformationen
Bisher: Transformation von Punkten in neue Punkte bei konstantem Koordinatensystem („geometrische Transformationen“)
Äquivalente Sichtweise: Wechsel des Koordinatensystems bei konstanten geometrischen Objekten („Koordinatentransfor-mationen“)
Allgemein gilt: – Geometrische Transformationen und entsprechende Koordinatentransformationen sind
invers zueinander!
M21
Quelle: Stefanie Schraufstetter, TU München
47
7. Planare Projektionen
Hans Vredemann de Vries: Perspektiv 1604
A painting [the projection plane] is the intersection of a visual pyramid [view volume] at a given distance, with a fixed center [center of projection] and a defined position of light, represented by art with lines and colors on a given surface [the rendering]. (Alberti, 1435)
48
7. Planare Projektionen
Albrecht Dürer: Der Zeichner der Laute
49
7. Planare Projektionen
Planare Projektionen: – Projektionsstrahlen sind Geraden – Gerade Linien werden auf gerade Linien abgebildet (es
entstehen keine Krümmungen). – Projektionsfläche ist eine Ebene.
50
7. Planare Projektionen
Wichtige Begriffe und Abkürzungen: – Parallelprojektion ist charakterisiert durch die Richtung der
Projektion (direction of projection, dop) – Perspektivische Projektion ist charakterisiert durch das
Projektionszentrum (center of projection, cop) – Ebene auf die das Bild projiziert wird: Sichtebene (view plane). – Vektor, der senkrecht zur Projektionsebene steht: Normale der
Sichtebene (view plane normal, vpn). – Strahlen, die die Projektion charakterisieren: Projektoren. Bei
perspektivischer Projektion gehen sie vom cop aus und divergieren; bei der Parallelprojektion sind sie parallel.
51
7. Planare Projektionen
3D nach 2D Wesentliche Klassen von geometrische Projektionen
– Perspektivische (Center of Projection, COP) – Parallele (Projektionsrichtung, DOP)
Quelle: Foley, van Dam, Feiner, Hughes 1990
52
7. Planare Projektionen
rechtwinklig schief ein Fluchtpunkt
zwei Fluchtpunkte
drei Fluchtpunkte Tafelprojektion axonometrisch
Grundriss
Aufriss
Seite
isometrisch
dimetrisch
trimetrisch
Kavalier
Kabinett
.....
53
Parallelprojektion – Projektionszentrum liegt im
Unendlichen → Projektions- strahlen verlaufen parallel
– Keine perspektivische Verkürzung
– Parallele Linien bleiben parallel. – Unterschiede: Winkel zwischen vpn und dop sowie Winkel zwischen dop
und den Koordinatenachsen – Typische Anwendungen:
• Darstellung von architektonischen Modellen (Gebäuden), die im wesentlichen durch rechtwinklige Bestandteile charakterisiert sind
• Darstellung medizinischer Daten
7. Planare Projektionen 7.1. Parallelprojektionen
54
7. Planare Projektionen 7.1. Parallelprojektionen 7.1.1. Rechtwinklige Projektionen
Seitenansicht, Vorderansicht, Draufsicht Tafelprojektionen: Rechtwinklige Parallelprojektion, bei der
Sichtebene parallel zu einer Koordinatenachse ist.
55
7. Planare Projektionen 7.1 Parallelprojektionen 7.1.2. Axonometrische Projektionen
Isometrisch: – Winkel zwischen den drei Hauptachsen gleich (120º). – Längenverkürzung
Dimetrisch: – Winkel zwischen zwei der Hauptachsen gleich
Trimetrisch: – Winkel zwischen den Hauptachsen jeweils
unterschiedlich
56
7. Planare Projektionen 7.1. Parallelprojektionen 7.1.3. Isometrische Projektion
iso-metric (griechisch für „gleiches maß“) – gleiche Verkürzung aller drei Hauptachsen – gleiche Winkel (120º) zwischen den Projektionen der Achsen
Projektionsebene schneidet jede Hauptachse in 45°
120 º
120 º 120 º x y
z
120 º 120 º
120 º
57
7. Planare Projektionen 7.1. Parallelprojektionen 7.1.3. Isometrische Projektion
Age of Empires II ©Microsoft Corporation
58
7. Planare Projektionen 7.1. Parallelprojektionen 7.1.4. Schräge (schiefe) Parallelprojektion
Projektionsstrahlen nicht senkrecht zur Bildebene
Typen: Kavalierperspektive, Kabinettperspektive
59
7. Planare Projektionen 7.1. Parallelprojektionen 7.1.4. Schräge Parallelprojektion
Kavalier: Winkel zwischen Projektoren und Projektionsebene: 45°. Keine Längenverkürzung.
Kabinett: Winkel zwischen Projektoren und Projektionsebene : arctan(2) = 63.4º. Verkürzung um 50%.
Quelle: Foley, van Dam, Feiner, Hughes ´90
Quelle: Foley, van Dam, Feiner, Hughes ´90
60
7. Planare Projektionen 7.1. Parallelprojektionen 7.1.4. Schräge Parallelprojektion
Kabinettperspektive Kavalierperspektive Rechtwinklige Projektion
61
Rechtwinklig
Axonometrisch
Schräg
– VPN || einer Hauptkoordinatenachse
– DOP || VPN
– zeigt eine Fläche, korrekte Abmessungen
– VPN || einer Hauptkoordinatenachse
– DOP || VPN
– zeigt mehrere Flächen, keine exakt, einheitliche Verkürzung (parallele Linien erhalten, Winkel nicht)
– VPN || einer Hauptkoordinatenachse
– DOP || VPN
– zeigt mehrere Flächen, eine korrekt, andere einheitlich verkürzt
(DOP = Direction of Projection, VPN = View Plane Normal)
62
7. Planare Projektionen 7.2. Perspektivische Projektion
Betrachter im COP Näher an der visuellen Wahrnehmung als
Parallelprojektion Unterteilung nach der Anzahl der Fluchtpunkte
(Schnittpunkte parallerer Geraden in x-, y- und z-Richtung). – 1, 2, 3
Quelle: Angel (2000)
Quelle: Baugemeinsachft Passiv+
63
7. Planare Projektionen 7.2. Perspektivische Projektion
64
7. Planare Projektionen 7.2. Perspektivische Projektion
1-Punkt-Perspektive: – Die Projektions-
ebene schneidet nur eine der 3 Koordinatenachsen
2-Punkt-Perspektive: – Die Projektions-
ebene schneidet zwei der 3 Koordinatenachsen
3-Punkt-Perspektive: – Die Projektions-
ebene schneidet alle drei Koordinatenachsen
65
7. Planare Projektionen 7.2. Perspektivische Projektion
Sichtebene in Relation zu den Koordinatenachsen
Quelle: M . Haller, FH Hagenberg, (2002)
66
7. Planare Projektionen 7.2. Perspektivische Projektion
Eigenschaften: – Bei allen Arten perspektivische Verkürzung – Parallelität von Linien und Winkel werden im
allgemeinen nicht erhalten. – Unterschiedliche Anzahl der Fluchtpunkte resultiert
aus dem Winkel zwischen Sichtebene und den Ebenen aus je zwei Koordinatenachsen.
– 3 Fluchtpunkte, wenn die Projektionsebene alle Ebenen (xy, xz und yz) schneidet. 1 Fluchtpunkt, wenn Sichtebene parallel zu einer der drei Ebenen.
67
7. Planare Projektionen 7.3. Projektionsmatrizen 7.3.1. Perspektivische Projektion
Herleitung der Transformationsmatrix für die Zentralprojektion für folgendes Beispiel:
– Projektionszentrum liegt im Ursprung
– Projektionsebene ist die Ebene z = d
– aus der Ähnlichkeit der Dreiecke (0,0,0), (x,0,z),(x‘,0,d) und (0,0,0),(0,y,z),(0,y‘,d) ergibt sich für x‘:
– und analog für y‘:
68
7. Planare Projektionen 7.3. Projektionsmatrizen 7.3.1. Perspektivische Projektion
69
7. Planare Projektionen 7.3. Projektionsmatrizen 7.3.1. Perspektivische Projektion
Herleitung der Transformationsmatrix für die Zentralprojektion für folgendes Beispiel:
– Projektionszentrum liegt im Punkt (0,0,-d)
– Projektionsebene ist die Ebene z = 0
70
7. Planare Projektionen 7.3. Projektionsmatrizen 7.3.2. Parallelprojektion
Wie sieht die Projektionsmatrix für die Parallelprojektion aus? – Projektionsrichtung: (0,0,-1) – Projektionsebene: z = 0 – d.h. perspektivische Projektion auf z=0 mit – Projektionszentrum (0,0,-d) und „d = ∞“
71
8. Zusammenfassung
Geometrische Transformationen sind lineare Abbildungen vom ℜn in den ℜn
– für uns von besonderem Interesse ℜ2 → ℜ2 und ℜ3 → ℜ3
Für Computergraphik relevant: – Translation – Skalierung – Rotation – Scherung, Spiegelung
Einheitliche Behandlung der Transformationen durch Übergang zu homogenen Koordinaten und zur Darstellung der Transformationen durch Matrizen
72
Zusammengesetzte Transformationen durch Hintereinanderausführen von elementaren Transformationen, entspricht Multiplikation der Matrizen.
Transformation der Objekte oder des Koordinaten-systems
Verschiedene Arten von Projektionen entsprechend des Darstellungsziels
Projektionen lassen sich ebenfalls durch homogene Transformationsmatrizen repräsentieren
8. Zusammenfassung
73
Video: Geri‘s Game
Ziel: Realistische Animation menschlicher Körper und Bekleidung
Erstmalig Einsatz von Subdivision Surfaces zur Modellierung für Animationen – Spezielle Art der Polygonnetze – Computergraphik II
Academy Award for Best Animated Short Film 1998