【问题标题】:Retrieve all points within a given radius using quadkeys使用四键检索给定半径内的所有点
【发布时间】:2018-09-23 03:00:11
【问题描述】:

我是 GIS 概念的新手,我正在学习 Quadkeys 和用法。

我用它的四键将几个点插入到数据库中,并希望使用四键检索给定半径内的所有点。

假设我有一个点 (46,46),其缩放级别 23 上的四键是 12122022101301320022121(使用此链接)

现在我想搜索 DB 中距离参考点 100 公里半径的所有点,比如 (47,47)

我的想法是,使用给定的距离(100 公里)找到一个缩放级别,用该级别为 (47,47) 形成一个四键,并使用该键查询数据库以检索具有给定前缀的所有键。

网络上的任何参考都只提供 Tile 到 Quad 之间的转换,反之亦然。

如何有效地计算这个缩放级别? 这是正确的做法吗?或者有没有更好的方法来使用四键来处理这个问题。

【问题讨论】:

    标签: bing-maps quadtree mercator


    【解决方案1】:

    使用四键查询数据库是一个有趣的想法。特别是当我知道你的目标是哪些瓷砖时。

    但是,我只是搜索距离来获取物品。 STDistance (https://docs.microsoft.com/en-us/sql/t-sql/spatial-geography/stdistance-geography-data-type?view=sql-server-2017) 用于搜索远处的对象。如果您遇到性能问题,请确保使用空间索引来提高性能。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-05-04
      • 2017-03-17
      • 2011-04-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多