旋轉glRotatef()使模形圍繞軸向量進行旋轉.先設定旋轉矩陣後繪畫模型.
旋轉 | 簡介 |
void glRotatef (
GLfloat angle, GLfloat x, GLfloat y, GLfloat z); |
單精度版本
angle:旋轉角度 逆時針旋轉:角度為正 順時針旋轉:角度為負 xyz:旋轉軸向量 |
void glRotated (
GLdouble angle, GLdouble x, GLdouble y, GLdouble z); |
雙精度版本 |
函式示例分別對XYZ進行旋轉:
- 設定模型視圖矩陣glMatrixMode(GL_MODELVIEW);
- 載入單位矩陣glLoadIdentity();
- 繞X軸旋轉glRotatef(angleX,1,0,0);
- 繞Y軸旋轉glRotatef(angleY,0,1,0);
- 繞Z軸旋轉glRotatef(angleZ,0,0,1);
- 繪畫立方體Draw();
旋轉示例 | 簡介 |
glRotatef(45.0f,1.0f,0.0f,0.0f); | 繞X軸以逆時針方向旋轉45度 |
glRotatef(-90.0f,0.0f,1.0f,0.0f); | 繞Y軸以順時針方向旋轉45度 |
glRotatef(135.0f,0.0f,0.0f,1.0f); | 繞Z軸以逆時針方向旋轉135度 |
旋轉演示程式如上圖:下載
- 按UP/DOWN鍵繞X軸旋轉
- 按LEFT/RIGHT鍵繞Y軸旋轉
- 按Z+LEFT/Z+RIGHT鍵繞Z軸旋轉
- 按F1鍵打開幫助
- 按ESC鍵模型旋轉角度重置