#include< stdio.h>
#include< conio.h>
#include< graphics.h>
void BoundaryFill4(int,int,int,int);
void BoundaryFill8(int,int,int,int);
void main()
{
 int gd=DETECT,gm;
 initgraph(&gd,&gm,"");
 setbkcolor(15);
 setcolor(BLUE);
 outtextxy(0,0,"Boundary Filling algorithm using 4-connected and 8-connected");
 rectangle(50,50,100,100);
 circle(50,50,30);
 BoundaryFill8(56,56,5,BLUE);
 BoundaryFill4(40,40,14,BLUE);
getch();
}
void BoundaryFill4(int x,int y,int fill,int boundary)
{
 int current;
 current=getpixel(x,y);
 if((current!=boundary) && (current!=fill))
 {
  putpixel(x,y,fill);
  BoundaryFill4(x+1,y,fill,boundary);
  BoundaryFill4(x-1,y,fill,boundary);
  BoundaryFill4(x,y-1,fill,boundary);
  BoundaryFill4(x,y+1,fill,boundary);
 }
}
void BoundaryFill8(int x,int y,int fill,int boundary)
{
 int current;
 current=getpixel(x,y);
 if((current!=boundary) && (current!=fill))
 {
  putpixel(x,y,fill);
  BoundaryFill8(x+1,y,fill,boundary);
  BoundaryFill8(x-1,y,fill,boundary);
  BoundaryFill8(x,y-1,fill,boundary);
  BoundaryFill8(x,y+1,fill,boundary);
  BoundaryFill8(x+1,y+1,fill,boundary);
  BoundaryFill8(x-1,y+1,fill,boundary);
  BoundaryFill8(x-1,y-1,fill,boundary);
  BoundaryFill8(x+1,y-1,fill,boundary);
 }
}
   #include  #include  int fsize; int frm[15]; void display(); void main() {  int pg[100],nPage,i,j,pf=0,top=-1,temp,flag=0;  clrscr();  printf("\n Enter frame size:");  scanf("%d",&fsize);  printf("\n Enter number of pages:");  scanf("%d",&nPage);   for(i=0;i    OUTPUT    Enter frame size:3   Enter number of pages:12   Enter page[1]:1  Enter page[2]:2  Enter page[3]:3  Enter page[4]:4  Enter page[5]:1  Enter page[6]:2  Enter page[7]:5  Enter page[8]:1  Enter page[9]:2  Enter page[10]:3  Enter page[11]:4  Enter page[12]:5   page |          Frame content --------------------------------------  1    |  1       -1      -1  2    |  1       2       -1  3    |  1       2       3  4    |  4       2       3  1    |  4       1       3  2    |  4       1       2  5    |  5       1       2  1    |  5       1       2  2    |  5       1       2  3    |  5       3       2  4    |  5       3       4  5    |  5       3       4 ---------------------------...

Comments
Post a Comment