GLROTATE
Section: Misc. Reference Manual Pages (3G)
索引
xjman
名前
glRotated, glRotatef
- 現在の行列に回転行列を掛ける
書式
void glRotated(
GLdouble angle,
GLdouble x,
GLdouble y,
GLdouble z )
void glRotatef(
GLfloat angle,
GLfloat x,
GLfloat y,
GLfloat z )
delim $$
引き数
- angle
-
回転角を指定する。
単位は度数である。
- x, y, z
-
ベクトルの x, y, z 座標を指定する。
説明
glRotate はベクトル $("x", "y", "z")$ 周りの angle 度の
回転を生成する。
現在の行列(glMatrixMode を参照)に回転行列が掛けられ、
その積が現在の行列と置き換わる。
この際の動作は、次の行列を引き数として glMultMatrix を
呼んだ場合と同様である:
left ( ~ down 20 matrix {
ccol {
"x" sup 2 (1 ^-^ c)~+~ c above
"y" "x" (1 ^-^ c)~+~ "z" s above
"x" "z" (1 ^-^ c)~-~"y" s above
~0
}
ccol {
~~ "x" "y" (1 ^-^ c)~-~"z" s above
~~ "y" sup 2 (1 ^-^ c)~+~ c above
~~ "y" "z" (1 ^-^ c)~+~ "x" s above
~~ ~0
}
ccol {
~~ "x" "z" (1 ^-^ c)~+~ "y" s above
~~ "y" "z" (1 ^-^ c)~-~ "x" s above
~~ "z" sup 2 (1 ^-^ c) ~+~ c above
~~ ~0
}
ccol { ~0 above ~0 above ~0 above ~1}
} ~~ right )
ここで $c ~=~ cos ("angle")$, $s ~=~ sin ("angle")$,
$||(~"x", "y", "z"~)|| ~=~ 1$ (1 でない場合は、GL はこのベクトル
を正規化する)である。
行列モードが GL_MODELVIEW または GL_PROJECTION の場合、
glRotate が呼ばれた後に描画された全ての行列は回転している。
回転していない座標系を保存・復元するには、
glPushMatrix および glPopMatrix を使うこと。
注意
この回転は右手則に従うので、ベクトル $("x", "y", "z")$ が
ユーザの方を向いている場合には、回転は反時計周りになる。
エラー
GL_INVALID_OPERATION:
glBegin と、その対になる glEnd の間で
glRotate を実行すると起こる。
関連する取得値
引き数 GL_MATRIX_MODE を指定した glGet
引き数 GL_COLOR_MATRIX を指定した glGet
引き数 GL_MODELVIEW_MATRIX を指定した glGet
引き数 GL_PROJECTION_MATRIX を指定した glGet
引き数 GL_TEXTURE_MATRIX を指定した glGet
関連項目
glMatrixMode(3G),
glMultMatrix(3G),
glPushMatrix(3G),
glScale(3G),
glTranslate(3G)
Index
- 名前
-
- 書式
-
- 引き数
-
- 説明
-
- 注意
-
- エラー
-
- 関連する取得値
-
- 関連項目
-
Time: 07:01:10 GMT, January 12, 2009