Compartilhar via


Função glPushMatrix

As funções glPushMatrix e glPopMatrix efetuam push e pop da pilha de matriz atual.

Sintaxe

void WINAPI glPushMatrix(void);

Parâmetros

Essa função não tem parâmetros.

Valor retornado

Essa função não retorna um valor.

Códigos de erro

É um erro enviar por push uma pilha de matriz completa ou colocar uma pilha de matriz que contém apenas uma única matriz. Em ambos os casos, o sinalizador de erro é definido e nenhuma outra alteração é feita no estado OpenGL.

Os códigos de erro a seguir podem ser recuperados pela função glGetError .

Nome Significado
GL_STACK_OVERFLOW
A função foi chamada enquanto a pilha de matriz atual estava cheia.
GL_INVALID_OPERATION
A função foi chamada entre uma chamada para glBegin e a chamada correspondente para glEnd.

Comentários

Há uma pilha de matrizes para cada um dos modos de matriz. No modo GL_MODELVIEW, a profundidade da pilha é de pelo menos 32. Nos outros dois modos, GL_PROJECTION e GL_TEXTURE, a profundidade é pelo menos 2. A matriz atual em qualquer modo é a matriz na parte superior da pilha para esse modo.

A função glPushMatrix efetua push da pilha de matriz atual para baixo em um, duplicando a matriz atual. Ou seja, após uma chamada glPushMatrix , a matriz na parte superior da pilha é idêntica àquela abaixo dela. A função glPopMatrix exibe a pilha de matriz atual, substituindo a matriz atual pela que está abaixo dela na pilha. Inicialmente, cada uma das pilhas contém uma matriz, uma matriz de identidade.

As seguintes funções recuperam informações relacionadas a glPushMatrix e glPopMatrix:

glGet com GL_MATRIX_MODE de argumento

glGet com GL_MODELVIEW_MATRIX de argumento

glGet com GL_PROJECTION_MATRIX de argumento

glGet com GL_TEXTURE_MATRIX de argumento

glGet com GL_MODELVIEW_STACK_DEPTH de argumento

glGet com GL_PROJECTION_STACK_DEPTH de argumento

glGet com GL_TEXTURE_STACK_DEPTH de argumento

glGet com GL_MAX_MODELVIEW_STACK_DEPTH de argumento

glGet com GL_MAX_PROJECTION_STACK_DEPTH de argumento

glGet com GL_MAX_TEXTURE_STACK_DEPTH de argumento

Requisitos

Requisito Valor
Cliente mínimo com suporte
Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte
Windows 2000 Server [somente aplicativos da área de trabalho]
Cabeçalho
Gl.h
Biblioteca
Opengl32.lib
DLL
Opengl32.dll

Confira também

glBegin

glEnd

glFrustum

glLoadIdentity

glLoadMatrix

glMatrixMode

glMultMatrix

glOrtho

glPopMatrix

glRotate

glScale

glTranslate

glViewport