我正致力于开发一种算法,用户可以在其中传入中心geohash
和depth_value
,并获得一个哈希值,该深度将每个深度与该深度处的地理数据阵列相对应。
例如,看看这个:
+--------+--------+--------+
| xn774d | xn774f | xn7754 |
+--------+--------+--------+
| xn7749 | xn774c | xn7751 |
+--------+--------+--------+
| xn7748 | xn774b | xn7750 |
+--------+--------+--------+
如果用户传入center_geohash
:xn774c且depth
为1.它会返回
{depth_0: [xn774c],
depth_1: [xn774d, xn774f, xn7754, xn7751, xn7750, xn774b, xn7748, xn7749]
}
(如果传入2的深度,它将返回16个地理数据的数组)
我已经开发的工具:
我可以访问一个方法,当你传入最右边的geohash和最左下角的geohash时返回一个2D矩阵。还可以使用邻域方法返回给定geohash周围的8个地理位置,以及接收geohash和方向并在该方向返回单个geohash的相邻方法。
非常感谢
答案 0 :(得分:1)
我最终做的是创建一个NxN矩阵,然后以螺旋顺序遍历它。假设我以顺时针方式迭代矩阵,然后在我从左边移动的每个点 - >>到 - >对,意味着我处于一个新的深度值。然后,我会通过附加地理哈希值来填充新哈希值depth_value_key
,直到下次我再次从左向右移动时。希望有所帮助!