Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <GL/gl.h>
- #include <GL/glut.h>
- void display(void)
- {
- /* clear all pixels */
- glClear (GL_COLOR_BUFFER_BIT);
- /* draw white polygon (rectangle) with corners at
- * (0.25, 0.25, 0.0) and (0.75, 0.75, 0.0)
- */
- glColor3d (1,1,1);
- glBegin(GL_POLYGON);
- glVertex2d(200,260);
- glVertex2d(266,400);
- glVertex2d(246,440);
- glVertex2d(180,300);
- glEnd();
- glColor3d (1,1,1);
- glBegin(GL_POLYGON);
- glVertex2d(300,360);
- glVertex2d(350,360);
- glVertex2d(360,400);
- glVertex2d(276,400);
- glVertex2d(230,300);
- glVertex2d(270,300);
- glEnd();
- glColor3d (1,1,1);
- glBegin(GL_POLYGON);
- glVertex2d(270,300);
- glVertex2d(300,260);
- glVertex2d(210,260);
- glVertex2d(230,300);
- glEnd();
- glColor3d (1,1,1);
- glBegin(GL_POLYGON);
- glVertex2d(270,410);
- glVertex2d(360,410);
- glVertex2d(340,450);
- glVertex2d(250,450);
- glEnd();
- glColor3d (1,1,1);
- glBegin(GL_POLYGON);
- glVertex2d(350,210);
- glVertex2d(370,250);
- glVertex2d(300,340);
- glVertex2d(280,300);
- glEnd();
- glColor3d (1,1,1);
- glBegin(GL_POLYGON);
- glVertex2d(400,300);
- glVertex2d(360,350);
- glVertex2d(305,350);
- glVertex2d(375,260);
- glVertex2d(460,260);
- glVertex2d(460,300);
- glEnd();
- glColor3d (1,1,1);
- glBegin(GL_POLYGON);
- glVertex2d(460,300);
- glVertex2d(470,350);
- glVertex2d(510,260);
- glVertex2d(460,260);
- glEnd();
- glColor3d (1,1,1);
- glBegin(GL_POLYGON);
- glVertex2d(360,210);
- glVertex2d(380,250);
- glVertex2d(510,250);
- glVertex2d(480,210);
- glEnd();
- glColor3d (1,1,1);
- glBegin(GL_POLYGON);
- glVertex2d(410,310);
- glVertex2d(450,310);
- glVertex2d(470,400);
- glVertex2d(430,400);
- glEnd();
- /* don't wait!
- * start processing buffered OpenGL routines
- */
- glFlush ();
- }
- void init (void)
- {
- /* select clearing (background) color */
- glClearColor (0.0, 0.0, 0.0, 0.0);
- /* initialize viewing values */
- glMatrixMode(GL_PROJECTION);
- glLoadIdentity();
- gluOrtho2D(0,700,0,700);
- }
- /*
- * Declare initial window size, position, and display mode
- * (single buffer and RGBA). Open window with "hello"
- * in its title bar. Call initialization routines.
- * Register callback function to display graphics.
- * Enter main loop and process events.
- */
- int main(int argc, char** argv)
- {
- glutInit(&argc, argv);
- glutInitDisplayMode (GLUT_SINGLE | GLUT_RGB);
- glutInitWindowSize (500, 500);
- glutInitWindowPosition (100, 100);
- glutCreateWindow ("hello");
- init ();
- glutDisplayFunc(display);
- glutMainLoop();
- return 0; /* ISO C requires main to return int. */
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement