cost 188 ms
非立方区域的莫顿曲线,是 2 的幂 - Morton curve for non cubic areas that are a power of two

在优化光线追踪器时,我尝试使用 Morton 空间填充曲线来改善相交数据结构的数据局部性,但我的 3D 空间不是立方的(例如 512x512x256)。 所有边都是 2 的幂,但并非所有边的长度都相同。 我一直找不到任何边为 2 次方的非方形莫顿曲线的例子。 如果重要的话,我可以保证 x/y 轴的大 ...

如何在 az 顺序范围搜索期间正确计算 bigmin 和 litmax? - How can I properly calculate bigmin and litmax during a z order range search?

本文解释了如何计算 bigmin 和 litmax(大最小值和小最大值)。 我很难理解第 4 步的措辞,以了解它将如何转换为伪代码、C 或 Python。 第四步 一个水平分割我们知道我们需要计算最接近yn分割线的纬度值。 取 min 和 max 的最高有效位直到它们第一次不同的地方 y ...

使用空间填充曲线的时空索引 - Spatial and spatio-temporal indexing using space-filling curves

我想根据空间信息或时空信息找到点q的最近邻居。 为此,我想使用基于Z阶曲线或希尔伯特曲线的键创建B树索引。 但是,我已经看到,希尔伯特曲线比Z阶更难实现。 我的问题是: 是否值得在最近的邻居查询中对Z阶曲线使用希尔伯特曲线? ...

使用位交错的 3D Morton 编码,传统与 BMI2 指令集 - 3D Morton Encoding using bit interleaving, Conventional vs BMI2 Instruction Set

我希望以快速有效的方式在 C 中为 Morton Z-Order 编码和解码编写两个函数,即。 我之前关注过这些问题 如何计算 3d morton 数交错 3 个整数的位 我当前基于 SO 和开源代码的解决方案是 我最近遇到了这个问题(在尝试使用 2D morton 代码时): 2d mo ...

3D 网格的 Morton 反向编码 - Morton Reverse Encoding for a 3D grid

我有一个 3D 网格/阵列,比如u[nx+2][ny+2][nz+2] 。 尾随的 +2 对应于x,y,z三个维度中的每一个维度中的两层光晕单元。 我有另一个允许细化(使用四叉树)的网格,因此我有每个单元格的 morton 索引(或 Z 顺序)。 假设没有细化,这两个网格在物理现实中是相似的(除了 ...

如何有效地交织8 __int16个数字的位? - How to efficiently interleave bits from 8 __int16 numbers?

我正在构建用于空间索引的Morton数,我有8个无符号16位数,它们将变成__int128数。 效率是至关重要的,所以天真的解决方案(循环所有)或构建单独的8 128位数字太昂贵了。 我正在使用GCC,目标机器是64位但没有BMI2支持。 如何加快计算速度? ...

Z-Index有超出界限的限制 - Z-Index with out of bound restrictions

我需要从2坐标x,y计算平面上某点的Z-Index(Morton)。 传统上,这只是通过比特交织来解决的。 但是我有边界,并且我希望点的z-index仅在活动区域​​内增加morton计数,并在外部时跳过计数。 需要说明的是,4x4平方的典型z顺序为: 但是,如果我有一 ...

如何将纬度和经度转换为莫顿码(z 阶曲线) - How convert latitude & longitude to Morton code(z order curve)

我在 Inte.net 上搜索,但只找到了一些关于如何将纬度和经度转换为莫顿代码(z 顺序曲线)的信息。 从链接我知道如何将两个整数转换为莫顿代码。 但是,如果我有纬度或经度等浮点值,我应该如何将浮点值转换为整数? 然后我可以将 int 转换为 Morton 代码。 例如,c# 代码: 在这里,我 ...

Morton代码对于更高维度是最有效的吗? - Is Morton code the most efficient for higher dimensions?

对于我当前的输入数据,即3D点,我在访问点列表时使用Morton代码来提高缓存一致性。 我有一些其他数据是6D和7D。 Morton代码对于这样的尺寸仍然是一种很好的技术吗? 还是有其他技术吗? 其他空间填充曲线技术比3D本身的Morton更复杂,我想知道人们是否使用6D / 7D或 ...

如何在范围搜索中使用Morton Order? - How to use Morton Order in range search?

如果我有一个数据集,其中键是3D中的点,由3个带符号的64位整数表示。 我想使用(排序的)键值存储来存储它们,其中键只是字节数组(但我可以指定一个比较器)。 我想我可以通过使用位交错将所有这些点转换为字节数组,就像在Z / Morton命令中一样,如在如何计算3D Morton数中那样 ...


 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM