2021年3月3日 星期三

電腦圖學week02

 



印出白色茶壺

#include <GL/glut.h>
static void display(void)
{
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
    glutSolidTeapot(0.3);
    glutSwapBuffers();
}


int main(int argc, char *argv[])
{
    glutInit(&argc, argv);
    glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
    glutCreateWindow("08160563 Good!");
    glutDisplayFunc(display);
    glutMainLoop();
}




將茶壺變成紅色
在static void display(void)多打一行glColor3f(1,0,0);


在static void display(void)多打
glBegin(GL_TRIANGLES);

        glColor3f(1.0f, 0.0f, 0.0f);   glVertex2f(0.0f,   1.0f);
        glColor3f(0.0f, 1.0f, 0.0f);   glVertex2f(0.87f,  -0.5f);
        glColor3f(0.0f, 0.0f, 1.0f);   glVertex2f(-0.87f, -0.5f);

glEnd();
 



將glBegin(GL_TRIANGLES);改成glBegin(GL_LINE_LOOP);
    


在茶壺的後面畫出一個圓
glBegin(GL_POLYGON);

        glColor3f(1.0f, 0.0f, 1.0f);
        for(float angle=0;angle<3.14159265358979*2;angle+=0.01){
            glVertex2f(0.5*cos(angle),0.5*sin(angle));
        }
glEnd();








沒有留言:

張貼留言

距地表面160 Week11

 #include "glm.h" GLMmodel* pmodel = NULL; void drawmodel(void) {     if (!pmodel) { pmodel = glmReadOBJ("data/porsche.obj...