Program to draw a line using DDA Algorithm
Here's a program to draw a line in C language using DDL line drawing algorithm.This program asks you for starting and ending co-ordinates of line and outputs an animation effect by drawing a line using DDA line drawing algorithm starting from the points given by user in the input .
Output Image will be something like this:
#include <stdio.h>
#include <dos.h>
#include <graphics.h>
void lineDDA(int, int, int, int);
void main()
{
int x1, y1, xn, yn;
int gd = DETECT, gm;
initgraph(&gd, &gm, "C:\\TurboC3\\BGI");
printf("Enter the X Co-ordinate of starting point of line: ");
scanf("%d", &x1);
printf("Enter the Y Co-ordinate of starting point of line: ");
scanf("%d", &y1);
printf("Enter the X Co-ordinate of ending point of line: ");
scanf("%d", &xn);
printf("Enter the X Co-ordinate of ending point of line: ");
scanf("%d", &yn);
lineDDA(x1, y1, xn, yn);
getch();
}
void lineDDA(int x1, int y1, int xn, int yn)
{
int dx, dy, m, i;
m = (yn-y1)/(xn-x1);
for (i=x1; i<=xn; i++)
{
if (m <= 1)
{
dx = 1;
dy = m * dx;
}
else
{
dy = 1;
dx = dy / m;
}
x1 = x1 + dx;
y1 = y1 + dy;
putpixel(x1, y1, RED);
delay(20);
}
}
No comments:
Post a Comment