数组作为网格,如何对角移动?

时间:2011-09-30 03:02:31

标签: java arrays math

我有一个大小为n ^ 2的数组,表示大小为nxn的正方形网格。

我想从任何方格(0到(n ^ 2)-1)到达右上方最方形,你可以沿直线对角移动。

我已经发现,到达左上角最方形的是取当前方形x,左上角最方形是x%(n + 1)。

有没有人知道最右上角的类似方法?谢谢!

1 个答案:

答案 0 :(得分:1)

如果我完全理解你想要实现的目标,你需要做的就是用直线连接两个点,并使用线公式计算它经过的单元格的坐标。您可以使用Bresenham's line drawing algorithm