glPopMatrix-Funktion

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

Syntax

void WINAPI glPopMatrix(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 aufzufüllen, 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_UNDERFLOW
Die Funktion wurde aufgerufen, während der aktuelle Matrixstapel nur eine einzelne Matrix enthielt.
GL_INVALID_OPERATION
Die Funktion wurde zwischen einem Aufruf von glBegin und dem entsprechenden Aufruf von glEnd aufgerufen.

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 verschiebt den aktuellen Matrixstapel um eins nach unten und dupliziert die aktuelle Matrix. 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 unterhalb des Stapels. Anfangs 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 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

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

glPushMatrix

glRotate

glScale

glTranslate

glViewport