función glPushMatrix

Las funciones glPushMatrix y glPopMatrix insertan y sacan la pila de matrices actual.

Sintaxis

void WINAPI glPushMatrix(void);

Parámetros

Esta función no tiene parámetros.

Valor devuelto

Esta función no devuelve ningún valor.

Códigos de error

Se trata de un error al insertar una pila de matriz completa o para mostrar una pila de matrices que contiene solo una sola matriz. En cualquier caso, se establece la marca de error y no se realiza ningún otro cambio en el estado openGL.

La función glGetError puede recuperar los siguientes códigos de error.

Nombre Significado
GL_STACK_OVERFLOW
Se llamó a la función mientras la pila de matriz actual estaba llena.
GL_INVALID_OPERATION
Se llamó a la función entre una llamada a glBegin y la llamada correspondiente a glEnd.

Comentarios

Hay una pila de matrices para cada uno de los modos de matriz. En GL_MODELVIEW modo, la profundidad de la pila es de al menos 32. En los otros dos modos, GL_PROJECTION y GL_TEXTURE, la profundidad es al menos 2. La matriz actual en cualquier modo es la matriz de la parte superior de la pila para ese modo.

La función glPushMatrix inserta la pila de matriz actual en una, duplicando la matriz actual. Es decir, después de una llamada a glPushMatrix , la matriz de la parte superior de la pila es idéntica a la debajo de ella. La función glPopMatrix extrae la pila de matriz actual, reemplazando la matriz actual por la que se encuentra debajo de ella en la pila. Inicialmente, cada una de las pilas contiene una matriz, una matriz de identidad.

Las siguientes funciones recuperan información relacionada con glPushMatrix y glPopMatrix:

glGet con GL_MATRIX_MODE de argumentos

glGet con GL_MODELVIEW_MATRIX de argumentos

glGet con GL_PROJECTION_MATRIX de argumentos

glGet con GL_TEXTURE_MATRIX de argumentos

glGet con GL_MODELVIEW_STACK_DEPTH de argumentos

glGet con GL_PROJECTION_STACK_DEPTH de argumentos

glGet con GL_TEXTURE_STACK_DEPTH de argumentos

glGet con GL_MAX_MODELVIEW_STACK_DEPTH de argumentos

glGet con GL_MAX_PROJECTION_STACK_DEPTH de argumentos

glGet con GL_MAX_TEXTURE_STACK_DEPTH de argumentos

Requisitos

Requisito Value
Cliente mínimo compatible
Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible
Windows 2000 Server [solo aplicaciones de escritorio]
Encabezado
Gl.h
Biblioteca
Opengl32.lib
Archivo DLL
Opengl32.dll

Consulte también

glBegin

glEnd

glFrustum

glLoadIdentity

glLoadMatrix

glMatrixMode

glMultMatrix

glOrtho

glPopMatrix

glRotate

glScale

glTranslate

glViewport