Blog Archive

Friday, August 17, 2012

C Prog to draw a circle using Brasenham's method


// Draws a circle using the brasenham’s method

# include<stdio.h>
# include<conio.h>
# include<graphics.h>
void main()
{
int gd=DETECT,gm;
int r,x,y,p,xc,yc;
printf("Enter the radius ");
scanf("%d",&r);
printf("Enter the center Coordinates : ");
scanf("%d%d",&xc,&yc);

initgraph(&gd, &gm, "");
cleardevice();
x=0;
y=r;
putpixel(xc+x,yc-y,1);
p=3-(2*r);
for(x=0;x<=y;x++)
{
                if (p<0)
                {
                                y=y;
                                p=(p+(4*x)+6);
                }
                else
                {
                                y=y-1;
                                p=p+((4*(x-y)+10));
                }
                putpixel(xc+x,yc-y,1);
                putpixel(xc-x,yc-y,2);
                putpixel(xc+x,yc+y,3);
                putpixel(xc-x,yc+y,4);
                putpixel(xc+y,yc-x,5);
                putpixel(xc-y,yc-x,6);
                putpixel(xc+y,yc+x,7);
                putpixel(xc-y,yc+x,8);
}
getch();
closegraph();
}

No comments:

Post a Comment