首页 > 解决方案 > 如果希尔伯特曲线四叉树有效,为什么要转换为 S2 单元 ID?

问题描述

我正在研究地理空间服务并使用希尔伯特曲线将纬度和经度转换为四叉树键。

例如,在 30 级时:(
45.5337699,-122.6988316 converts to 2/221022201033023103222221213221诺布山)

然后可以将其转换为 S2 小区 ID
6094788552675374000

当与附近的位置进行比较时:(
45.5308839,-122.6815796 >> 2/221022201033330012321301320023珍珠区)
S2 ID:6094788657473797000

很容易看出,我可以对前缀上的 HB Quatree Key 进行扫描,2/221022201033然后返回 Nob Hill 和 Pearl District 以及该前缀内的任何其他点。

我不明白为什么有必要进一步将 HB 四叉树密钥转换为 S2Cell ID (这似乎是有多少人正在实施这种地理位置技术)。也可以扫描。在这种情况下,前缀6094788. 有谁知道为什么要采取这个额外的步骤,以及从准确性的角度来看是否有必要?

标签: hilbert-curve

解决方案


看起来 s2 细胞是希尔伯特曲线的特殊变体,例如摩尔曲线。

摩尔曲线有时更准确,因为起点和终点彼此靠近。

您也可以将四键视为以 4 为底的数字,但不会增加准确性。不过我觉得这样更好看。


推荐阅读