2023年3月2日 星期四

要叫什麼丫 Week03

GLUT_TRANSLATE 移動

  • 至 https://jsyeh.org/3dcg10/ 下載 windows.zip、data.zip



  • 解壓縮 windows.zip、data.zip



  • 將解壓縮後的data資料夾放進windows資料夾中



  • 執行windows資料夾內 Transformation.exe檔


  • 開啟Codeblocks新增一個GLUT專案
  • 將main.cpp改為以下程式碼(利用gist.github製成,再用Script加入部落格HTML程式碼中)
  • 執行結果如下



  • 更改display程式碼,新增移動程式碼,因為translate會改變矩陣,因此需要先備份矩陣再還原
    void display()
    {
        glPushMatrix();  ///備份矩陣
            glTranslated(0.5,0.5,0);   ///移動(x,y,z)
            glutSolidTeapot(0.3);
        glPopMatrix();  ///還原矩陣
        glutSwapBuffers();
    }


  • 執行結果如下


GLUT_TRANSLATE 使用滑鼠移動

  • 開一個新的專案,將上面Translate的程式碼複製貼上
  • 更改程式碼
  • 執行結果如下


  • 更改程式碼,使得可以用滑鼠畫畫,更方便!

  • 取得點座標後複製到程式碼,利用glbegin() glend()就能輕鬆畫出圖了

沒有留言:

張貼留言