2019年3月8日 星期五

week03_xiu

/ week03 /

主題 : 移動 Translate


一、實做 : glTranslate(x,y,z)

(1)老師先傳送一個網站給我們 http://www.cmlab.csie.ntu.edu.tw/~jsyeh/3dcg10/



下載並將[data]、[win32]、gult32.dll下載並解壓縮,
此步驟與week02 一、使用freeglut簡化程式 一樣,
下載完之後點開資料夾中的 Transformation.exe






(2)搜尋freeglut點進網址並下載解壓縮,此步驟與week01 第一個GLUT程式相同
(開啟codeblocks>File>new>project>GLUT Project)








(刪掉原本的程式碼貼上新的程式碼)


(以下為程式碼)


#include <GL/glut.h>

void display()

{
    glPushMatrix(); ///備份矩陣,保護好
    glTranslatef(0.2,0.2,0); ///Translate移動x,y,z,  f浮點數
     glutSolidTeapot(0.3);
    glPopMatrix(); ///還原矩陣,保護好
    glutSwapBuffers();

}

int main(int argc,char ** argv)
{

    glutInit( &argc,argv);  ///啟動GLUT

    glutInitDisplayMode(GLUT_DOUBLE | GLUT_DEPTH);

    glutCreateWindow("week03 translate");

    glutDisplayFunc(display);

    glutMainLoop();

}


(以下是錯的程式碼)

(修正後)
( 要加上glPushMatrix()、以及glPopMatrix() )

沒有留言:

張貼留言