glOrtho: Unterschied zwischen den Versionen

Aus DGL Wiki
Wechseln zu: Navigation, Suche
K (Beschreibung)
(Beschreibung)
Zeile 26: Zeile 26:
 
Benutzen Sie [[glPushMatrix]] und [[glPopMatrix]] um den aktuellen [[Matrixstack]] zu speichern und zu laden.
 
Benutzen Sie [[glPushMatrix]] und [[glPopMatrix]] um den aktuellen [[Matrixstack]] zu speichern und zu laden.
  
Die beiden Punkte (''left, bottom, -near'') und (''right, top, -near'') befinden sich auf der Nah-[[Clipping Plane]] und werden auf die linke-untere und rechte-obere Ecke des Fensters gemappt/abgebildet. Dabei wird die Position des Auges an Position (0,0,0) angenommen. ''-far'' bestimmt die Position der Fernen-Clipping Plane. Bei de Ebenen, die Nahe und die Ferne Schnittebene (Clipping Plane), können negative Werte annehmen.
+
Die beiden Punkte (''left, bottom, -near'') und (''right, top, -near'') befinden sich auf der Nah-[[Clipping Plane]] und werden auf die linke-untere und rechte-obere Ecke des Fensters gemappt/abgebildet. Dabei wird die Position des Auges an Position (0,0,0) angenommen. ''-far'' bestimmt die Position der Fernen-[[Clipping Plane]]. Bei de Ebenen, die Nahe und die Ferne Schnittebene (Clipping Plane), können negative Werte annehmen.
  
 
<div align="center"> Die erstellete Matrix hat die Form: [[Bild:glOrtho_Matrix1.gif]]</div>
 
<div align="center"> Die erstellete Matrix hat die Form: [[Bild:glOrtho_Matrix1.gif]]</div>
Zeile 37: Zeile 37:
 
Damit dient die Z-koordiante nur noch zur "Anordnung"" von Vorder- und Hintergründen auf der 2D-Zeichenfläche. <br>
 
Damit dient die Z-koordiante nur noch zur "Anordnung"" von Vorder- und Hintergründen auf der 2D-Zeichenfläche. <br>
  
Objekte die einen kleineren Z-Koordinate als ''znear'' bzw. einen größeren als ''zfar'' haben, werden nicht gezeichnet.
+
''Objekte die einen kleineren Z-Koordinate als ''znear'' bzw. einen größeren als ''zfar'' haben, werden nicht gezeichnet.''
 
<br>
 
<br>
 +
 +
== Fehlermeldungen ==
 +
'''GL_INVALID_OPERATION''' wird generiert wenn '''glTexGen''' innerhalb eines [[glBegin]]-[[glEnd]] Blocks aufgerufen wird.
 +
<br>
 +
 +
== Zugehörige Werterückgaben ==
 +
[[glGet]] mit Token [[glGet#GL_MATRIX_MODE|GL_MATRIX_MODE]]<br>
 +
[[glGet]] mit Token [[glGet#GL_MODELVIEW_MATRIX|GL_MODELVIEW_MATRIX]]<br>
 +
[[glGet]] mit Token [[glGet#GL_PROJECTION_MATRIX|GL_PROJECTION_MATRIX]]<br>
 +
[[glGet]] mit Token [[glGet#GL_TEXTURE_MATRIX|GL_TEXTURE_MATRIX]]
 +
  
 
<br>
 
<br>

Version vom 25. Mai 2005, 00:33 Uhr

glOrtho

Name

glOrtho - aktiviert einen orthogonalen 2D-Rendermodus


Delphi-Spezifikation

procedure glOrtho(left, right, bottom, top, znear, zfar : double); 


Parameter

left, right, bottom, top Definieren die 4 Clipping Planes.
znear, zfar Setzen die Nah- und Fern- Clippingplane. Wenn die Fläche hinter dem User sein soll müssen die Angaben negativ sein.


Beschreibung

glOrtho erstellt eine Matrix für Parallel-Projektion. Die aktuelle Matrix wird dabei mit der neu erstellten Matrix multipliziert. Das bedeutet, wenn M die aktuelle und O die orthogonale Matrix ist, ergibt sich die neue Matrix aus: M := M*O

Benutzen Sie glPushMatrix und glPopMatrix um den aktuellen Matrixstack zu speichern und zu laden.

Die beiden Punkte (left, bottom, -near) und (right, top, -near) befinden sich auf der Nah-Clipping Plane und werden auf die linke-untere und rechte-obere Ecke des Fensters gemappt/abgebildet. Dabei wird die Position des Auges an Position (0,0,0) angenommen. -far bestimmt die Position der Fernen-Clipping Plane. Bei de Ebenen, die Nahe und die Ferne Schnittebene (Clipping Plane), können negative Werte annehmen.

Die erstellete Matrix hat die Form: Datei:glOrtho Matrix1.gif


glOrtho schaltet OpenGL praktisch in einen 2D-Modus, wo die Z-Koordiante keine Rolle mehr im Bezug auf die letztendliche Größe eines Objektes hat (weit entfernte Objekte (mit hoher Z-Koordinate) werden genau so groß gezeichnet, wie Nahe.)
Damit dient die Z-koordiante nur noch zur "Anordnung"" von Vorder- und Hintergründen auf der 2D-Zeichenfläche.

Objekte die einen kleineren Z-Koordinate als znear bzw. einen größeren als zfar haben, werden nicht gezeichnet.

Fehlermeldungen

GL_INVALID_OPERATION wird generiert wenn glTexGen innerhalb eines glBegin-glEnd Blocks aufgerufen wird.

Zugehörige Werterückgaben

glGet mit Token GL_MATRIX_MODE
glGet mit Token GL_MODELVIEW_MATRIX
glGet mit Token GL_PROJECTION_MATRIX
glGet mit Token GL_TEXTURE_MATRIX



Siehe auch

glViewport, gluPerspective