gl.PushMatrix()
#GL_MODELVIEW
mode, the stack depth is at
least 32. In the other modes, #GL_COLOR
, #GL_PROJECTION
, and #GL_TEXTURE
, the depth is at least 2.
The current matrix in any mode is the matrix on the top of the stack for that mode.
gl.PushMatrix()
pushes the current matrix stack down by one, duplicating the current matrix. That is,
after a gl.PushMatrix()
call, the matrix on top of the stack is identical to the one below it.
Initially, each of the stacks contains one matrix, an identity matrix.
It is an error to push a full matrix stack. In that case, the error flag is set and no other change is made to GL state.
Please consult an OpenGL reference manual for more information.
#GL_STACK_OVERFLOW
is generated if gl.PushMatrix()
is called while the current matrix stack is full.
#GL_INVALID_OPERATION
is generated if gl.PushMatrix()
is executed between the execution of gl.Begin() and the corresponding execution of gl.End().
#GL_MATRIX_MODE
gl.Get() with argument #GL_MODELVIEW_MATRIX
gl.Get() with argument #GL_PROJECTION_MATRIX
gl.Get() with argument #GL_TEXTURE_MATRIX
gl.Get() with argument #GL_MODELVIEW_STACK_DEPTH
gl.Get() with argument #GL_PROJECTION_STACK_DEPTH
gl.Get() with argument #GL_TEXTURE_STACK_DEPTH
gl.Get() with argument #GL_MAX_MODELVIEW_STACK_DEPTH
gl.Get() with argument #GL_MAX_PROJECTION_STACK_DEPTH
gl.Get() with argument #GL_MAX_TEXTURE_STACK_DEPTH