2019年4月26日 星期五

o_O|||的電腦圖學week10

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


glRotatef///旋轉
glTranslatef///移動
glScalef///放大縮小
glBegin///人像


glTranslatef///移動
glRotatef///旋轉
glScalef///放大縮小
glBegin///人像


先打出茶壺的程式碼
#include <GL/glut.h> void display() { glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); glutSolidTeapot(0.3); glutSwapBuffers(); } int main(int argc, char**argv) { glutInit(&argc, argv); glutInitDisplayMode(GLUT_DOUBLE | GLUT_DEPTH);
glutCreateWindow("week10"); glutDisplayFunc(display); glutMainLoop(); }



旋轉
#include <GL/glut.h>
float angle=0;
void display()
{
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
    glPushMatrix();
        glTranslated(0,0.5,0);
        glutWireTeapot(0.3);
    glPopMatrix();

    glPushMatrix();
        glTranslatef(0.51,0.63,0);
        glRotatef(angle,0,0,1);
        glTranslatef(0.6,0,0);

        glRotatef(-90,0,1,0);
        glutWireCone(0.1,0.6,10,10);
    glPopMatrix();
    glutSwapBuffers();
}
void motion(int x, int y)
{
    angle=x;
    display();
}
int main(int argc, char**argv)
{
    glutInit(&argc, argv);
    glutInitDisplayMode(GLUT_DOUBLE | GLUT_DEPTH);
    glutCreateWindow("week10_06160221");
    glutDisplayFunc(display);
    glutMotionFunc(motion);
    glutMainLoop();
}

沒有留言:

張貼留言