Computergraphik Grundlagen - mttcs.org · Transformationen in 3D 6. Koordinatentransformationen 7....

Preview:

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

Recommended