CG File
CG File
PROGRAM 1 Draw line, circle, ellipse, arc, sector, bar etc. using functions.
SOLUTION:
#include<stdio.h>
#include<conio.h>
#include<graphics.h>
void far arc(int x, int y, int stangle, int endangle, int radius);
void far circle(int x,int y, int radius);
void far ellipse(int x, int y, int stangle, int endangle,
int xradius, int yradius);
void far line(int x1, int y1, int x2, int y2);
void far sector(int x, int y, int stangle, int endangle,
int xradius, int yradius);
void far bar(int left, int top, int right, int bottom);
void main()
{
int gdriver=DETECT,gmode,x,y,r;
initgraph(&gdriver,&gmode,"C:\\turboc3\\bgi");
circle(200,200,50);
line(200,100,400,100);
arc(50,100,80,20,40);
sector(200,100,80,50,60,100);
ellipse(100,300,0,360,40,60);
bar(300,100,400,300);
getch();
}
Page No. : 1
OUTPUT
Page No. : 2
OUTPUT
Page No. : 3
OUTPUT
Page No. : 4
OUTPUT
Page No. : 5
OUTPUT
Page No. : 6
Page No. : 7
OUTPUT
Page No. : 8
Page No. : 9
Page No. : 10
OUTPUT
Page No. : 11
Page No. : 12
OUTPUT
Page No. : 13
Page No. : 14
OUTPUT
Page No. : 15
Page No. : 16
OUTPUT
Page No. : 17
Page No. : 18
OUTPUT
Page No. : 19
Page No. : 20
OUTPUT
Page No. : 21
Page No. : 22
OUTPUT
Page No. : 23
Page No. : 24
Page No. : 25
Page No. : 26
Page No. : 27
Page No. : 28
Page No. : 29
Output:-
Page No. : 30
PROGRAM 16 Get the translation vector from the user and translate the
triangle accordingly.
SOLUTION:
#include<stdio.h>
#include<conio.h>
#include<graphics.h>
void main()
{
intgd=DETECT,gm;
int x1,y1,x2,y2,x3,y3,tx,ty;
initgraph(&gd,&gm,"C:\\turboc3\\bgi");
printf("Enter the coordinates:");
scanf("%d%d%d%d%d%d",&x1,&y1,&x2,&y2,&x3,&y3);
line(x1,y1,x2,y2);
line(x2,y2,x3,y3);
line(x3,y3,x1,y1);
printf("Enter the Translate vectors:");
scanf("%d%d",&tx,&ty);
x1=x1+tx;
y1=y1+ty;
x2=x2+tx;
y2=y2+ty;
x3=x3+tx;
y3=y3+ty;
line(x1,y1,x2,y2);
line(x2,y2,x3,y3);
line(x3,y3,x1,y1);
getch();
closegraph();
}
Page No. : 31
OUTPUT
Page No. : 32
PROGRAM 17 Get the rotation angle from the user and rotate the triangle
accordingly.
SOLUTION:
#include<stdio.h>
#include<conio.h>
#include<graphics.h>
#include<math.h>
void main()
{
int gd=DETECT,gm;
int x1,y1,x2,y2,x3,y3;
float r,t;
initgraph(&gd,&gm,"C://Turboc3//BGI");
printf("enter lines coordiante:");
scanf("%d%d%d%d%d%d",&x1,&y1,&x2,&y2,&x3,&y3);
line(x1,y1,x2,y2);
line(x2,y2,x3,y3);
line(x3,y3,x1,y1);
printf("enter the angle of rotation:");
scanf("%f",&r);
t=r*(3.14)/180;
x1=abs(x1*cos(t)-y1*sin(t));
y1=abs(x1*sin(t)+y1*cos(t));
x2=abs(x2*cos(t)-y2*sin(t));
y2=abs(x2*sin(t)+y2*cos(t));
x3=abs(x3*cos(t)-y3*sin(t));
y3=abs(x3*sin(t)+y3*cos(t));
line(x1,y1,x2,y2);
line(x2,y2,x3,y3);
line(x3,y3,x1,y1);
getch();
}
Page No. : 33
OUTPUT
Page No. : 34
PROGRAM 18 Get the scaling factor from the user and scale the triangle
accordingly.
SOLUTION:
#include<stdio.h>
#include<conio.h>
#include<graphics.h>
void main()
{
int gd=DETECT,gm;
int x1,y1,x2,y2,x3,y3,tx,ty,tz;
initgraph(&gd,&gm,"C://Turboc3//BGI");
printf("enter lines coordiante:");
scanf("%d%d%d%d%d%d",&x1,&y1,&x2,&y2,&x3,&y3);
printf("line as ************* follow\n");
line(x1,y1,x2,y2);
line(x2,y2,x3,y3);
line(x3,y3,x1,y1);
printf("enter the translation vector:\n");
scanf("%d%d",&tx,&ty);
x1=x1*tx;
y1=y1*ty;
x2=x2*tx;
y2=y2*ty;
x3=x3*tx;
y3=y3*ty;
printf("inital line is");
line(x1,y1,x2,y2);
line(x2,y2,x3,y3);
line(x3,y3,x1,y1);
getch();
}
Page No. : 35
OUTPUT
Page No. : 36
Page No. : 37
OUTPUT
Page No. : 38
OUTPUT
Page No. : 39
Page No. : 40
OUTPUT
Page No. : 41
Page No. : 42
OUTPUT
Page No. : 43
Page No. : 44
OUTPUT
Page No. : 45
Page No. : 46
OUTPUT
Page No. : 47
Page No. : 48
OUTPUT
Page No. : 49
Page No. : 50
OUTPUT
Page No. : 51
Page No. : 52
OUTPUT
Page No. : 53
Page No. : 54
OUTPUT
Page No. : 55
Page No. : 56
OUTPUT
Page No. : 57
Page No. : 58
OUTPUT
Page No. : 59