#include #include #include #include #include #include float rad(float u) { return M_PI*u/180; } float d3d2g1(float alfa,float beta,float gama,float x1,float y1, float z1) { float x; x=x1*cos(alfa)+y1*cos(beta)+z1*cos(gama); return x; } float d3d2g2(float alfa,float beta,float gama,float x1,float y1, float z1) { float y; y=x1*sin(alfa)+y1*sin(beta)+z1*sin(gama); return y; } void main() { int gd,gm,alfa,beta,gama; float x1,y1,z1,x,y; void *p; printf("introduceti alfa"); scanf("%d",&alfa); printf("introduceti beta"); scanf("%d",&beta); printf("introduceti gama"); scanf("%d",&gama); printf("introduceti x1"); scanf("%f",&x1); printf("introduceti y1"); scanf("%f",&y1); printf("introduceti z1"); scanf("%f",&z1); z1/=sqrt(2); gd=DETECT; initgraph(&gd,&gm,"C:\\BORLANDC\\BGI"); x=d3d2g1(rad(alfa),rad(beta),rad(gama),0,0,0); y=d3d2g2(rad(alfa),rad(beta),rad(gama),0,0,0); moveto(getmaxx()/2+ceil(x),getmaxy()/2+ceil(y)); x=d3d2g1(rad(alfa),rad(beta),rad(gama),0,y1,0); y=d3d2g2(rad(alfa),rad(beta),rad(gama),0,y1,0); lineto(getmaxx()/2+ceil(x),getmaxy()/2+ceil(y)); x=d3d2g1(rad(alfa),rad(beta),rad(gama),x1,y1,0); y=d3d2g2(rad(alfa),rad(beta),rad(gama),x1,y1,0); lineto(getmaxx()/2+ceil(x),getmaxy()/2+ceil(y)); x=d3d2g1(rad(alfa),rad(beta),rad(gama),x1,0,0); y=d3d2g2(rad(alfa),rad(beta),rad(gama),x1,0,0); lineto(getmaxx()/2+ceil(x),getmaxy()/2+ceil(y)); x=d3d2g1(rad(alfa),rad(beta),rad(gama),0,0,0); y=d3d2g2(rad(alfa),rad(beta),rad(gama),0,0,0); lineto(getmaxx()/2+ceil(x),getmaxy()/2+ceil(y)); x=d3d2g1(rad(alfa),rad(beta),rad(gama),0,0,z1); y=d3d2g2(rad(alfa),rad(beta),rad(gama),0,0,z1); lineto(getmaxx()/2+ceil(x),getmaxy()/2+ceil(y)); x=d3d2g1(rad(alfa),rad(beta),rad(gama),0,y1,z1); y=d3d2g2(rad(alfa),rad(beta),rad(gama),0,y1,z1); lineto(getmaxx()/2+ceil(x),getmaxy()/2+ceil(y)); x=d3d2g1(rad(alfa),rad(beta),rad(gama),0,y1,0); y=d3d2g2(rad(alfa),rad(beta),rad(gama),0,y1,0); lineto(getmaxx()/2+ceil(x),getmaxy()/2+ceil(y)); x=d3d2g1(rad(alfa),rad(beta),rad(gama),x1,0,z1); y=d3d2g2(rad(alfa),rad(beta),rad(gama),x1,0,z1); moveto(getmaxx()/2+ceil(x),getmaxy()/2+ceil(y)); x=d3d2g1(rad(alfa),rad(beta),rad(gama),x1,0,0); y=d3d2g2(rad(alfa),rad(beta),rad(gama),x1,0,0); lineto(getmaxx()/2+ceil(x),getmaxy()/2+ceil(y)); x=d3d2g1(rad(alfa),rad(beta),rad(gama),x1,0,z1); y=d3d2g2(rad(alfa),rad(beta),rad(gama),x1,0,z1); moveto(getmaxx()/2+ceil(x),getmaxy()/2+ceil(y)); x=d3d2g1(rad(alfa),rad(beta),rad(gama),x1,y1,z1); y=d3d2g2(rad(alfa),rad(beta),rad(gama),x1,y1,z1); lineto(getmaxx()/2+ceil(x),getmaxy()/2+ceil(y)); x=d3d2g1(rad(alfa),rad(beta),rad(gama),0,y1,z1); y=d3d2g2(rad(alfa),rad(beta),rad(gama),0,y1,z1); lineto(getmaxx()/2+ceil(x),getmaxy()/2+ceil(y)); x=d3d2g1(rad(alfa),rad(beta),rad(gama),x1,y1,z1); y=d3d2g2(rad(alfa),rad(beta),rad(gama),x1,y1,z1); moveto(getmaxx()/2+ceil(x),getmaxy()/2+ceil(y)); x=d3d2g1(rad(alfa),rad(beta),rad(gama),x1,y1,0); y=d3d2g2(rad(alfa),rad(beta),rad(gama),x1,y1,0); lineto(getmaxx()/2+ceil(x),getmaxy()/2+ceil(y)); x=d3d2g1(rad(alfa),rad(beta),rad(gama),x1,0,z1); y=d3d2g2(rad(alfa),rad(beta),rad(gama),x1,0,z1); moveto(getmaxx()/2+ceil(x),getmaxy()/2+ceil(y)); x=d3d2g1(rad(alfa),rad(beta),rad(gama),0,0,z1); y=d3d2g2(rad(alfa),rad(beta),rad(gama),0,0,z1); lineto(getmaxx()/2+ceil(x),getmaxy()/2+ceil(y)); getch(); closegraph(); }