2021年3月3日 星期三

Lm's 圖學筆記 week02

 



#include <GL/glut.h>

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

    glColor3f(1,0,0);  ///顏色 R G B
    glutSolidTeapot(0.3);
    glutSwapBuffers();
}
int main(int argc, char *argv[])
{
    glutInit(&argc, argv);
    glutInitDisplayMode( GLUT_DOUBLE | GLUT_DEPTH);
    glutCreateWindow("week02 08373056!");
    glutDisplayFunc(display);
    glutMainLoop();
}



#include <GL/glut.h>
void display()
{
  glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);

  glBegin(GL_LINE_LOOP);

   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();
    glColor3f(0.5,1,0.2); ///顏色
  glutSolidTeapot(0.3);
  glutSwapBuffers();
}
int main(int argc, char *argv[])
{
    glutInit(&argc, argv);
    glutInitDisplayMode( GLUT_DOUBLE | GLUT_DEPTH);
    glutCreateWindow("week02 08373056!");
    glutDisplayFunc(display);
    glutMainLoop();
}

GL_LINE_LOOP

 

改成 glBegin(GL_TRIANGLES);

 

GL_TRIANGLES

#include <GL/glut.h>
#include <math.h> ///數學的外掛cos() sin()
void display()
{
  glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);

  glBegin(GL_POLYGON);

   glColor3f(1.0f, 0.0f, 0.0f);
   for(float angle=0; angle<3014159265358979*2; angle+=0.01){
    glVertex2f( 0.5*cos(angle), 0.5*sin(angle) );///Vertex=頂點
   }
  glEnd();
    glColor3f(0.5,1,0.2); ///顏色
  glutSolidTeapot(0.3);
  glutSwapBuffers();
}
int main(int argc, char *argv[])
{
    glutInit(&argc, argv);
    glutInitDisplayMode( GLUT_DOUBLE | GLUT_DEPTH);
    glutCreateWindow("week02 08373056!");
    glutDisplayFunc(display);
    glutMainLoop();
}





沒有留言:

張貼留言

距地表面160 Week11

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