坐标列表 - >道路上的折线 - > kml输出

时间:2013-11-08 07:12:27

标签: javascript google-maps google-maps-api-3

这是我的第一个问题,请忽略任何失误。

我有一个包含> 2000总线路线的数据集,每个路线都有> 20个巴士站点及其latlongs。最终目标是拥有kml文件,每个路由一个。

我开始绘制网络图,如here所述,轻松绘制地图,如these

问题1:理想情况下,它应该沿着道路而不是连接两个公共汽车站的直线。这样做的方法是什么?此外,我了解v3 API免费版本中的航点数量有限制,那么如何在路线中绘制超过8个点?

问题2:如何将这些网络图导出为kml或shp文件?

(旁边问题:如何使用复选框切换特定路线的显示/顺序?)

提前致谢!!

(我只有中级/复制粘贴编程技能)

1 个答案:

答案 0 :(得分:1)

如果你已经声明你的技能是复制和粘贴。我不确定这会对你有多大帮助,但我会尽力帮助你。

问题1:除非您有一个包含许多点的数据集,否则您在路上绘制路线的唯一选择是使用Google Maps API路线请求。

https://developers.google.com/maps/documentation/directions/

你是正确的,只能为每个请求添加8个航点,但这并不能阻止你发出多个请求。每秒可以通过8个航点完成最多10个请求。如果超过此值,您将收到类型错误,表示您已超出限制。您可以捕获此错误(https://developers.google.com/maps/documentation/javascript/directions#DirectionsStatus),然后暂停代码片刻(使用javascript settimeout),然后再发出80个请求。您可以继续,直到到达路线的尽头。

问题2:这很难回答,因为我不知道您对网络图表的含义或采用的形式。

您可以在此处找到一些有用的信息:https://developers.google.com/kml/documentation/kml_tut

侧面问题:有多种选择。如果要在路由之间切换,下拉列表将是前进的方向。如果你想显示多条路线并且能够打开和关闭它们,那么复选框列表可能适合。我个人可能会使用浮动div来存放这些控件的内容。

希望你至少得到一些东西。