GLPUSHMATRIX
Section: Misc. Reference Manual Pages (3G)
索引
xjman
名前
glPushMatrix, glPopMatrix
- 現在の行列スタックに push 操作または pop 操作を行う
書式
void glPushMatrix( void )
書式
void glPopMatrix( void )
説明
それぞれの行列モードについて行列のスタックが存在する。
GL_MODELVIEW モードでは、スタックの深さは少なくとも 32 である。
他のモード、つまり GL_COLOR, const(PROJECTION), GL_TEXTURE
では、深さは少なくとも 2 である。
いずれのモードにおいても、現在の行列は、そのモードについての
スタックの一番上にある行列である。
glPushMatrix は現在の行列スタックに push 操作を行って
ひとつ下にずらし、そこに現在の行列をコピーする。
つまり、glPushMatrix を呼んだ後には、スタックの一番上の行列と
その下にある行列は同じになる。
glPopMatrix は現在の行列スタックに pop 操作を行い、
現在の行列をスタック内でその行列の下にある行列で置き換える。
初期状態では、どのスタックにもひとつの行列しか入っていない。
この行列は単位行列である。
いっぱいになっている行列スタックに push 操作を行ったり、
行列がひとつしか入っていない行列スタックに pop 操作を行うとエラーになる。
どちらの場合もエラーフラグが設定され、それ以外の変化は GL の状態に
対して起こらない。
エラー
GL_STACK_OVERFLOW:
現在の行列スタックがいっぱいの時に glPushMatrix を呼ぶと起こる。
GL_STACK_UNDERFLOW:
現在の行列スタックに行列をひとつしか入っていない時に glPopMatrix を
呼ぶと起こる。
GL_INVALID_OPERATION:
glBegin と、その対になる glEnd の間で
glPushMatrix または glPopMatrix を実行すると起こる。
関連する取得値
glGet with argument GL_MATRIX_MODE
引き数に GL_MATRIX_MODE を指定した glGet
glGet with argument GL_COLOR_MATRIX
引き数に GL_COLOR_MATRIX を指定した glGet
glGet with argument GL_MODELVIEW_MATRIX
引き数に GL_MODELVIEW_MATRIX を指定した glGet
glGet with argument GL_PROJECTION_MATRIX
引き数に GL_PROJECTION_MATRIX を指定した glGet
glGet with argument GL_TEXTURE_MATRIX
引き数に GL_TEXTURE_MATRIX を指定した glGet
glGet with argument GL_COLOR_STACK_DEPTH
引き数に GL_COLOR_STACK_DEPTH を指定した glGet
glGet with argument GL_MODELVIEW_STACK_DEPTH
引き数に GL_MODELVIEW_STACK_DEPTH を指定した glGet
glGet with argument GL_PROJECTION_STACK_DEPTH
引き数に GL_PROJECTION_STACK_DEPTH を指定した glGet
glGet with argument GL_TEXTURE_STACK_DEPTH
引き数に GL_TEXTURE_STACK_DEPTH を指定した glGet
glGet with argument GL_MAX_MODELVIEW_STACK_DEPTH
引き数に GL_MAX_MODELVIEW_STACK_DEPTH を指定した glGet
glGet with argument GL_MAX_PROJECTION_STACK_DEPTH
引き数に GL_MAX_PROJECTION_STACK_DEPTH を指定した glGet
glGet with argument GL_MAX_TEXTURE_STACK_DEPTH
引き数に GL_MAX_TEXTURE_STACK_DEPTH を指定した glGet
関連項目
glFrustum(3G),
glLoadIdentity(3G),
glLoadMatrix(3G),
glMatrixMode(3G),
glMultMatrix(3G),
glOrtho(3G),
glRotate(3G),
glScale(3G),
glTranslate(3G),
glViewport(3G)
Index
- 名前
-
- 書式
-
- 書式
-
- 説明
-
- エラー
-
- 関連する取得値
-
- 関連項目
-
Time: 07:01:10 GMT, January 12, 2009