前面我们介绍了在场景中构建二维几何图形的方法。 二维几何图形创作方法(Geometry2D)
这里我们继续介绍三维几何图形的构建方法。
同样, 输入两个点A、B,要能够快速的画出三维几何图形。相比于二维图形,三维图形要复杂得多。
要在二维平面展示三维图形,需要先了解轴测投影作图法,高中应该学过,复习一下。
轴测投影
常用的轴测投影有两种:一个是“斜二测”,一个是“正等测”。
斜二测
当正投影面与轴测投影面平行时,得到的物体在轴测投影面上的投影是斜二测图。斜二轴测图X,Y轴之间的角度是135°,X,Z轴之间的角度是90°,Y,Z轴之间的角度是135°,且Y轴的轴向伸缩率为0.5,X,Z轴的轴向伸缩率为1.
为了方便与屏幕坐标系对应,在后续计算中,我们使用下面的坐标系:
/*
* Z ^ _/ Y
* | _/
* | _/
* | /
* o---------------> X
*/
此时三维坐标到二维屏幕坐标系的变换矩阵为:
斜二测图比较适用没有弧形的图形,比如正方体,锥体。
正等测
当相互垂直的直角坐标轴与轴测投影面倾角相等时,得到的物体在轴测投影面上的投影是正等测图。正等轴测图X,Y,Z三个轴之间的角度是120°,并且三个轴的轴向伸缩系数都是1。
在正等测图中,三维坐标到二维屏幕坐标系的变换矩阵为:
正等测图比较适用与带有圆形的图形,比如圆柱,圆锥。
因为三维图形的作图算法比较复杂,接下来用两个篇幅继续说明。