Shu*_*uun 5 grid geometry coordinates
我有一个如下所示的等边三角形网格:

现在,鉴于 2D 坐标原点是图像左下角的红点,我需要找到该三角形网格的索引。
给定输入:感兴趣点(浮点)的 X 和 Y 坐标、三角形边长和高度
需要输出:三角形的 X 和 Y 索引。(图像中看到的示例索引)
获取三角形的 Y(行)坐标很简单,因为它只是 (GivenY / TRIANGLE_HEIGHT) 的整数部分,但我无法在不进行大量操作的情况下计算所需的 X 坐标。
更多三角形 如果从 0,0 的左下角到 1,0 的右上角画一条线,两个三角形的阴影部分现在由四个直角三角形组成。从 1,0 的右上角向下画一条线,你最终会得到另一个直角三角形,并且由三个直角三角形组成的三角形高度是你原来的三角形高度,宽度是 1.5 * 三角形长度,斜边我留作练习班上。那么无论它是在左三角形还是右三角形中,都是你的点与该线相交的地方。您可以根据三角形长度来预先计算其中的大部分内容。另一种选择是计算出平行四边形,计算它的中心,将其移动到原点,顺时针旋转30度,向后移动,预先计算变换,你有一个菱形,其宽度为上面的斜边,中间的哪一边是哪一边三角形,菱形的高度是三角形的长度,您仍然需要工作,否则平行四边形将重叠,因为 1.0 和 2,0 会重叠。