模糊匹配坐标列表(Golang)

模糊匹配坐标列表(Golang),go,Go,我正在尝试创建一个简单的工具,允许用户指定西雅图附近的两个地方 我正在使用WSDOT流量数据集。可在此处找到输出示例: 我希望能够指定两个位置,如: 贝尔维尤 西雅图 然后查找这些位置的所有交通时间 我正在考虑像这样做一个反向地理编码,但我希望它是“模糊的”,因为我不希望人们必须指定确切的位置。我还怀疑这可能需要很长的处理时间,因为我必须在列表中循环,并反向查找所有坐标,这可能需要很短的时间 以这种方式处理这些数据是否有更好的替代方案?我在Go中编写工具对于每一组点(起点和终点),您有两个问题:

我正在尝试创建一个简单的工具,允许用户指定西雅图附近的两个地方

我正在使用WSDOT流量数据集。可在此处找到输出示例:

我希望能够指定两个位置,如:

贝尔维尤 西雅图

然后查找这些位置的所有交通时间

我正在考虑像这样做一个反向地理编码,但我希望它是“模糊的”,因为我不希望人们必须指定确切的位置。我还怀疑这可能需要很长的处理时间,因为我必须在列表中循环,并反向查找所有坐标,这可能需要很短的时间


以这种方式处理这些数据是否有更好的替代方案?我在Go中编写工具

对于每一组点(起点和终点),您有两个问题:

  • 将位置转换为lat-lon
  • 模糊匹配lat,lon与此流量数据(包含lat,lon)
  • 使用反向地理编码api(如google提供的api)将位置转换为lat,lon非常简单

    要模糊地匹配lat,lon,您可以截断lat-lon并将其存储为散列(以便存储近似匹配),然后以这种方式查找数据,或者您可以进行半径计算并在该半径内拾取结果(这需要一些涉及地球半径的数学,您可以很容易地查找,例如,如果您的数据是在数据库中,则可以使用sql进行计算)