Direct Method For Line Drawing
Direct Method For Line Drawing
AIM :-
SOURCE CODE
*************************************************************************************
#include<graphics.h>
#include<iostream.h>
#include<stdio.h>
#include<math.h>
#include<conio.h>
Void main()
Initgraph(&gd, &gm,"");
int x1,x2,c,y1,y2,dy,dx,m;
cin>>x1>>x2>>y1>>y2;
dy=y2-y1;
dx=x2-x1;
m=dy/dx
c=y1-m*x1;
while(x1<=x2)
if(m<=1)
x1=x1+1;
y1=m*x1+c;
putpixel(x1,y1,WHITE);
else{
y1=y1+1;
x1=(y1-c/m);
putpixel(x1,y1,WHITE);
getch();
closegraph();
*************************************************************************************
PROGRAM 2
AIM :-
SOURCE CODE
****************************************************************************
#include<graphics.h>
#include<iostream.h>
#include<stdio.h>
#include<math.h>
#include<conio.h>
Void main()
Initgraph(&gd, &gm,"");
int x1,x2,c,y1,y2,dy,dx,m;
cin>>x1>>x2>>y1>>y2;
dy=y2-y1;
dx=x2-x1;
m=dy/dx
c=y1-m*x1;
while(x1<=x2)
if(m<=1)
x1=x1+1;
y1=y1+m;
putpixel(x1,y1,WHITE);
else{
y1=y1+1;
x1=x1+(1/m);
putpixel(x1,y1,WHITE);
getch();
closegraph();
*************************************************************************************
PROGRAM 3
AIM :-
SOURCE CODE
****************************************************************************
#include<graphics.h>
#include<iostream.h>
#include<stdio.h>
#include<math.h>
#include<conio.h>
Void main()
Initgraph(&gd, &gm,"");
int x1,x2,f,fe,fne,y1,y2,dy,dx,m;
cin>>x1>>x2>>y1>>y2;
dy=y2-y1;
dx=x2-x1;
f=(2*dy)-dx;
while(x1<=x2)
if(f<=0)
x1=x1+1;
y1=y1;
f=2*dy;
putpixel(x1,y1,WHITE);
f=f+fe;
else{
y1=y1+1;
x1=x1+1;
f=(2*dy)-(2*dx);
putpixel(x1,y1,WHITE);
f=f+fne
getch();
closegraph();
*************************************************************************************
PROGRAM 4
AIM :-
SOURCE CODE
*************************************************************************************
#include<graphics.h>
#include<iostream.h>
#include<stdio.h>
#include<math.h>
#include<conio.h>
Void main()
Initgraph(&gd, &gm,"");
int x1,xc,y1,yc,x2,y2,r;
cin>>xc>>yc>>r;
x1=0;
x2=r/sqrt(2);
while(x1<=x2)
y1=sqrt(r*r-x1*x1);
putpixel(y1+xc,x1+yc,WHITE);
putpixel(-y1+xc,x1+yc,WHITE);
putpixel(y1+xc,-x1+yc,WHITE);
putpixel(-y1+xc,-x1+yc,WHITE);
putpixel(x1+yc,y1+xc,WHITE);
putpixel(-x1+yc,y1+xc,WHITE);
putpixel(x1+yc,-y1+xc,WHITE);
putpixel(-x1+yc,-y1+xc,WHITE);
x1=x1+1;
getch();
closegraph();
*****************************************************************************
PROGRAM 5
AIM :-
SOURCE CODE
****************************************************************************
#include<graphics.h>
#include<iostream.h>
#include<stdio.h>
#include<math.h>
#include<conio.h>
Void main()
Initgraph(&gd, &gm,"");
int x1,xc,y1,yc,r;
cin>>xc>>yc>>r;
x1=0;
y1=r;
t=1/r;
while(x1<=y1)
putpixel(y1+xc,x1+yc,WHITE);
putpixel(-y1+xc,x1+yc,WHITE);
putpixel(y1+xc,-x1+yc,WHITE);
putpixel(-y1+xc,-x1+yc,WHITE);
putpixel(x1+yc,y1+xc,WHITE);
putpixel(-x1+yc,y1+xc,WHITE);
putpixel(x1+yc,-y1+xc,WHITE);
putpixel(-x1+yc,-y1+xc,WHITE);
float temp=y1;
y1=(y1*cos(t))+(x1*sin(t));
x1=(x1*cos(t))+temp*sin(t));
getch();
closegraph();
*****************************************************************************
PROGRAM 6
AIM :-
SOURCE CODE
****************************************************************************
#include<graphics.h>
#include<iostream.h>
#include<stdio.h>
#include<math.h>
#include<conio.h>
Void main()
Initgraph(&gd, &gm,"");
int x1,xc,y1,yc,r,t,f;
cin>>xc>>yc>>r;
x1=0;
y1=r;
f=3-(2*r);
while(x1<=y1)
If(f<=0)
f=f+6+4*x;
X=x+1;
}
else
f=f+6+4*x;
x=x+1;
y=y+1;
putpixel(y1+xc,x1+yc,WHITE);
putpixel(-y1+xc,x1+yc,WHITE);
putpixel(y1+xc,-x1+yc,WHITE);
putpixel(-y1+xc,-x1+yc,WHITE);
putpixel(x1+yc,y1+xc,WHITE);
putpixel(-x1+yc,y1+xc,WHITE);
putpixel(x1+yc,-y1+xc,WHITE);
putpixel(-x1+yc,-y1+xc,WHITE);
}}
getch();
closegraph();
*********************************************************************************
PROGRAM 7
AIM :-
SOURCE CODE
****************************************************************************
#include<graphics.h>
#include<iostream.h>
#include<stdio.h>
#include<math.h>
#include<conio.h>
Void main()
Initgraph(&gd, &gm,"");
int x1,xc,y1,yc,r,,f;
cin>>xc>>yc>>r;
x1=0;
y1=r;
f=1-r;
while(x1<=y1)
If(f<=0)
f=f+3+2*x1;
X1=x1+1;
}
else
f=f+5+(2*x1-(2*y1));
x1=x1+1;
y1=y1-1;
putpixel(y1+xc,x1+yc,WHITE);
putpixel(-y1+xc,x1+yc,WHITE);
putpixel(y1+xc,-x1+yc,WHITE);
putpixel(-y1+xc,-x1+yc,WHITE);
putpixel(x1+yc,y1+xc,WHITE);
putpixel(-x1+yc,y1+xc,WHITE);
putpixel(x1+yc,-y1+xc,WHITE);
putpixel(-x1+yc,-y1+xc,WHITE);
}}
getch();
closegraph();
********************************************************************************
PROGRAM 8
AIM :-
SOURCE CODE
****************************************************************************
#include<graphics.h>
#include<iostream.h>
#include<stdio.h>
#include<math.h>
#include<conio.h>
Void main()
Initgraph(&gd, &gm,"");
int x1,xc,y1,yc,rx,ry,x2;
cin>>xc>>yc>>rx>>ry;
x1=0;
x2=rx;
while(x1<=x2)
y1=(ry/rx)*sqrt((rx*rx)-(x1*x1));
x1=x1+1;
putpixel(y1+xc,x1+yc,WHITE);
putpixel(-y1+xc,x1+yc,WHITE);
putpixel(y1+xc,-x1+yc,WHITE);
putpixel(-y1+xc,-x1+yc,WHITE);
putpixel(x1+yc,y1+xc,WHITE);
putpixel(-x1+yc,y1+xc,WHITE);
putpixel(x1+yc,-y1+xc,WHITE);
putpixel(-x1+yc,-y1+xc,WHITE);
}}
getch();
closegraph();
************************************************************************************
PROGRAM 9
AIM :-
SOURCE CODE
****************************************************************************
#include<graphics.h>
#include<iostream.h>
#include<stdio.h>
#include<math.h>
#include<conio.h>
Void main()
Initgraph(&gd, &gm,"");
int x1,xc,y1,yc,rx,ry,x2,t1,t2;
cin>>xc>>yc>>rx>>ry;
t1=0;
t2=90;
while(t1<=t2)
y1=ry*sin(t1);
x1=rx*cos(t1);
putpixel(y1+xc,x1+yc,WHITE);
putpixel(-y1+xc,x1+yc,WHITE);
putpixel(y1+xc,-x1+yc,WHITE);
putpixel(-y1+xc,-x1+yc,WHITE);
putpixel(x1+yc,y1+xc,WHITE);
putpixel(-x1+yc,y1+xc,WHITE);
putpixel(x1+yc,-y1+xc,WHITE);
putpixel(-x1+yc,-y1+xc,WHITE);
t1=t1+1;
getch();
closegraph();
*********************************************************************************
PROGRAM 10
AIM :-
SOURCE CODE
****************************************************************************
#include<graphics.h>
#include<iostream.h>
#include<stdio.h>
#include<math.h>
#include<conio.h>
Void main()
Initgraph(&gd, &gm,"");
int xr,xc,yr,yc,x,y,f;
cin>>xc>>yc>>xr>>yr;
x=0;
y=yr;
f=(yr*yr)+(xr*xr)/4-(xr*xr)*yr;
while(2*(yr*yr)*x<=2*(xr*xr)*y)
if(f<=0)
f=f+(3+(2*x))*(yr*yr);
x++;
putpixel(x1+yc,y1+xc,WHITE);
putpixel(-x1+yc,y1+xc,WHITE);
putpixel(x1+yc,-y1+xc,WHITE);
putpixel(-x1+yc,-y1+xc,WHITE);
else
f=f+3*(yr*yr)+2*x*(yr*yr)+2*(xr*xr)-2*y*(xr*xr);
x++;
y--;
putpixel(x1+yc,y1+xc,WHITE);
putpixel(-x1+yc,y1+xc,WHITE);
putpixel(x1+yc,-y1+xc,WHITE);
putpixel(-x1+yc,-y1+xc,WHITE);
f=(yr*yr)/4-2*(xr*xr)*yr+(xr*xr);
while(y>=0)
if(f<=0)
f=f+(3-(2*y))*(xr*xr);
x++;
y--;
putpixel(x1+yc,y1+xc,WHITE);
putpixel(-x1+yc,y1+xc,WHITE);
putpixel(x1+yc,-y1+xc,WHITE);
putpixel(-x1+yc,-y1+xc,WHITE);
else
f=f+2*(yr*yr)+2*x*(yr*yr)+3*(xr*xr)-2*y*(xr*xr);
y--
putpixel(x1+yc,y1+xc,WHITE);
putpixel(-x1+yc,y1+xc,WHITE);
putpixel(x1+yc,-y1+xc,WHITE);
putpixel(-x1+yc,-y1+xc,WHITE);
getch();
closegraph();
*************************************************************************************