101403023
101403023
COMPUTING
ASSIGNMENT-1
SUBMITTED TO
SUBMITTED BY
Akash GUPTA
Assistant Professor
101403023
COE-1
glClear(GL_COLOR_BUFFER_BIT);
glBegin(GL_POINTS);
/* Plot the first point */
glVertex2d(x,y);
int k;
glFlush();
}
void Init()
{
glClearColor(1.0,1.0,1.0,0);
glColor3f(0.0,0.0,0.0);
gluOrtho2D(0 , 640 , 0 , 480);
}
int main(int argc, char **argv)
{
printf("Enter two end points \n");
printf("\nEnter Point1( X1 , Y1):\n");
scanf("%lf%lf",&X1,&Y1);
printf("\nEnter Point1( X2 , Y2):\n");
scanf("%lf%lf",&X2,&Y2);
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
glutInitWindowPosition(0,0);
glutInitWindowSize(640,480);
glutCreateWindow("DDA_Line");
Init();
glutDisplayFunc(LineDDA);
glutMainLoop();
return 0;
}
setPixel(x0,y0);
dx=xn-x0;
dy=yn-y0;
pk=2*dy-dx;
x=x0;
y=y0;
for(k=0;k<dx-1;++k)
{
if(pk<0)
{
pk=pk+2*dy;
}
else
{
pk=pk+2*dy-2*dx;
++y;
}
++x;
setPixel(x,y);
}
glFlush();
}
glutCreateWindow("Bresenham Line");
init();
glutDisplayFunc(Line);
glutMainLoop();
return 0;
}
void bresenham_circle(int r)
{
int x=0,y=r;
float pk=(5.0/4.0)-r;
plot_point(x,y);
int k;
/* Find all vertices till x=y */
while(x < y)
{
x = x + 1;
if(pk < 0)
pk = pk + 2*x+1;
else
{
y = y - 1;
pk = pk + 2*(x - y) + 1;
}
plot_point(x,y);
}
glFlush();
}
void concentric_circles(void)
{
glClear(GL_COLOR_BUFFER_BIT);
void Init()
{
glClearColor(1.0,1.0,1.0,0);
glColor3f(0.0,0.0,0.0);
gluOrtho2D(0 , 640 , 0 , 480);
}
int main(int argc, char **argv)
{
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
glutInitWindowPosition(0,0);
glutInitWindowSize(640,480);
glutCreateWindow("bresenham_circle");
Init();
glutDisplayFunc(concentric_circles);
glutMainLoop();
return 0;
}