【发布时间】:2016-12-10 20:30:37
【问题描述】:
我目前正在使用 HTML5 画布在 JS 中开发游戏,我需要将x、y、z 定义的 3D 坐标转换为 x' 和 y' 定义的 2D 坐标两种投影方式:先轴测,后等轴测。
我已经阅读了等距投影的 wiki 页面来查找公式,但我不明白:
维基百科公式:
为什么要使用矩阵旋转,x' 和 y' 2D 结果在哪里?
有人可以给我使用轴测投影将 3D 轴的点转换为 2D 轴的公式,以及使用等轴投影的公式,并为初学者提供数学解释吗?
【问题讨论】:
-
因为等轴测投影基本上是一个旋转,然后是一个降维(即把结果的z坐标扔掉)。
-
@NicoSchertler 所以公式是
x' =(x−z) * cos(30)和y' = y+(x+z)⋅sin(30)? -
根据Wikipedia,它是
x'=(x-z)/sqrt(2)和y'=(x+2y+z)/sqrt(6),除了比例因子1/2之外,它看起来与您的等式相似。 -
谢谢,我如何将此公式应用于任意角度的轴测投影?
-
只需使用基于旋转的公式并插入您的角度。
标签: math 3d geometry projection isometric