2019年3月15日 星期五

龔書霆_week04

先去這個網站http://www.cmlab.csie.ntu.edu.tw/~jsyeh/3dcg10/
把data win32 glut32.dll下載下來
把windows資料夾解壓縮把data解壓縮和glut.32丟進去
像上禮拜一樣打開這個Transformation.exe


今天的程式碼茶壺要跟著滑鼠移動

#include <GL/glut.h>
float x=0,y=0;
void display()
{
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
    glPushMatrix();
        glTranslatef((x-150)/150.0,-(y-150)/150.0,0);
        glutSolidTeapot(0.3);
    glPopMatrix();

    glutSwapBuffers();

}
void motion(int nowx,int nowy)
{
    x=nowx;y=nowy;
    display();
}

int main(int argc, char ** argv)
{
    glutInit(&argc,argv);
    glutInitDisplayMode(GLUT_DOUBLE | GLUT_DEPTH);
    glutCreateWindow("06160823");
    glutDisplayFunc(display);
    glutMotionFunc(motion);
    glutMainLoop();
}

轉動程式碼
#include <GL/glut.h>
float x=0,y=0;
void display()
{
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
    glPushMatrix();
        glRotatef(x,1,1,0);
        //glTranslatef((x-150)/150.0,-(y-150)/150.0,0);
        glutSolidTeapot(0.3);
    glPopMatrix();

    glutSwapBuffers();

}
void motion(int nowx,int nowy)
{
    x=nowx;y=nowy;
    display();
}

int main(int argc, char ** argv)
{
    glutInit(&argc,argv);
    glutInitDisplayMode(GLUT_DOUBLE | GLUT_DEPTH);
    glutCreateWindow("06160823");
    glutDisplayFunc(display);
    glutMotionFunc(motion);
    glutMainLoop();
}


沒有留言:

張貼留言