Tuesday, November 6, 2007

DDA Line Drawing

Program : DDA Line Drawing



#include<stdio.h>

#include<conio.h>

#include <graphics.h>

#include<math.h>

#include<dos.h>

void main()

{

float a,b,c,d,e,x,y,x1,y1,x2,y2;

int x3,y3,i;

int gdriver=DETECT,gmode,errorcode;

initgraph(&gdriver,&gmode,"c:\\turboc3" );

cleardevice();

printf("\nEnter x1:");

scanf("%f",&x1);

printf("\nEnter y1:");

scanf("%f",&y1);

printf("\nEnter x2:");

scanf("%f",&x2);

printf("\nEnter y2:");

scanf("%f",&y2);

clrscr();

a=x2-x1; b=y2-y1;

if(abs(a)<abs(b))

c=abs(b);

else

c=abs(a);

d=a/c; e=b/c;

x=x1; y=y1;

x3=x; y3=y;

putpixel(x3,y3,15);

for(i=0;i<c;i++)

{

//printf("(%d,%d)\n",x3,y3);

putpixel(x3,y3,0);

delay(20);

x=x+d; y=y+e;

x3=x; y3=y;

if((x-x3)>=.5)

x3++;

if((y-y3)>=.5)

y3++;

}

x3=x; y3=y;

putpixel(x3,y3,4);

getch();

closegraph();

}

0 comments: