#include "stdafx.h"
#include "Projekce.h"

 Zobraz::Zobraz() : ax(500), ay(500), X(0), Y(0), Z(-100), alfa(0.0), beta(0.5), gama(0.0), x(201), y(201)
		{
			SinAlfa = sin(alfa);
			CosAlfa = cos(alfa);
			SinBeta = sin(beta);
			CosBeta = cos(beta);
			SinGama = sin(gama);
			CosGama = cos(gama);
		}
	

 double Zobraz::PromitnoutX(double Xs, double Ys, double Zs)
		{
			return ax*(CosGama*CosBeta*Xs+CosGama*SinAlfa*SinBeta*Ys+CosGama*CosAlfa*SinBeta*Zs-SinGama*CosAlfa*Ys+SinAlfa*SinGama*Zs+X)/(-SinBeta*Xs+SinAlfa*CosBeta*Ys+CosAlfa*CosBeta*Zs+Z)+x;
		}
 double Zobraz::PromitnoutY(double Xs,double Ys, double Zs)
		{
			return ay*(SinGama*CosBeta*Xs+SinGama*SinAlfa*SinBeta*Ys+SinGama*CosAlfa*SinBeta*Zs+CosAlfa*CosGama*Ys-SinAlfa*CosGama*Zs+Y)/(-SinBeta*Xs+SinAlfa*CosBeta*Ys+CosAlfa*CosBeta*Zs+Z)+y;
		}
 double Zobraz::PromitnoutX(Bod A)
		{
			return ax*(CosGama*CosBeta*A.x+CosGama*SinAlfa*SinBeta*A.y+CosGama*CosAlfa*SinBeta*A.z-SinGama*CosAlfa*A.y+SinAlfa*SinGama*A.z+X)/(-SinBeta*A.x+SinAlfa*CosBeta*A.y+CosAlfa*CosBeta*A.z+Z)+x;
		}
  double Zobraz::PromitnoutY(Bod A)
		{
			return ay*(SinGama*CosBeta*A.x+SinGama*SinAlfa*SinBeta*A.y+SinGama*CosAlfa*SinBeta*A.z+CosAlfa*CosGama*A.y-SinAlfa*CosGama*A.z+Y)/(-SinBeta*A.x+SinAlfa*CosBeta*A.y+CosAlfa*CosBeta*A.z+Z)+y;
		}