glOrtho: Unterschied zwischen den Versionen
DGLBot (Diskussion | Beiträge) K (Bot: konvertiere/korrigiere <BR>) |
Flo (Diskussion | Beiträge) (Artikel Synatx maessig aktuallisiert) |
||
Zeile 13: | Zeile 13: | ||
== Parameter == | == Parameter == | ||
− | + | {| border=1 rules=all | |
− | + | ! '''left, right, bottom, top''' | |
− | + | | Definieren die 4 [[Clipping Plane]]s. | |
− | + | |- | |
− | + | ! '''znear, zfar''' | |
− | + | | Setzen die Nah- und Fern- Clippingplane. Wenn die Fläche hinter dem User sein soll müssen die Angaben negativ sein. | |
− | + | |} | |
− | |||
− | |||
== Beschreibung == | == Beschreibung == | ||
Zeile 38: | Zeile 36: | ||
'''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.) <br> | '''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.) <br> | ||
− | Damit dient die Z-koordiante nur noch zur "Anordnung"" von Vorder- und Hintergründen auf der 2D-Zeichenfläche. | + | 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.'' | ''Objekte die einen kleineren Z-Koordinate als ''znear'' bzw. einen größeren als ''zfar'' haben, werden nicht gezeichnet.'' | ||
− | + | ||
+ | |||
== Fehlermeldungen == | == Fehlermeldungen == | ||
− | '''GL_INVALID_VALUE''' wird generiert wenn zNear gleich zFar, left gleich right oder top gleich bottom ist. | + | * '''GL_INVALID_VALUE''' wird generiert wenn zNear gleich zFar, left gleich right oder top gleich bottom ist. |
+ | |||
+ | * '''GL_INVALID_OPERATION''' wird generiert wenn '''glOrtho''' innerhalb eines [[glBegin]]-[[glEnd]] Blocks aufgerufen wird. | ||
+ | |||
− | |||
− | |||
== Zugehörige Werterückgaben == | == Zugehörige Werterückgaben == | ||
Zeile 54: | Zeile 55: | ||
[[glGet]] mit Token [[glGet#GL_PROJECTION_MATRIX|GL_PROJECTION_MATRIX]]<br> | [[glGet]] mit Token [[glGet#GL_PROJECTION_MATRIX|GL_PROJECTION_MATRIX]]<br> | ||
[[glGet]] mit Token [[glGet#GL_TEXTURE_MATRIX|GL_TEXTURE_MATRIX]] | [[glGet]] mit Token [[glGet#GL_TEXTURE_MATRIX|GL_TEXTURE_MATRIX]] | ||
− | |||
Version vom 5. Mai 2006, 15:26 Uhr
Inhaltsverzeichnis
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. Beide Ebenen, die Nahe und die Ferne Schnittebene (Clipping Plane), können negative Werte annehmen.
mit f = zFar, n = zNear
l = left, r = right
t = top, b = bottom
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_VALUE wird generiert wenn zNear gleich zFar, left gleich right oder top gleich bottom ist.
- GL_INVALID_OPERATION wird generiert wenn glOrtho 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
glFrustum, glMatrixMode, glMultMatrix, glPushMatrix, glViewport, gluPerspective