我在等轴测投影中有数学问题。我读了一篇文章:Axonometric projections - a technical overview。对于等距投影部分,它给出了将公式为x部分转换为3D点到2D点的数学公式:
x' = ( x − z ) cos(30);
但我也检查了Isometric Projection的维基,所以我使用维基给出的旋转矩阵,自己计算
x' = x*cos(beta) - z*sin(beta)
测试版由维基定义(Y轴旋转角度,应为45)。那我的数学怎么了?或者是否有一些我不了解的等距投影?
答案 0 :(得分:3)
您确定cos
和sin
取得度数而非弧度吗?
// C/C++ code
#define PI 3.141592654
static const float PI_RADIANS = PI / 180.f;
inline float DegToRad(float a_Degrees)
{
return (a_Degrees * PI_RADIANS);
}
inline float RadToDeg(float a_Radians)
{
return (a_Radians / PI_RADIANS);
}