CGA
1.Displays a pixel specified by coordinate locations.(Putpixel())
#include<iostream.h>
#include<conio.h>
#include<graphics.h>
int main()
{
int gd,gm;
detectgraph(&gd,&gm);
initgraph(&gd,&gm,"C:\\TC\\BGI");
putpixel(100,200,WHITE);
getch();
closegraph();
return 0;
}
2.Draws a line from a point (x1,y1) to (x2,y2).(line())
#include<iostream.h>
#include<conio.h>
#include<graphics.h>
int main()
{
int gd,gm;
detectgraph(&gd,&gm);
initgraph(&gd,&gm,"C:\\TC\\BGI");
line(100,100,200,200);
getch();
closegraph();
return 0;
}
3.draws a circle with center at (x, y) and given radius.(circle())
#include<iostream.h>
#include<conio.h>
#include<graphics.h>
int main()
{
int gd,gm;
detectgraph(&gd,&gm);
initgraph(&gd,&gm,"C:\\TC\\BGI");
circle(100,100,50);
getch();
closegraph();
return 0;
}
4. rectangle()
#include<iostream.h>
#include<conio.h>
#include<dos.h>
#include<graphics.h>
void main()
{
int gd,gm,a,b;
detectgraph(&gd,&gm);
initgraph(&gd,&gm,"C:\\TC\\BGI");
int left = 150, top = 150;
int right = 450, bottom = 450;
rectangle(left, top, right, bottom);
getch();
}
5. arc()
#include<iostream.h>
#include<conio.h>
#include<dos.h>
#include<graphics.h>
void main()
{
int gd,gm,a,b;
detectgraph(&gd,&gm);
initgraph(&gd,&gm,"C:\\TC\\BGI");
arc(100,100,0,180,50);
getch();
}
6. ellipse()
#include<iostream.h>
#include<conio.h>
#include<dos.h>
#include<graphics.h>
void main()
{
int gd,gm,a,b;
detectgraph(&gd,&gm);
initgraph(&gd,&gm,"C:\\TC\\BGI");
ellipse(200,200,0,360,150,50);
getch();
}
7. drawpoly()
#include<iostream.h>
#include<conio.h>
#include<dos.h>
#include<graphics.h>
void main()
{
int gd,gm,a,b;
detectgraph(&gd,&gm);
initgraph(&gd,&gm,"C:\\TC\\BGI");
int arr[] = {320, 150, 400, 250, 250,350, 320, 150};
drawpoly(4, arr);
getch();
}
8. setcolor()
#include<iostream.h>
#include<conio.h>
#include<dos.h>
#include<graphics.h>
void main()
{
int gd,gm,a,b;
detectgraph(&gd,&gm);
initgraph(&gd,&gm,"C:\\TC\\BGI");
setcolor(RED);
circle(100,100,50);
getch();
}
9. floodfill()
#include<iostream.h>
#include<conio.h>
#include<dos.h>
#include<graphics.h>
void main()
{
int gd,gm,a,b;
detectgraph(&gd,&gm);
initgraph(&gd,&gm,"C:\\TC\\BGI");
circle(100,100,50);
floodfill(100,100,WHITE);
getch();
}
10. setfillstyle()
EMPTY_FILL, SOLID_FILL, LINE_FILL, LTSLASH_FILL, SLASH_FILL, BKSLASH_FILL, LTBKSLASH_FILL, HATCH_FILL, XHATCH_FILL, INTERLEAVE_FILL, WIDE_DOT_FILL, CLOSE_DOT_FILL, USER_FILL
#include<iostream.h>
#include<conio.h>
#include<dos.h>
#include<graphics.h>
void main()
{
int gd,gm,a,b;
detectgraph(&gd,&gm);
initgraph(&gd,&gm,"C:\\TC\\BGI");
setfillstyle(SOLID_FILL,RED);
circle(100,100,50);
floodfill(100,100,WHITE);
getch();
}
11. outtextxy()
#include<iostream.h>
#include<conio.h>
#iclude<dos.h>
#include<graphics.h>
void main()
{
int gd,gm,a,b;
detectgraph(&gd,&gm);
initgraph(&gd,&gm,"C:\\TC\\BGI");
outtextxy(100,100,"Hello World");
getch();
}
12. settextstyle()
DEFAULT_FONT, TRIPLEX_FONT, SMALL_FONT, SANS_SERIF_FONT, GOTHIC_FONT, SCRIPT_FONT, SIMPLEX_FONT, TRIPLEX_SCR_FONT, COMPLEX_FONT, EUROPEAN_FONT, BOLD_FONT
#include<iostream.h>
#include<conio.h>
#include<dos.h>
#include<graphics.h>
void main()
{
int gd,gm,a,b;
detectgraph(&gd,&gm);
initgraph(&gd,&gm,"C:\\TC\\BGI");
settextstyle(TRIPLEX_FONT,VERT_DIR,3);
outtextxy(100,100,"Hello World");
getch();
}
13. cleardevice()
#include<iostream.h>
#include<conio.h>
#include<dos.h>
#include<graphics.h>
void main()
{
int gd,gm,a,b;
detectgraph(&gd,&gm);
initgraph(&gd,&gm,"C:\\TC\\BGI");
line(100,100,200,200);
getch();
cleardevice();
circle(100,100,50);
getch();
}
14. delay()
#include<iostream.h>
#include<conio.h>
#include<dos.h>
#include<graphics.h>
void main()
{
int gd,gm,a,b;
detectgraph(&gd,&gm);
initgraph(&gd,&gm,"C:\\TC\\BGI");
line(100,100,200,200);
delay();
circle(100,100,50);
getch();
}
b. Draw a co-ordinate axis at the center of the screen.
#include<iostream.h>
#include<conio.h>
#include<dos.h>
#include<graphics.h>
void main()
{
int gd,gm,a,b;
detectgraph(&gd,&gm);
initgraph(&gd,&gm,"C:\\TC\\BGI");
a=getmaxx();
b=getmaxy();
line(0,b/2,a,b/2);
line(a/2,0,a/2,b);
getch();
}
Practical No 2
Draw the following basic shapes in the center of the screen : i. Circle ii. Rectangle iii. Square iv. Concentric Circles v. Ellipse vi. Line
i. Circle
Code:
#include<iostream.h>
#include<conio.h>
#include<graphics.h>
int main()
{
int gd,gm,a,b;
detectgraph(&gd,&gm);
initgraph(&gd,&gm,"C:\\TC\\BGI");
a=getmaxx();
b=getmaxy();
line(0,b/2,a,b/2);
line(a/2,0,a/2,b);
circle(a/2,b/2,100);
getch();
}
ii. Rectangle
#include<iostream.h>
#include<conio.h>
#include<graphics.h>
int main()
{
int gd,gm,a,b;
detectgraph(&gd,&gm);
initgraph(&gd,&gm,"C:\\TC\\BGI");
a=getmaxx();
b=getmaxy();
line(0,b/2,a,b/2);
line(a/2,0,a/2,b);
rectangle(a/2-100,b/2-50,a/2+100,b/2+50);
getch();
}
iii. Square
#include<iostream.h>
#include<conio.h>
#include<graphics.h>
int main()
{
int gd,gm,a,b;
detectgraph(&gd,&gm);
initgraph(&gd,&gm,"C:\\TC\\BGI");
a=getmaxx();
b=getmaxy();
line(0,b/2,a,b/2);
line(a/2,0,a/2,b);
rectangle(a/2-100,b/2-100,a/2+100,b/2+100);
getch();
}
iv. Concentric Circles
#include<iostream.h>
#include<conio.h>
#include<graphics.h>
int main()
{
int gd,gm,a,b;
detectgraph(&gd,&gm);
initgraph(&gd,&gm,"C:\\TC\\BGI");
a=getmaxx();
b=getmaxy();
line(0,b/2,a,b/2);
line(a/2,0,a/2,b);
circle(a/2,b/2,100);
circle(a/2,b/2,150);
circle(a/2,b/2,200);
getch();
}
V. ellipse
#include<iostream.h>
#include<conio.h>
#include<graphics.h>
int main()
{
int gd,gm,a,b;
detectgraph(&gd,&gm);
initgraph(&gd,&gm,"C:\\TC\\BGI");
a=getmaxx();
b=getmaxy();
line(0,b/2,a,b/2);
line(a/2,0,a/2,b);
ellipse(a/2,b/2,0,360,100,50);
getch();
}
vi. line
#include<iostream.h>
#include<conio.h>
#include<graphics.h>
int main()
{
int gd,gm,a,b;
detectgraph(&gd,&gm);
initgraph(&gd,&gm,"C:\\TC\\BGI");
a=getmaxx();
b=getmaxy();
line(0,b/2,a,b/2);
line(a/2,0,a/2,b);
line(a/4,b/4,3*a/4,3*b/4);
getch();
}
Practical no-3
a. Divide your screen into four region, draw circle, rectangle, ellipse and half ellipse in each region.
i. Divide your screen into four region, draw circle in each region.
#include<iostream.h>
#include<conio.h>
#include<graphics.h>
int main()
{
int gd,gm,a,b;
detectgraph(&gd,&gm);
initgraph(&gd,&gm,"C:\\TC\\BGI");
a=getmaxx();
b=getmaxy();
line(0,b/2,a,b/2);
line(a/2,0,a/2,b);
circle(a/4,b/4,50);
circle(3*a/4,3*b/4,50);
circle(3*a/4,b/4,50);
circle(a/4,3*b/4,50);
getch();
}
ii. Divide your screen into four region, draw ellipse in each region
#include<iostream.h>
#include<conio.h>
#include<graphics.h>
void main()
{
int gd,gm,a,b;
detectgraph(&gd,&gm);
initgraph(&gd,&gm,"C:\\TC\\BGI");
a=getmaxx();
b=getmaxy();
line(0,b/2,a,b/2);
line(a/2,0,a/2,b);
ellipse(a/4,b/4,0,360,100,50);
ellipse(a/4,3*b/4,0,360,100,50);
ellipse(3*a/4,b/4,0,360,100,50);
ellipse(3*a/4,3*b/4,0,360,100,50);
getch();
}
iii. Divide your screen into four region, draw rectangle in each region.
#include<iostream.h>
#include<conio.h>
#include<graphics.h>
void main()
{
int gd,gm,a,b;
detectgraph(&gd,&gm);
initgraph(&gd,&gm,"C:\\TC\\BGI");
a=getmaxx();
b=getmaxy();
line(0,b/2,a,b/2);
line(a/2,0,a/2,b);
rectangle(a/8,b/8,(3*a)/8,(3*b)/8);
rectangle((5*a)/8,b/8,(7*a)/8,(3*b)/8);
rectangle(a/8,(5*b)/8,(3*a)/8,(7*b)/8);
rectangle((5*a)/8,(5*b)/8,(7*a)/8,(7*b)/8);
getch();
}
iv. Divide your screen into four region, draw line in each region.
#include<iostream.h>
#include<conio.h>
#include<graphics.h>
void main()
{
int gd,gm,a,b;
detectgraph(&gd,&gm);
initgraph(&gd,&gm,"C:\\TC\\BGI");
a=getmaxx();
b=getmaxy();
line(0,b/2,a,b/2);
line(a/2,0,a/2,b);
line(a/8,b/8,(3*a)/8,(3*b)/8);
line((5*a)/8,b/8, (7*a)/8,(3*b)/8);
line(a/8,(5*b)/8,(3*a)/8,(7*b)/8);
line((5*a)/8, (5*b)/8, (7*a)/8,(7*b)/8);
getch();
}
a. Divide your screen into four region, draw circle, rectangle, ellipse and half ellipse in each region.
#include<iostream.h>
#include<conio.h>
#include<graphics.h>
void main()
{
int gd,gm,a,b;
detectgraph(&gd,&gm);
initgraph(&gd,&gm,"C:\\TC\\BGI");
a=getmaxx();
b=getmaxy();
line(0,b/2,a,b/2);
line(a/2,0,a/2,b);
circle(a/4,b/4,50);
outtextxy(a/4,b/4, "Circle");
rectangle((5*a)/8,b/8, (7*a)/8, (3*b)/8);
outtextxy(3*a/4,b/4, "Rectangle");
ellipse(a/4,3*b/4,0,360,100,50);
outtextxy(a/4,3*b/4, "Ellipse");
ellipse(3*a/4,3*b/4,0,180,100,50);
outtextxy(3*a/4,3*b/4, "Half Ellipse");
getch();
}
b. Draw a simple hut on the screen
#include<iostream.h>
#include<conio.h>
#include<graphics.h>
int main()
{
int gd,gm;
detectgraph(&gd,&gm);
initgraph(&gd,&gm, "C:\\TC\\BGI");
int arr[]={150,50,250,150,50,150,150,50};
drawpoly(4,arr);
rectangle(50,150,250,300);
rectangle(100, 200, 200,300);
circle (150,100,20);
rectangle (10,300,290,320);
}
practical 4
a. Develop the program for DDA Line drawing algorithm.
#include<iostream.h>
#include<conio.h>
#include<graphics.h>
#include<dos.h>
#include<math.h>
int main()
{
float x,y,x1,x2,y1,y2,dx,dy,step,xinc,yinc;
int i,gd,gm;
detectgraph(&gd,&gm);
initgraph(&gd,&gm, "C:\\TC\\BGI");
cout<<"enter the value of x1 and y1";
cin>>x1>>y1;
cout<<"enter the value of x2 and y2";
cin>>x2>>y2;
dx=abs(x2-x1);
dy=abs(y2-y1);
if(dx>=dy)
{
step=dx;
}
else
{
step=dy;
}
xinc=dx/step;
yinc=dy/step;
x=x1;
y=y1;
i=1;
while(i<=step)
{
putpixel(x,y,WHITE);
x=x+xinc;
y=y+yinc;
i=i+1;
delay(50);
}
getch();
closegraph();
}
b. Develop the program for Bresenham‘s Line drawing algorithm.
#include<iostream.h>
#include<conio.h>
#include<graphics.h>
#include<dos.h>
#include<math.h>
int main()
{
float x,y,x1,x2,y1,y2,dx,dy,e;
int i,gd,gm;
detectgraph(&gd,&gm);
initgraph(&gd,&gm, "C:\\TC\\BGI");
cout<<"enter the value of x1 and y1";
cin>>x1>>y1;
cout<<"enter the value of x2 and y2";
cin>>x2>>y2;
dx=abs(x2-x1);
dy=abs(y2-y1);
x=x1;
y=y1;
e=2*dy-dx;
i=1;
do
{
putpixel(x,y,YELLOW);
delay(100);
while(e>=0)
{
y=y+1;
e=e-2*dx;
}
x=x+1;
e=e+2*dy;
i=i+1;
}
while(i<=dx);
getch();
}
Practical No-7
#include<graphics.h>
int main(){
initwindow (2000, 400, "Graphics using Dev-C++");
for(int i=0;i<2000;i++)
{
line (0, 180, 2000, 180);
rectangle(130+i,60, 240+i,100);
rectangle(80+i,100,290+i,160);
circle (130+i,160,20);
circle (240+i,160,20);
delay(10);
cleardevice();
}
getch();
return 0;
}
normal
#include<iostream.h>
#include<graphics.h>
#include<dos.h>
#include<conio.h>
void main()
{
int gd, gm;
clrscr();
detectgraph(&gd,&gm);
initgraph(&gd,&gm,"C:\\TC\\BGI");
outtextxy(200,100,"Welcome");
getch();
}
Aim: Write a program in C++ for move a ball.
Code:
#include<iostream.h>
#include<graphics.h>
#include<conio.h>
#include<dos.h>
void main()
{
int gd,gm,i=0,j=225;
detectgraph(&gd,&gm);
initgraph(&gd,&gm,"C:\\TC\\BGI");
if(i<100)
{
for(i;i<100;++i)
{
j--;
line(0,245,650,245);
circle(300,j,20);
delay(20);
cleardevice();
}}
if(i>=99)
{
for(i;i>=0;--i)
{
j++;
line(0,245,650,245);
circle(300,j,20);
delay(20);
cleardevice();
}
}
getch();
}
Practical-6
Aim: Write a program in c++ to translate a point
#include <iostream.h>
#include <conio.h>
#include <graphics.h>
void main() {
int gd, gm,x1,y1, tx, ty; detectgraph(&gd,&gm);
initgraph(&gd,&gm, "C:\\TC\\BGI");
cout<<"Enter the first co-ordinate:"; cin>>x1>>y1;
putpixel (x1,y1,WHITE);
cout<<"Enter the translation vector:"; cin>>tx>>ty;
x1=x1+tx;
y1=y1+ty;
putpixel(x1,y1, RED);
getch();
closegraph();
}
Aim: Write a program in c++ to translate a line.
Code:
#include
int main()
{
int gd=DETECT,gm;
initgraph(&gd,&gm,(char*)"");
int xcen=getmaxx()/2;
int ycen=getmaxy()/2;
int r=50;
int d=1.25-r;
int x=0,y=r;
do
{
putpixel(xcen+x,ycen+y,WHITE);
putpixel(xcen+y,ycen+x,WHITE);
putpixel(xcen+y,ycen-x,WHITE);
putpixel(xcen+x,ycen-y,WHITE);
putpixel(xcen-x,ycen-y,WHITE);
putpixel(xcen-y,ycen-x,WHITE);
putpixel(xcen-y,ycen+x,WHITE);
putpixel(xcen-x,ycen+y,WHITE);
if(d<0)
{
d=d+2*x+3;
y=y;
}
else
{
d=d+2*(x-y)+5;
y=y-1;
}
x=x+1;
}
while(x<y);
getch();
}
b. Develop the program for Bresenhams’ method of Circle drawing
#include<iostream>
int main()
{
int gd=DETECT,gm;
initgraph(&gd,&gm,(char*)"");
int xcen=getmaxx()/2;
int ycen=getmaxy()/2;
int r=50;
int d=3-2*r;
int x=0,y=r;
do
{
putpixel(xcen+x,ycen+y,WHITE);
putpixel(xcen+y,ycen+x,WHITE);
putpixel(xcen+y,ycen-x,WHITE);
putpixel(xcen+x,ycen-y,WHITE);
putpixel(xcen-x,ycen-y,WHITE);
putpixel(xcen-y,ycen-x,WHITE);
putpixel(xcen-y,ycen+x,WHITE);
putpixel(xcen-x,ycen+y,WHITE);
if(d<0)
{
d=d+4*x+6;
}
else
{
d=d+4*(x-y)+10;
y=y-1;
}
x=x+1;
}
while(x<y);
getch();
}
Comments
Post a Comment