2

如何将屏幕位置(X,Y)转换为等距位置?

我有将等距位置转换为屏幕位置的代码:http: //jsfiddle.net/CR3JS/

这是公式轴:http ://s15.postimage.org/xyxfukxkp/iso_Axis.jpg

我的问题是:如何将屏幕位置(X,Y)转换为等距位置?

就像是:

screenToIsometric(144, 88) -> X: 10, Y: 0, Z: 1
4

1 回答 1

1

您不能只有一个 X、Y、Z 点,因为一个 2D 屏幕位置将映射到多个不同的图块 - 每个不同的 Z 级别都有一个图块。如果您试图弄清楚用户在等轴测视图中单击了什么对象,最简单但有点脏的方法就是从上到下遍历所有 Z 级别,在示例函数中使用公式的反向并检查是否有任何适合单击位置,如果该位置为空,则继续下层。

于 2012-06-09T15:24:36.460 回答