问题标签 [space-filling-curve]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 从 Python 中的扁平索引重塑
我有一个大小为 M*N 的图像,其像素坐标已根据空间填充曲线展平为一维数组(即不是我可以使用重塑的经典光栅化)。
因此,我处理了我的一维数组(展平图像),然后我想将其重塑为 M*N 数组(初始大小)。
到目前为止,我已经使用 for 循环完成了此操作:
x 和 y 是根据我的路径扫描的 x 和 y 像素坐标。
但是,我想知道如何在独特的代码行中做到这一点。
hilbert-curve - 希尔伯特曲线:实现 N 维
希尔伯特曲线维基百科文章包含一些 C 代码,显示如何将坐标映射到曲线,但它仅适用于二维。我很难找到适用于 N 维的任何示例(曲线示例很多,但映射函数却没有)。有人有任何代码或算法的描述可以分享吗?
我目前在旋转功能上受阻。我可以猜到,但由于我找不到任何类型的论文或其他使用我能理解的语言的描述,所以我无法确定我最终会得到什么。
请注意,我希望看到像维基百科版本一样简单的东西。看来我要进行的突变也应该非常简单。我在将N 维值映射到希尔伯特曲线上的一个点上找到了 SO 帖子,但它是如此复杂,并且与我开始使用的设计相比如此陌生(尽管两者都是非递归的,所以看起来它们应该更相似)它在我看来完全不透明。
c - 如何从双坐标计算希尔伯特指数?
我想将由两个双精度值 (x, y) 表示的坐标对转换为希尔伯特值。我找到了以下实现(来自此链接):
但是,这是将整数值作为输入。我的双重价值观将如何适应?
java - 如何在 JFrame 中实现希尔伯特曲线
我正在尝试基于希尔伯特曲线制作一个项目。我能够在 Applet 中使用代码,但我需要它在 JFrame 中工作,因为我需要一次打开多个框架来展示我的项目。我在下面的小程序中有代码,但我不知道如何更改为 JFrame。
在小程序形式中,它就像下面的代码:
我试着自己把它放到 JFrame 中,但我做不到。JFrame 打开,但 HilbertCurve 没有启动。下面是我的代码,我没有更改 SimpleGraphics 类
}
3d - 将 3D 坐标转换为空间填充曲线的索引(Peano、Hilbert...)
虽然将 3D 坐标转换为 z 阶曲线相对简单(Fortran 中的高效 z 阶转换),但我很难围绕使用不同空间填充曲线的数学问题,例如 Peano 或 Hilbert。任何有关如何进行转换的实际代码的提示都将不胜感激。目标是有一个子程序,它将 xyz 坐标作为输入,并进行必要的标准化,并返回空间填充曲线的索引。
子程序(x,y,z,space_filling_index)
与此相关:我读到有很多方法可以在 3D 空间中定义希尔伯特曲线,哪一种在局部性方面最好?如果有一个明确的答案...
该应用程序将重新排序笛卡尔计算网格中的单元格,目标是在单元格访问其相邻单元格时增加缓存命中。
database - 使用希尔伯特曲线指数进行范围搜索
我有一个基于这个算法的希尔伯特曲线指数。我取两到四个值(纬度、经度、unix 格式的时间和一个 id 代码)并创建一维希尔伯特曲线。
我正在寻找一种使用此数据创建边界框查询的方法(即“查找此矩形内的所有 ID)。
我正在寻找一种无需将一维希尔伯特码解码回其组成部分的方法。使用 Morton/Z 阶曲线似乎更容易做到这一点,但我想知道局部性保留。
我的问题是:如果我创建了一个 2d 希尔伯特曲线范围(即我将框的范围转换为希尔伯特曲线,因此 x1y1-> hilbert value1 和 x2y2-> hilbertvalue2)是否会相应的 2d hilbert 值的所有值都落在它们的范围内?
例如,如果我将 (1,2) 和 (20,30) 转换为 Hilbert 值,然后搜索 hilbertvalue1 和 hilbertvalue2 之间的所有值,我得到的所有值是否都在 (1,2) 和 (20, 30) 之内,还是我必须执行额外的转换?
当您有超过 2 个维度时,另一个问题是制作一个范围。我有能力进出希尔伯特曲线,但我怎样才能确保即使是 4d 值的纬度和经度也在同一个矩形/边界框中?
谢谢。
python - 交错浮点坐标没有错误
我想知道如何交错浮动坐标。这个网站描述了如何做交错部分,但它只适用于整数。
我尝试了以下方法:
纬度 = 5.01,液化天然气 = 6.01
新纬度 = (5.01+90) * 100
newLng = (6.01+180) * 100
但它似乎没有正确的位序列。有人知道将 lat 和 lng 表示为 32 位序列的更好方法吗?