使用1D数组表示3D数组并查找邻居

时间:2019-06-06 04:23:32

标签: arrays multidimensional-array

我需要使用1D数组表示3D有界空间。我还需要将给定的1D索引转换回3D坐标。

我知道使用(width * height * z) + (width * y) + x公式将3D坐标转换为1D索引的方法。

  • 我需要从1D索引转换为3D坐标的公式。
  • 此外,我如何找到距离(x,y,z)以内的点v的所有邻居(假设x,y,z都以1为步长变化)?

编辑: 我找到了1D-> 3D和3D-> 1D转换的方法。我仍在尝试找出在给定距离“ d”内寻找邻居的步骤。我尝试的一种简单方法是在范围x中更改[x-v, x+v](类似yz)并生成不同的组合。但是其中某些点的距离将大于d。(例如:如果d=1且给定点为(0,0,0),则生成的点(1,1,1)将不在距离1处,而是稍大一点。

0 个答案:

没有答案