【发布时间】:2020-08-03 08:39:30
【问题描述】:
我在 3D 网格上使用 morton 编码,因此一组点 (x,y,z) 为我提供了 morton 编码 M(x,y,z) 的 1D 数组,其中 x,y,z 是整数.对于每个 M(x,y,z),我的计算还需要网格上的 26 个最近邻,即。 M(x-1,y-1,z-1), M(x-1,y-1,z+0), M(x-1,y-1,z+1), M(x-1 ,y+0,z-1)...
我的问题是,我如何直接从 M(x,y,z) 计算这些相邻编码?我知道 wikipedia 有 2D 8 位整数的解决方案:
M(x,y-1) = ((M(x,y) & 0b10101010) - 1 & 0b10101010) | (M(x,y) & 0b01010101)
3 维网格的等效算法是什么样的?
【问题讨论】:
-
嗨@scrab--您可以在Computer Science Stackexchange 姐妹网站上获得更多帮助。寻求算法方面的帮助似乎更属于该网站的一般职权范围。
标签: z-order-curve