计算周围的索引键

Calculate surrounding index keys

我正在尝试检索与我当前位置直接相邻的 H3 索引键。我想知道这是否可以通过 mutating/calculating 坐标直接完成,或者我是否必须使用库绑定来完成?

举个例子:

./bin/geoToH3 --resolution 6 --latitude 43.6533055 --longitude -79.4018915

这将 return 键 862b9bc77ffffff。我现在想检索所有相关的 6 个邻居键(我认为 kRing 的值是如何描述的?)。

一个切线但同样好奇的问题可能会使上述问题变得无关紧要:如果我试图查询具有所有 7 个索引的条目,是否有比使用 OR 语句查找所有 7 个值更好的方法?由于索引是数字,我想知道我是否可以只检查数字表示中的范围?

简短的回答是您需要使用 kRing(通过绑定或命令行工具)来获取邻居。虽然在某些有限的情况下,您可以通过索引的位操作获得邻居,但在许多情况下,邻居的数字索引可能很远。基本规则是,虽然数值上接近的索引在地理上也接近,但反之则不一定成立。

出于同样的原因,您通常不能使用范围查询来查找附近的六边形。一般查找模式是使用 kRing 在代码中查找感兴趣的相邻单元格,然后在数据库中查询所有这些单元格。