Wednesday, 10 December 2014

Program to represent a 3D object using polygon surfaces

#include <stdio.h>
#include <GL/glut.h>
void display(void)
{
 glClear( GL_COLOR_BUFFER_BIT);
 glColor3f(0.0, 1.0, 0.0);

 glBegin(GL_LINES);
 
    glVertex3f(1.61,1.45,0.0);
glVertex3f(2.01,1.45,0.0);

glVertex3f(2.01,1.45,0.0);
glVertex3f(2.01,2.65,0.0);

glVertex3f(2.01,2.65,0.0);
glVertex3f(2.81,2.65,0.0);

glVertex3f(2.81,2.65,0.0);
glVertex3f(2.81,3.05,0.0);

glVertex3f(2.81,3.05,0.0);
glVertex3f(0.81,3.05,0.0);

glVertex3f(0.81,3.05,0.0);
glVertex3f(0.81,2.65,0.0);

glVertex3f(0.81,2.65,0.0);
glVertex3f(1.61,2.65,0.0);

glVertex3f(1.61,2.65,0.0);
     glVertex3f(1.61,1.45,0.0);
//BACK T END
glVertex3f(1.31,1.15,0.0);
glVertex3f(1.71,1.15,0.0);

glVertex3f(1.71,1.15,0.0);
glVertex3f(1.71,2.35,0.0);

glVertex3f(1.71,2.35,0.0);
glVertex3f(2.51,2.35,0.0);


glVertex3f(2.51,2.35,0.0);
glVertex3f(2.51,2.75,0.0);

glVertex3f(2.51,2.75,0.0);
glVertex3f(0.51,2.75,0.0);

glVertex3f(0.51,2.75,0.0);
glVertex3f(0.51,2.35,0.0);

glVertex3f(0.51,2.35,0.0);
glVertex3f(1.31,2.35,0.0);

glVertex3f(1.31,2.35,0.0);
     glVertex3f(1.31,1.15,0.0);

//FRONT END
glVertex3f(1.31,1.15,0.0);
glVertex3f(1.61,1.45,0.0);

glVertex3f(1.71,1.15,0.0);
glVertex3f(2.01,1.45,0.0);

glVertex3f(1.71,2.35,0.0);
glVertex3f(2.01,2.65,0.0);

glVertex3f(2.51,2.35,0.0);
 glVertex3f(2.81,2.65,0.0);

glVertex3f(2.51,2.75,0.0);
glVertex3f(2.81,3.05,0.0);

glVertex3f(0.51,2.75,0.0);
 glVertex3f(0.81,3.05,0.0);

 glVertex3f(0.51,2.35,0.0);
  glVertex3f(0.81,2.65,0.0);

glVertex3f(1.31,2.35,0.0);
glVertex3f(1.61,2.65,0.0);

 glEnd();
 glFlush();
}

int main(int argc, char **argv)
{
 //printf("hello world\n");
 glutInit(&argc, argv);
 glutInitDisplayMode ( GLUT_SINGLE | GLUT_RGB | GLUT_DEPTH);

 glutInitWindowPosition(300,300);
 glutInitWindowSize(500,500);
 glutCreateWindow ("lines");

 glClearColor(0.0, 0.0, 0.0, 0.0);         // black background
 glMatrixMode(GL_PROJECTION);              // setup viewing projection
 glLoadIdentity();                           // start with identity matrix
 glOrtho(0.0, 5.0, 0.0, 5.0, -10.0, 10.0);   // setup a 10x10x2 viewing world

 glutDisplayFunc(display);
 glutMainLoop();

 return 0;
}

No comments:

Post a Comment