Hex Grid Distance

Hex Grid Distance

六边形网格距离(Hex Grid Distance)表示两个六边形格子之间的最少移动步数。它最容易从 Cube Coordinates for Hex Grids 推导。

Cube 距离

在三维 cube 空间中,相邻六边形对应两个坐标各变化 1,因此三维曼哈顿距离的每 2 步对应六边形网格的 1 步:

distance = (abs(dq) + abs(dr) + abs(ds)) / 2

由于 dq + dr + ds = 0,同一个距离也可写成:

distance = max(abs(dq), abs(dr), abs(ds))

其他坐标

Axial Coordinates for Hex Grids 可通过隐含的 s = -q-r 得到同样公式。Offset Coordinates for Hex GridsDoubled Coordinates for Hex Grids 可以转换到 axial/cube 后计算,也可以使用直接公式。

用途

来源