2015年3月19日 星期四

Week04_蔡妤安

下載課本範例
http://jsyeh.org/3dcg10

FB有連結,傳檔Transformation.exe

















*** 畫一個不會自己動,但是你可以讓它動的空心甜甜圈

#include <GL/glut.h>

float angle =0;
void display()
{
    glClear(GL_COLOR_BUFFER_BIT);
    glRotatef(angle, 1,1,0);
    glutWireTorus(0.3 ,0.7, 30, 90);
    glFlush();
    angle+=2;
}

int main(int argc, char**argv)
{
    glutInit(&argc, argv);
    glutCreateWindow("01160360_Tsai Yu An");
    glutDisplayFunc(display);

    glutMainLoop();
}


















***畫一個空心的甜甜圈,會自己動


#include <GL/glut.h>

float angle =0;
void display()
{
    glClear(GL_COLOR_BUFFER_BIT); ///因為畫面會亂,所以(1)清畫面clear
    glPushMatrix();               ///因為畫面會亂,所以(2)備份Matrix
        glRotatef(angle, 1,1,0);
        glutWireTorus(0.3 ,0.7, 30, 90);
    glPopMatrix();                ///因為畫面會亂,所以(3)還原Matrix
    glFlush();                    ///為了要畫面要出來,所以把他們沖出來
    angle+=0.1; ///可以控制速度
}

int main(int argc, char**argv)
{
    glutInit(&argc, argv);
    glutCreateWindow("01160360_Tsai Yu An");
    glutDisplayFunc(display); ///當電腦需要display時,去呼叫的函式display()
    glutIdleFunc(display); ///閒閒沒事幹時,就去呼叫裡面的函式 display()

    glutMainLoop();
}



沒有留言:

張貼留言