Gl.PushMatrix (gb.opengl)
Static Sub PushMatrix ( )
Push the current matrix stack.
Description
There is a stack of matrices for each of the matrix modes.
In 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.
Gl.PopMatrix pops the current matrix stack,
replacing the current matrix with the one below it on the stack.
Initially, each of the stacks contains one matrix, an identity matrix.
It is an error to push a full matrix stack
or to pop a matrix stack that contains only a single matrix.
In either case, the error flag is set
and no other change is made to GL state.
Errors
Gl.STACK_OVERFLOW is generated if
Gl.PushMatrix is called while
the current matrix stack is full.
Gl.STACK_UNDERFLOW is generated if
Gl.PopMatrix is called while
the current matrix stack contains only a single matrix.
Gl.INVALID_OPERATION is generated if
Gl.PushMatrix or Gl.PopMatrix
is executed between the execution of
Gl.Begin
and the corresponding execution of
Gl.End.
Associated Gets
Gl.Get with argument Gl.MATRIX_MODE
Gl.Get with argument Gl.COLOR_MATRIX
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.COLOR_MATRIX_STACK_DEPTH
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
See also
Gl.LoadMatrix,
Gl.LoadTransposeMatrix,
Gl.MultMatrix,
Gl.MultTransposeMatrix,
Gl.Rotate,
Gl.Scale,
Gl.Translate,
See original documentation on OpenGL website