File size: 1.18 KB
File content type: text/plain
Category: Practical Files
Subject: Computer Graphics and Multimedia
// Program uses graphics.h that is generally available in Turbo C #include<stdio.h> #include<dos.h> #include<graphics.h> #include<conio.h> void main() { int gd=DETECT, gm=DETECT; int r, x, y, midx, midy,p; initgraph(&gd,&gm,""); printf("Enter the Radius of circle : "); scanf("%d",&r); x = 0; y = r; p = 3 - 2*r; midx=getmaxx()/2; //To get the max position (Bottom-Right corner) of screen. midy=getmaxy()/2; //Dividing by 2 to get the centre of screen. do { putpixel(midx+ x, midy+ y , 1); //All possible 8 combinations to draw 8 Segments putpixel(midx- x, midy- y , 2); putpixel(midx- x, midy+ y , 3); putpixel(midx+ x, midy- y , 4); putpixel(midx +y, midy+ x , 5); putpixel(midx +y, midy -x , 6); putpixel(midx -y, midy -x , 7); putpixel(midx -y, midy +x , 8); delay(20); x++; //x will always increase , so it is incremented outside if-else if(p<0) { p=p+4*x+6; } else { y--; //y decrements only when p>=0 p=p+4*(x-y)+10; } }while(x<=y); getch(); }
Related searches C Program for Bresenham Circle Drawing Algorithm
Last Updated: July 16, 2022