gpt4 book ai didi

散列 2D、3D 和 nD 向量

转载 作者:行者123 更新时间:2023-12-02 04:38:30 25 4
gpt4 key购买 nike

对于由 IEEE 32 位 float 组成的 2d 和 3d 向量进行散列,什么是好的散列函数(快速、分布良好、冲突少)。我假设一般的 3d 向量,但假设法线(始终在 [-1,1] 中)的算法也受到欢迎。我也不担心位操作,因为 IEEE float 始终是 IEEE float 。

另一个更普遍的问题是对 Nd 浮点向量进行哈希处理,其中 N 非常小 (3-12) 并且是常数,但在编译时未知。目前我只是将这些 float 作为 uint 并将它们异或在一起,这可能不是最好的解决方案。

最佳答案

Optimized Spatial Hashing for Collision Detection of Deformable Objects 中描述了一个空间哈希函数。 。他们使用哈希函数

hash(x,y,z) = ( x p1 xor y p2 xor zp3) mod n

where p1, p2, p3 are largeprime numbers, in our case 73856093,19349663, 83492791, respectively. Thevalue n is the hash table size.

论文中,x、y、z为离散化坐标;您可能还可以使用 float 的二进制值。

关于散列 2D、3D 和 nD 向量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5928725/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com