如何将由osrm生成的用于路由优化的JSON文件绘制到OSM映射中

时间:2018-07-22 23:10:37

标签: openstreetmap qgis traveling-salesman osrm

我是计算gps,gis和所有这些地理信息的完全新手。首先,我将描述我获得gps数据的经验教训。 您可以跳过此步骤,转到最后两段,在此我将解释我的osrm问题以及如何通过q​​gis或类似工具将路线映射到OSM地图上。

我试图对一些地址进行一些路由优化,以支持儿子的送纸员工作。通过使用可通过geopy.geocoders获得的Nomatim引擎,我能够生成gps数据列表。有点像旅行商问题(TSP)。

通过使用geopy的距离计算器和Google的or-工具来生成最短列表建议。效果很好,但这只是空中航线的TSP解决方案:-(。

然后,我正在寻找路线优化工具包,但我一直在努力获取免费的工具包。我认为osrm可能是正确的工具。我遵循了Github上的描述,请参见here。我能够生成一个JSON文件-至少我以为这是一种JSON文件。但是我无法将其投影回QGis中的地图或OSM的任何在线工具中。谁能帮我吗?

具有类似JSON格式的文件: {“代码”:“ Ok”,“航点”:[{“提示”:“ Jh4BgEUzI4BhAAAACwAAAKIAAABZAAAAkLAjQgpyikBay4dCWsuHQmEAAAALAAAAogAAAFkAAAArAAAAxwB4AARI3AI3AXgAWEbcAgIADWXVhXd1 ...” 由于隐私问题,我无法在任何位置将其张贴在这里。非常遗憾。但是,没有人有某种食谱/逐步指南来指导我进行绘图吗?我什至不知道如何在qgis中“打开”地图。您需要像数据库一样进行此操作,但这对我来说是全新的。我希望使用一种更简单的方法进行绘制。

在此先感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

请遵循API文档here。从该文档

  

hint细分的唯一内部标识符(临时的,不是   数据更新中的常量),可用于后续请求   大大加快了查询速度并连接了多个服务。   例如。您可以使用最近查询获得的提示值作为提示   路径输入的值。

您可以通过多种方式获得几何。开发人员广泛使用GeoJSON。 OSRM返回了非常干净的GeoJSON,可以轻松地与Leaflet,Mapbox或其他Map API一起使用。您需要发送steps参数true才能获得完整的逐步说明。您可以在legs中获得步骤的每个细分。因此,请在具有循环的每条腿的几何形状内调用GeoJSON。您也可以在不传递steps参数为true的情况下获得几何。为此,您将在routes属性内的单个GeoJSON中获得完整的几何图形。