2017年3月20日 星期一

Week04 Una Der 圖學筆記

第三周

http://www.cmlab.csie.ntu.edu.tw/~jsyeh/3dcg10/

要把window解壓縮 再把data跟glut32放進去

1.旋轉 rotate
2.移動 translate                               
3.縮放 scale
4.實作 Push Matrix / PopMatrix
//今日英文






[Translate]


\

#include <GL/glut.h>
float mouseX=0,mouseY=0;

void display()
{   glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);//很重要喔
    glPushMatrix();
        glTranslatef(mouseX,mouseY,0);//超重要喔
        glutSolidTeapot(0.3);
    glPopMatrix();
    glutSwapBuffers();
}
void motion(int x,int y){
    mouseX=(x-150)/150.0;
    mouseY=-(y-150)/150.0;
    glutPostRedisplay();
}
int main(int argc, char *argv[])
{
    glutInit(&argc, argv);

    glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);

    glutCreateWindow("04162461 Rotate Translate Scale");

    glutDisplayFunc(display);
    glutMotionFunc(motion);

    glutMainLoop();

}



[Scale]



***上次的小精靈***















***
#include <GL/glut.h>

void display()
{  glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BITS);

    glutSwapBuffers();
}
int main(int argc, char *argv[])
{
    glutInit(&argc, argv);

    glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);

    glutCreateWindow("04162461 Rotate Translate Scale");

    glutDisplayFunc(display);

    glutMainLoop();
}


沒有留言:

張貼留言