{\__/}
( • - •)
/ > ❤️
------------------------------------------------------------------------------------------------------------
➤先準備好模擬器~
2. data.zip / windows.zip / glut32.dll download
3. windows / data | windows / glut32.dll
今天課題!
「認識程式碼"順序"的重要性」
→開啟Transformation.exe ( 移動、旋轉、縮放 模擬器)
➤自轉 v.s 公轉
自轉 ↓
公轉 ↓
➤以順序的概念,來完成下面的成果(GLUT)
程式碼如下 ↓
#include <GL/glut.h>
float angle=0; ///角度初始化
void display()
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glPushMatrix();
glTranslatef(0 , 0.5 , 0);
glutWireTeapot( 0.3 ); /// Wire >> 透視、網格
glPopMatrix();
glPushMatrix();
/// TRT ↓
glTranslatef(0.51 , 0.63 , 0); /// 設定主要顯示視窗,要放置的位置
glRotatef(angle, 0 , 0 , 1); /// 開始旋轉
glTranslatef(0.6 , 0 , 0); /// 先移動原圖片的位置,中心點作為旋轉軸
/// TRT ↑
glRotatef(-90, 0 , 1 , 0); /// 先做旋轉,中心點一樣在圖片的正中間
glutWireCone(0.1, 0.6, 10 , 10); ///製出圓錐
glPopMatrix();
glutSwapBuffers();
}
void motion(int x , int y) ///用滑鼠控制圓錐
{
angle = x;
display();
}
int main(int argc, char**argv)
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_DOUBLE | GLUT_DEPTH);
glutCreateWindow("06160504_Week10 TRT");
glutDisplayFunc(display);
glutMotionFunc(motion); ///用滑鼠控制
glutMainLoop();
}
沒有留言:
張貼留言