如何检查地理编码是否接近或使用PHP或MySQL在KML LineString中定义的路径上

时间:2009-11-17 16:25:03

标签: php mysql maps kml

我有一个KML文件,用于定义<LineString><coordinates></coordinates></LineString>标签中包含的多条路径/路线(代表实际道路)。将文件解析为其他格式(数组/ MySQL)已经到位,所以这不是问题。

给定一个点(经度/纬度),我希望能够检查该点是否在KML文件中的某个路径上或接近(几米内)。我一直在寻找PHP的解决方案,但我找不到 - 我不太确定,我正在寻找什么。然而,这似乎是一个常见的问题,所以我怀疑有人已经解决了这个问题。有人知道解决方案吗? ;)

提前致谢!

2 个答案:

答案 0 :(得分:0)

你需要将其分解为两个问题:

  • 从路径的每个部分生成一组多边形。
  • 在上面的多边形上进行多边形测试中的简单点。

应该有一些php来完成这两项任务。

答案 1 :(得分:0)

如果正确完成,

pnpoly实际上非常快。我在第二次处理中对MySQL well 中的数十万个多边形顶点进行了检查。将数据拉入PHP并执行pnpoly循环可以在更长的时间内完成。

发布您正在使用的代码?