glPushMatrix-Funktion

Die Funktionen glPushMatrix und glPopMatrix pushen und popen den aktuellen Matrixstapel.

Syntax

void WINAPI glPushMatrix(void);

Parameter

Diese Funktion besitzt keine Parameter.

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Fehlercodes

Es ist ein Fehler, einen vollständigen Matrixstapel zu pushen oder einen Matrixstapel zu popen, der nur eine einzelne Matrix enthält. In beiden Fällen wird das Fehlerflag festgelegt, und es wird keine andere Änderung am OpenGL-Zustand vorgenommen.

Die folgenden Fehlercodes können von der glGetError-Funktion abgerufen werden.

Name Bedeutung
GL _ STACK _ OVERFLOW
Die Funktion wurde aufgerufen, während der aktuelle Matrixstapel voll war.
GL _ INVALID _ OPERATION
Die Funktion wurde zwischen einem Aufruf von glBegin und dem entsprechenden Aufruf von glEndaufgerufen.

Bemerkungen

Es gibt einen Stapel von Matrizen für jeden Matrixmodus. Im GL _ MODELVIEW-Modus beträgt die Stapeltiefe mindestens 32. In den anderen beiden Modi GL _ PROJECTION und GL TEXTURE beträgt die Tiefe mindestens _ 2. Die aktuelle Matrix in einem beliebigen Modus ist die Matrix oben im Stapel für diesen Modus.

Die glPushMatrix-Funktion pusht den aktuellen Matrixstapel um eins nach unten, wodurch die aktuelle Matrix dupliziert wird. Das heißt, nach einem glPushMatrix-Aufruf ist die Matrix oben im Stapel identisch mit der matrix darunter. Die glPopMatrix-Funktion füllt den aktuellen Matrixstapel auf und ersetzt die aktuelle Matrix durch die matrix darunter auf dem Stapel. Anfänglich enthält jeder der Stapel eine Matrix, eine Identitätsmatrix.

Die folgenden Funktionen rufen Informationen im Zusammenhang mit glPushMatrix und glPopMatrix ab:

glGet mit argument GL _ MATRIX _ MODE

glGet mit argument GL _ MODELVIEW _ MATRIX

glGet mit argument GL _ PROJECTION _ MATRIX

glGet mit Argument GL _ TEXTURE _ MATRIX

glGet mit dem Argument GL _ MODELVIEW _ STACK _ DEPTH

glGet mit argument GL _ PROJECTION _ STACK _ DEPTH

glGet mit Argument GL _ TEXTURE _ STACK _ DEPTH

glGet mit argument GL _ MAX _ MODELVIEW _ STACK _ DEPTH

glGet mit argument GL _ MAX PROJECTION STACK _ _ _ DEPTH

glGet mit argument GL _ MAX TEXTURE STACK _ _ _ DEPTH

Requirements (Anforderungen)

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server)
Windows 2000 Server [nur Desktop-Apps]
Header
Gl.h
Bibliothek
Opengl32.lib
DLL
Opengl32.dll

Weitere Informationen

glBegin

glEnd

glFrustum

glLoadIdentity

glLoadMatrix

glMatrixMode

glMultMatrix

glOrtho

glPopMatrix

glRotate

glScale

glTranslate

glViewport