glRotatef

glRotate: man2/glRotate.xml

glRotate produces a rotation of angle degrees around the vector x y z. The current matrix (see glMatrixMode ) is multiplied by a rotation matrix with the product replacing the current matrix, as if glMultMatrix were called with the following matrix as its argument: x 2 ⁡ 1 - c + c x ⁢ y ⁡ 1 - c - z ⁢ s x ⁢ z ⁡ 1 - c + y ⁢ s 0 y ⁢ x ⁡ 1 - c + z ⁢ s y 2 ⁡ 1 - c + c y ⁢ z ⁡ 1 - c - x ⁢ s 0 x ⁢ z ⁡ 1 - c - y ⁢ s y ⁢ z ⁡ 1 - c + x ⁢ s z 2 ⁡ 1 - c + c 0 0 0 0 1 Where c = cos ⁡ angle, s = sin ⁡ angle, and x y z = 1 (if not, the GL will normalize this vector). If the matrix mode is either GL_MODELVIEW or GL_PROJECTION, all objects drawn after glRotate is called are rotated. Use glPushMatrix and glPopMatrix to save and restore the unrotated coordinate system.

This rotation follows the right-hand rule, so if the vector x y z points toward the user, the rotation will be counterclockwise.

@OpenGL_Version(OGLIntroducedIn.V1P0)
fn_glRotatef glRotatef;

See Also

glMatrixMode, glMultMatrix, glPushMatrix, glScale, glTranslate

Meta