Zur Abbildung einer dreidimensionalen Szene aus den Weltkoordinaten auf
den Bildschirm muß eine natürliche Betrachtersicht
(View Orientation)
definiert werden.
Eine solche Betrachtersicht besteht aus den Viewing-Parametern
- Betrachterstandpunkt
(Projection Reference Point;
auch Eyepoint),
- Blickrichtung
(View Reference Point),
- vertikale Orientierung
(View Up Vector) oder
(View Up Point),
- Blickwinkel (Brennweite).
Der fiktive Betrachter blickt vom
in Richtung
und
kippt dabei die Kamera so um die Blickrichtung,
daß
von ihm aus gesehen vertikal nach oben zeigt.
Der Blickwinkel entspricht der Brennweite und regelt den Bildausschnitt
(Zooming).
Durch diese Parameter wird das VRC
(View Reference Coordinate System) definiert mit
als Ursprung und
auf der positiven
-Achse.
Die
-Ebene
wird als View Plane bezeichnet und steht senkrecht auf der
Blickrichtung.
Die
-Achse ist gegeben durch die
Projektion von
in die View Plane.
Deshalb darf
nicht parallel zur Blickrichtung sein.
Das VRC hat die gleiche
Metrik wie das WC.
Es handelt sich also um einen Wechsel des Koordinatensystems.
Die entsprechende Matrix, die den Wechsel vom WC ins VRC durchführt ergibt
sich, wenn man die Vektoren
,
und
und die homogenen Koordinaten
des
bzgl. des WC als Spaltenvektoren nebeneinander schreibt und diese
Matrix anschließend invertiert.
Der Abstand zwischen
und
wird als
(View Plane Distance) bezeichnet.
Abbildung
15.3: Definition des VRC
Für die Anwendung des Viewings ergeben sich im Programm
verschiedene Möglichkeiten:
- Soll ein Objekt von verschiedenen Seiten betrachtet werden,
so wird
in das Objekt gelegt.
Durch
läßt sich nun die Blickrichtung
frei wählen.
Der Vektor
kann dabei konstant bleiben, sofern nicht
senkrecht von oben oder unten geschaut wird.
- Soll sich die Szene bei konstantem Standpunkt um den Betrachter drehen,
wird
festgesetzt.
Durch Veränderung des
bewegt sich dann die
Szene vor dem Auge des Betrachters.
Der
kann dabei konstant bleiben,
solange er nicht kollinear zum Vektor durch
und
wird.
- Eine weitere Möglichkeit sind Animationen,
bei denen sich z.B. der Beobachter
vorwärts in die Szene hineinbewegt.
Dieser Effekt läßt sich durch Verschieben von
und
um denselben Vektor erzielen.