#include <GL/glut.h>
void display()
{
glutSolidTeapot( 0.3 );
glutSwapBuffers();
}
int main(int argc, char *argv[])
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
glutCreateWindow("GLUT Shapes");
glutDisplayFunc(display);
glutMainLoop();
void display()
{
glutSolidTeapot( 0.3 );
glutSwapBuffers();
}
int main(int argc, char *argv[])
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
glutCreateWindow("GLUT Shapes");
glutDisplayFunc(display);
glutMainLoop();
glColor3f(0,1,1);
glutSolidTeapot( 0.5 );
glColor3f(1,0,1);
glutSolidTeapot( 0.3 );
glutSwapBuffers();
~~~~~~~~~~~
測試顏色
0,0,0 黑
0,0,1 深藍
0,1,1 淺藍
0,1,0 綠
1,0,0 紅
1,0,1 紫
1,1,0 黃
1,1,1 白
~~~~~~~~~~~
2.三頂點多邊形
glColor3f(0,1,0);
glBegin(GL_POLYGON);
glVertex2f(0,1);
glVertex2f(-1,-1);
glVertex2f(+1,-1);
glEnd();
3.
glBegin(GL_POLYGON);
glColor3f(1,0,0); glVertex2f(0,1);
glColor3f(0,1,0); glVertex2f(-1,-1);
glColor3f(0,0,1); glVertex2f(+1,-1);
glEnd();
4.HW
glColor3f(247/255.0, 247/255.0, 247/255.0,);
glBegin(GL_POLYGON);
glVertex2f(1,1);
glVertex2f(-1,1);
glVertex2f(-1,-1);
glVertex2f(1,-1);
glEnd();
glColor3f(244/255.0,209/255.0,33/255.0);
glBegin(GL_POLYGON);
glVertex2f((45-100)/100.0, -(134-100)/100.0 );
glVertex2f((36-100)/100.0, -(171-100)/100.0);
glVertex2f((108-100)/100.0, -(179-100)/100.0);
glVertex2f((104-100)/100.0, -(117-100)/100.0);
glEnd();
glutSwapBuffers();
}
week03-1
2-1
#include <GL/glut.h>
void display()
{
glBegin(GL_POLYGON);
glColor3f(1,0,0); glVertex2f(0,1);
glColor3f(0,1,0); glVertex2f(-1,-1);
glColor3f(0,0,1); glVertex2f(+1,-1);
glEnd();
glColor3f(1,1,0);
glutSolidTeapot( 0.3 );
glutSwapBuffers();
}
int main(int argc, char *argv[])
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
glutCreateWindow("GLUT Shapes");
glutDisplayFunc(display);
glutMainLoop();
}
2-2
#include <GL/glut.h>
void display()
{
glColor3f(247/255.0, 247/255.0, 247/255.0,);
glBegin(GL_POLYGON);
glVertex2f(1,1);
glVertex2f(-1,1);
glVertex2f(-1,-1);
glVertex2f(1,-1);
glEnd();
glColor3f(244/255.0,209/255.0,33/255.0);
glBegin(GL_POLYGON);
glVertex2f((45-100)/100.0, -(134-100)/100.0 );
glVertex2f((36-100)/100.0, -(171-100)/100.0);
glVertex2f((108-100)/100.0, -(179-100)/100.0);
glVertex2f((104-100)/100.0, -(117-100)/100.0);
glEnd();
glutSwapBuffers();
}
int main(int argc, char *argv[])
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
glutCreateWindow("GLUT Shapes");
glutDisplayFunc(display);
glutMainLoop();
}
2-3
#include <GL/glut.h>
#include <math.h>
void myCircle(float r, float x, float y)
{
glBegin(GL_POLYGON);
for(float a =0; a< 2*3.141592653589793238462632383279; a+=0.01){
glVertex2f( r*cos(a)+x, r*sin(a)+y);
}
glEnd();
}
void display()
{
glColor3f(1,0,1); myCircle(0.6,0,0);
glColor3f(1,0,0); myCircle(0.3,0.5,0.5);
glColor3f(0,1,0); myCircle(0.3,-0.5,0.5);
glColor3f(1,1,0); myCircle(0.3,-0.5,-0.5);
glColor3f(0,0,1); myCircle(0.3,0.5,-0.5);
glutSwapBuffers();
}
int main(int argc, char *argv[])
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
glutCreateWindow("GLUT Shapes");
glutDisplayFunc(display);
glutMainLoop();
}




沒有留言:
張貼留言