我有一组希尔伯特值(从Hilbert curve的开始到给定点的长度)。

将这些值转换为3D点的最佳方法是什么?原始的希尔伯特曲线不在3D中,因此我想我必须自己选择所需的希尔伯特曲线等级。我确实有曲线的总长度(也就是集合中的最大值)。

也许有一个现有的实现?一些可以让我使用希尔伯特曲线/值的库?语言没什么大不了的。

最佳答案

并不是关于3D转换的答案,但是这里有一个不错的算法和关于希尔伯特值的讨论Two-dimensional spatial hashing with space-filling curves

MIT

4 algorithms for the n-dimensional Hilbert Space-Filling Curve

* A. R. Butz, "Alternative Algorithm for Hilbert's Space-Filling Curve",
  IEEE Trans. Comp., April, 1971, pp 424-426. [Butz 1971]

* S. W. Thomas, "hilbert.c" in the Utah Raster Toolkit circa 1993,
  http://web.mit.edu/afs/athena/contrib/urt/src/urt3.1/urt-3.1b.tar.gz

* D. Moore, Fast Hilbert Curves in C, without Recursion

* J.K.Lawder, Calculation of Mappings Between One and n-dimensional Values Using the Hilbert Space-filling Curve, [JL1_00]

10-04 20:57