2015年3月19日 星期四

week4 徐梓修

(1)作業表揚
(2)本週重點

移動:    glTranslatef(x,y,z)
旋轉:    glRotatef(角度,x,y,z)
放大縮小:    glScale(x,y,z)
畫一個會轉的甜甜圈

#include<GL/glut.h>
float angle=0;
void display()
{

    glClear(GL_COLOR_BUFFER_BIT);
    glRotated(angle,1,0,1);
    glutWireTorus(0.3,0.7,30,50);
    glFlush();
    angle+=0.5;
}
int main(int argc,char **argv)
{
    glutInit(&argc,argv);
    glutCreateWindow("02160845徐梓修");
    glutDisplayFunc(display);
    glutMainLoop();

}

旋轉時,畫面會亂掉?
(1)清畫面glClear(GL_COLOR_BUFFER_BIT);
(2)備份矩陣 glPushMatrix();
(3)還原矩陣 glPopMatrix();

會自動旋轉的3d物體
#include<GL/glut.h>
float angle=0;
void display()
{


    glClear(GL_COLOR_BUFFER_BIT);
    glPushMatrix();
    glRotated(angle,1,1,0);
    glutWireTorus(0.3,0.7,30,50);

    glPopMatrix();
    glFlush();
    angle+=0.1;

}
int main(int argc,char **argv)
{
    glutInit(&argc,argv);
    glutCreateWindow("02160845徐梓修");
    glutDisplayFunc(display);
    glutIdleFunc(display);
    glutMainLoop();

}

沒有留言:

張貼留言