Thursday, January 12, 2012

Three Dimensional Transformation Algorithms in c Language Programming

These 3d dimesional Transformation algorithm was draw by the mathematical calculation using sin and cos function in Math.h header file using bar3d function in Graphics header file.And it will perform After the scaling Operation in x-axis y-axis z-axis.In these three dimensional it show the translation effect
You can see also there another type of program
Source code 3D transformation algorithm Source code in C Language programming 
#include
#include
#include
#include
int maxx,maxy,midx,midy;
void axis()
{
getch();
cleardevice();
line(midx,0,midx,maxy);
line(0,midy,maxx,midy);
}
void main()
{
int gd,gm,x,y,z,o,x1,x2,y1,y2;
detectgraph(&gd,&gm);
initgraph(&gd,&gm,"c:/tc/bgi");
setfillstyle(0,getmaxcolor());
maxx=getmaxx();
maxy=getmaxy();
midx=maxx/2;
midy=maxy/2;
axis();
bar3d(midx+50,midy-100,midx+60,midy-90,5,1);
printf("\nEnter the Translation Factor");
scanf("%d%d",&x,&y);
axis();
printf("\nAfter Translation");
bar3d(midx+50,midy-100,midx+60,midy-90,5,1);
bar3d(midx+x+50,midy-(y+100),midx+x+60,midy-(y+90),5,1);
axis();
bar3d(midx+50,midy-100,midx+60,midy-90,5,1);
printf("\nEnter the Scaling Factor");
scanf("%d%d%d",&x,&y,&z);
axis();
printf("\nAfter Scaling");
bar3d(midx+50,midy-100,midx+60,midy-90,5,1);
bar3d(midx+(x*50),midy-(y*100),midx+(x*60),midy-(y*90),5*z,1);
axis();
bar3d(midx+50,midy-100,midx+60,midy-90,5,1);
printf("\nEnter the Rotating Angle");
scanf("%d",&o);
x1=50*cos(o*3.14/180)-100*sin(o*3.14/180);
y1=50*sin(o*3.14/180)+100*cos(o*3.14/180);
x2=60*cos(o*3.14/180)-90*sin(o*3.14/180);
y2=60*sin(o*3.14/180)+90*cos(o*3.14/180);
axis();
printf("\nAfter Rotating about Z-axis");
bar3d(midx+50,midy-100,midx+60,midy-90,5,1);
bar3d(midx+x1,midy-y1,midx+x2,midy-y2,5,1);
axis();
printf("\nAfter rotating about X-axis");
bar3d(midx+50,midy-100,midx+60,midy-90,5,1);
bar3d(midx+50,midy-x1,midx+60,midy-x2,5,1);
axis();
printf("\nAfter rotating about Y-axis");
bar3d(midx+50,midy-100,midx+60,midy-90,5,1);
bar3d(midx+x1,midy-100,midx+x2,midy-90,5,1);
getch();
closegraph();
}
OUTPUT 3D transformation algorithm Computer Graphics CS1355-Graphics and Multimedia Lab
Output for translation scaling translation in X-axis Y-axis and z-axis

Visualization of 3-Dimensional Images Algorithm
Visualization of 3-Dimensional Images Algorithm After Translation
Visualization of 3-Dimensional Images Algorithm Scaling
Visualization of 3-Dimensional Images Algorithm
Visualization of 3-Dimensional Images Algorithm in Z Axiz

0 comments:

Flag counter

free counters