Skip to content

Commit 3eaf699

Browse files
Add files via upload
1 parent 00a91f6 commit 3eaf699

28 files changed

+707
-0
lines changed

2D_graphics_programs/2DReflection.C

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
#include<stdio.h>
2+
#include<conio.h>
3+
#include<graphics.h>
4+
#include<dos.h>
5+
#include<math.h>
6+
void main()
7+
{
8+
int gm,gd=DETECT,x1,x2,y1,y2;
9+
int xn1,xn2,yn1,yn2,rf;
10+
clrscr();
11+
printf("Enter the coordinates x1,y1,x2,y2");
12+
scanf("%d%d%d%d",&x1,&y1,&x2,&y2);
13+
printf("Enter the reflection frame \n");
14+
scanf("%d",&rf);
15+
initgraph(&gd,&gm,"c:\\tc\\bgi");
16+
cleardevice();
17+
if((x1<y1)^(x2<y2))
18+
{
19+
xn1=x1+rf;
20+
yn1=y1;
21+
xn2=x2+rf;
22+
yn2=y2;
23+
}
24+
else{
25+
xn1=x1;
26+
yn1=y1+rf;
27+
xn2=x2;
28+
yn2=y2+rf;
29+
}
30+
setcolor(RED); //original line
31+
line(x1,y1,x2,y2);
32+
setcolor(GREEN); //reflection
33+
line(xn1,yn1,xn2,yn2);
34+
getch();
35+
closegraph();
36+
}

2D_graphics_programs/2DRotation.C

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
#include<graphics.h>
2+
#include<stdlib.h>
3+
#include<stdio.h>
4+
#include<math.h>
5+
void main()
6+
{
7+
int graphdriver=DETECT,graphmode,errorcode;
8+
int i;
9+
int x2,y2,x1,y1,x,y,xn,yn;
10+
double r11,r12,r21,r22,th;
11+
clrscr();
12+
printf("Enter the 2 line end points:");
13+
printf("x1,y1,x2,y2");
14+
scanf("%d%d%d%d",&x1,&y1,&x2,&y2);
15+
printf("\n\n");
16+
printf("Enter the angle\n\n");
17+
scanf("%lf",&th);
18+
initgraph(&graphdriver,&graphmode,"c:\\tc\\bgi");
19+
20+
line(x1,y1,x2,y2);
21+
delay(100) ;
22+
23+
r11=cos((th*3.1428)/180);
24+
r12=sin((th*3.1428)/180);
25+
r21=(-sin((th*3.1428)/180));
26+
r22=cos((th*3.1428)/180);
27+
//printf("%lf %lf %lf %lf",r11,r12,r21,r22);
28+
xn=((x2*r11)-(y2*r12));
29+
yn=((x2*r12)+(y2*r11));
30+
line(x1,y1,xn,yn);
31+
getch();
32+
closegraph();
33+
}
12.2 KB
Loading

2D_graphics_programs/2DSCALING.C

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
#include<graphics.h>
2+
#include<stdlib.h>
3+
#include<stdio.h>
4+
#include<math.h>
5+
void main()
6+
{
7+
int graphdriver=DETECT,graphmode,errorcode;
8+
int i;
9+
int x2,y2,x1,y1,x,y;
10+
clrscr();
11+
printf("Enter the 2 line end points:");
12+
printf("x1,y1,x2,y2");
13+
scanf("%d%d%d%d",&x1,&y1,&x2,&y2);
14+
initgraph(&graphdriver,&graphmode,"c:\\tc\\bgi");
15+
printf("Line before scaling\n\n\n");
16+
line(x1,y1,x2,y2);
17+
delay(100);
18+
printf("Enter scaling co-ordinates ");
19+
printf("x,y");
20+
scanf("%d%d",&x,&y);
21+
x1=(x1*x);
22+
y1=(y1*y);
23+
x2=(x2*x);
24+
y2=(y2*y);
25+
printf("Line after scaling\n\n\n");
26+
line(x1,y1,x2,y2);
27+
getch();
28+
closegraph();
29+
}

2D_graphics_programs/2DSharing.C

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
#include<stdio.h>
2+
#include<conio.h>
3+
#include<graphics.h>
4+
#include<dos.h>
5+
#include<math.h>
6+
void main()
7+
{
8+
int gm,gd=DETECT,x1,x2,y1,y2;
9+
10+
float sh;
11+
float xn1,xn2,yn1,yn2;
12+
clrscr();
13+
printf("Enter the coordinates x1,y1,x2,y2");
14+
scanf("%d%d%d%d",&x1,&y1,&x2,&y2);
15+
printf("Enter the value for shearing\n");
16+
scanf("%f",&sh);
17+
initgraph(&gd,&gm,"c:\\tc\\bgi");
18+
cleardevice();
19+
xn1=x1+sh*y1;
20+
yn1=y1;
21+
xn2=x2+sh*y2;
22+
yn2=y2;
23+
printf("Line Before shearing\n\n\n");
24+
line(x1,y1,x2,y2);
25+
delay(5000);
26+
cleardevice();
27+
printf("Line after shearing\n");
28+
line(xn1,yn1,xn2,yn2);
29+
getch();
30+
closegraph();
31+
}

2D_graphics_programs/2DTranslation.C

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
#include<graphics.h>
2+
#include<stdlib.h>
3+
#include<stdio.h>
4+
#include<math.h>
5+
void main()
6+
{
7+
int graphdriver=DETECT,graphmode,errorcode;
8+
int i;
9+
int x2,y2,x1,y1,x,y;
10+
clrscr();
11+
printf("Enter the 2 line end points:");
12+
printf("x1,y1,x2,y2");
13+
scanf("%d%d%d%d",&x1,&y1,&x2,&y2);
14+
initgraph(&graphdriver,&graphmode,"c:\\tc\\bgi");
15+
printf("Line before translation\n");
16+
line(x1,y1,x2,y2);
17+
delay(1000) ;
18+
printf("\n\n\n");
19+
printf("Enter translation co-ordinates ");
20+
printf("x,y");
21+
scanf("%d%d",&x,&y);
22+
x1=x1+x;
23+
y1=y1+y;
24+
x2=x2+x;
25+
y2=y2+y;
26+
printf("\nLine after translation\n\n");
27+
line(x1,y1,x2,y2);
28+
getch();
29+
closegraph();
30+
}
17.3 KB
Loading
14 KB
Loading
19.7 KB
Loading
19.4 KB
Loading

3D_graphics_programs/3Drotation.c

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
#include<stdio.h>
2+
#include<conio.h>
3+
#include<graphics.h>
4+
#include<math.h>
5+
int maxx,maxy,midx,midy;
6+
void axis()
7+
{
8+
getch();
9+
cleardevice();
10+
line(midx,0,midx,maxy);
11+
line(0,midy,maxx,midy);
12+
}
13+
void main()
14+
{
15+
int x,y,z,o,x1,x2,y1,y2;
16+
int gd=DETECT,gm;
17+
detectgraph(&gd,&gm);
18+
initgraph(&gd,&gm,"c:\\tc\\bgi");
19+
//setfillstyle(0,getmaxcolor());
20+
maxx=getmaxx();
21+
maxy=getmaxy();
22+
midx=maxx/2;
23+
midy=maxy/2;
24+
axis();
25+
bar3d(midx+50,midy-100,midx+60,midy-90,5,1);
26+
printf("Enter rotating angle");
27+
scanf("%d",&o);
28+
x1=50*cos(o*3.14/180)-100*sin(o*3.14/180);
29+
y1=50*sin(o*3.14/180)+100*cos(o*3.14/180);
30+
x2=60*cos(o*3.14/180)-90*sin(o*3.14/180);
31+
y2=60*sin(o*3.14/180)+90*cos(o*3.14/180);
32+
//axis();
33+
printf("After rotation about z axis\n");
34+
bar3d(midx+x1,midy-y1,midx+x2,midy-y2,5,1);
35+
delay(1000);
36+
//axis();
37+
printf("After rotation about x axis\n");
38+
bar3d(midx+50,midy-x1,midx+60,midy-x2,5,1);
39+
delay(1000);
40+
//axis();
41+
printf("After rotation about y axis");
42+
bar3d(midx+x1,midy-100,midx+x2,midy-90,5,1);
43+
getch();
44+
closegraph();
45+
}
31.1 KB
Loading

3D_graphics_programs/3Dscaling.C

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
#include<stdio.h>
2+
#include<conio.h>
3+
#include<graphics.h>
4+
#include<math.h>
5+
int maxx,maxy,midx,midy;
6+
void axis()
7+
{
8+
getch();
9+
cleardevice();
10+
line(midx,0,midx,maxy);
11+
line(0,midy,maxx,midy);
12+
}
13+
void main()
14+
{
15+
int x,y,z,o,x1,x2,y1,y2;
16+
int gd=DETECT,gm;
17+
detectgraph(&gd,&gm);
18+
initgraph(&gd,&gm,"c:\\tc\\bgi");
19+
//setfillstyle(0,getmaxcolor());
20+
maxx=getmaxx();
21+
maxy=getmaxy();
22+
midx=maxx/2;
23+
midy=maxy/2;
24+
25+
axis();
26+
printf("Before scaling(Red):\n");
27+
setcolor(RED);
28+
bar3d(midx+50,midy-100,midx+60,midy-90,5,1);
29+
printf("Enter scaling factors");
30+
scanf("%d%d%d", &x,&y,&z);
31+
//axis();
32+
printf("\nAfter scaling(Green):");
33+
setcolor(GREEN);
34+
bar3d(midx+(x*50),midy-(y*100),midx+(x*60),midy-(y*90),5*z,1);
35+
//axis();
36+
getch();
37+
closegraph();
38+
}
27.1 KB
Loading

3D_graphics_programs/3Dtranslation.C

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
#include<stdio.h>
2+
#include<conio.h>
3+
#include<graphics.h>
4+
#include<math.h>
5+
int maxx,maxy,midx,midy;
6+
void axis()
7+
{
8+
getch();
9+
cleardevice();
10+
line(midx,0,midx,maxy);
11+
line(0,midy,maxx,midy);
12+
}
13+
void main()
14+
{
15+
int x,y,z,o,x1,x2,y1,y2;
16+
int gd=DETECT,gm;
17+
detectgraph(&gd,&gm);
18+
initgraph(&gd,&gm,"c:\\tc\\bgi");
19+
maxx=getmaxx();
20+
maxy=getmaxy();
21+
midx=maxx/2;
22+
midy=maxy/2;
23+
axis();
24+
printf("Before translation:(red color)\n");
25+
setcolor(RED);
26+
bar3d(midx+50,midy-100,midx+60,midy-90,10,1);
27+
printf("Enter translation factor");
28+
scanf("%d%d",&x,&y);
29+
printf("\nAfter translation:(green)");
30+
setcolor(GREEN);
31+
bar3d(midx+x+50,midy-(y+100),midx+x+60,midy-(y+90),10,1);
32+
getch();
33+
closegraph();
34+
}
28.8 KB
Loading

0 commit comments

Comments
 (0)