基于openstreetmap数据的SUMO路网生成路线

2023-05-16

一、一步到位:基于SUMO自带工具smWebWizard.py

使用SUMO自带的osmWebWizard.py脚本(sumo-tools)进行下载,脚本执行后会打开一个操作网页,可以按照需要选定地图区域,下载地图并直接转换成SUMO的net.xml文件。珠三角区域转换结果如下:

 

优点:快速便捷。

缺点:转换过程无法编辑,只能对转换后的结果进行编辑操作,而且细节不理想。

二、分步进行

(一)OSM路网下载

方法一:官网自带工具下载(直观,使用OSM的openAPI工具能够获得大规模路网)

方法二:QGIS自带工具下载(直观,可下载地图规模受限)

方法三:JOSM工具下载(直观,可下载地图规模受限)

https://josm.openstreetmap.de/wiki/Zh_CN%3AWikiStart

方法四:SUMO脚本工具osmget.py和osmbuild.py(使用坐标区间下载,不直观,不限大小)

(二)OSM数据处理

方法一:QGIS处理(方便,功能丰富,但无法导出OSM格式数据)

方法二:JOSM处理(工具简单,个人不熟练,可以导出OSM格式数据)

(三)OSM数据转换(基于OSM格式数据)

基于NetConvert工具进行

 

(四)细节介绍:

细节操作:

  • QGIS基于OSM道路类型进行筛选,图层右键filter选项,其中筛选框输入"highway" = 'primary' or "highway" = 'primary_link'可以筛选出主干路,高速路如是;
  • Netconvert的语句为:

netconvert --osm-files berlin.osm.xml -o berlin.net.xml  --geometry.remove --ramps.guess --junctions.join --tls.guess-signals --tls.discard-simple --tls.join --tls.default-type actuated

其中,各操作的含义如下:

--geometry.remove : Simplifies the network (saving space) without changing topology

--ramps.guess : Acceleration/Deceleration lanes are often not included in OSM data. This option identifies likely roads that have these additional lanes and causes them to be added

--junctions.join : See #Junctions

--tls.guess-signals --tls.discard-simple --tls.join : See #Traffic_Lights

--tls.default-type actuated : Default static traffic lights are defined without knowledge about traffic patterns and may work badly in high traffic

 

  • 进行大规模路网生成时,NetConvert可以添加筛选功能:

--keep-edges.by-type 

 highway.motorway,highway.motorway_link,highway.trunk,highway.trunk_link,highway.primary,highway.primary_link

以上语句为保留高速路和主干路,剔除其他道路

 

三、路线总结

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

基于openstreetmap数据的SUMO路网生成路线 的相关文章

  • 如何通过 PHP 访问 RESTful API

    我对 PHP 以及使用 RESTful API 的整个过程还很陌生 我现在想要做的就是成功发出一个简单的 HTTP GET 请求 这开放街道地图 API 我正在使用tcdent 的简单 PHP REST 客户端我基本上了解它的功能 我在 O
  • GraphHopper 车辆=汽车可以工作,但步行或自行车不起作用

    我对 GraphHopper 路由引擎稳定版本 0 5 有疑问 我可以在使用时获取路线vehicle car 但这失败了bike and foot 这是一个例子在 GraphHopper 地图上步行大约 3 分钟 这会在地图上产生结果 非常
  • 将 OpenStreetMaps 与 Cordova 集成

    我想知道你们是否知道如何将开放街道地图 OSM 与科尔多瓦一起使用 这几天都在找 我能得出的结论是 我不应该直接使用 OSM 的 API 因为如果我有太多调用 他们的服务器会阻止我 所以有免费的开源名称 例如 1 Openlayers 2
  • 从地图 API 获取建筑物的高度

    是否有任何公共地图 API 谷歌 微软 openstreet 可以返回某些点的屋顶高度 想象一下 您请求一些地址 API 返回坐标 一些信息和建筑物的高度 如果有 OpenStreetMap 有一个身高标签 http wiki openst
  • 如何下载地图选定部分的 OSM 图块

    我想使用 Openlayer OSM 图层以单个缩放级别离线下载地图的选定部分的地图 我有地图的四个角 即地图的显示部分 但需要获取所有图块图像或四个角之间的图块 我回顾了一些例子 Openlayers获取鼠标下图块的图片url https
  • 使用 OpenStreetMap 获取给定 GPS 坐标集的国家/地区名称

    有谁知道是否有办法使用 OpenStreetMap 离线或 API 来获取给定的 GPS 坐标集的国家 地区名称 我对使用此处提到的 Google 或 Geonames API 不感兴趣 GPS 坐标的国家 地区名称 https stack
  • 如何使用 overpass-api 获取我所在点附近的兴趣点?

    我正在使用 Overpass API 我无法找到我的地点附近 大约 100 200 英里 的一些兴趣点 咖啡馆 医院 学校 我只有纬度和经度 Overpass API 提供了使用您的地名获取 POI 的机会 但我没有 我只有坐标 我怎样才能
  • overpass-api 方式查询包含坐标

    我正在尝试查询特定区域的酒店 不幸的是 我需要查询节点和路 因为有些酒店仅存储为路 有些则存储为节点 http overpass osm rambler ru cgi interpreter data 28way tourism hotel
  • 有没有办法使用 OpenLayers 更改 openstreetmap 中某些要素的颜色?

    我正在使用 OpenLayers 来显示 openstreetmap 有没有办法编辑地图上的某些功能 例如改变水的颜色 消除国家之间的边界等 如果不能使用 JavaScript 来完成 我猜还有其他方法可以做到这一点 比如托管您自己的地图版
  • 如何在android中使用openstreetmap通过纬度和经度获取城市名称[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 在我的应用程序中 我使用 osm 而不是谷歌地图 我有纬度和经度 所以从这里我将如何查询从 osm 数据库获取城市名称 请帮助我 我正在使
  • 如何在不使用 Mapbox 的情况下使用 OpenStreetMap?

    我想使用 OSM OpenStreetMap 数据 但有一种方法 Mapbox 可以使用吗 如果有其他解决方案可以在不使用 MapBox 的情况下使用 OSM OpenStreetMap 那对我会有帮助 由于这是用 Swift 标记的 我假
  • 如何获取OSM节点或路径的城市和国家?

    我正在解析 OSM 数据的国家 地区摘录 我想要的是获取该点或方式所属的城市和国家的名称 这可能吗 我怎样才能获取这些信息 要检索此信息 您需要地理编码器 除非该节点具有相关的地址标签 https wiki openstreetmap or
  • 请推荐一个好的 OpenStreetMap 组件 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 在 Google 地图上显示 OpenStreetMap 边界(使用 v3 api)

    我想使用使用以下工具获得的 GeoJSON 数据在 Google 地图上显示城市边界 我访问 nominatim openstreetmap org 并搜索一个城市 例如丹佛 使用检索到的 OSM ID 在本例中为 253750 然后我使用
  • 创建 Openstreetmap 提取的 mbtiles 文件的最简单方法?

    我正在创建一个使用在线和离线地图的 iPhone 旅行应用程序 对于离线地图 我希望允许用户下载他们感兴趣的区域 例如伦敦 的 mbtiles 文件 该地图应包含已在 OpenStreetmap 中找到的道路等信息 我知道以下网站http
  • Leaflet:突然我收到此错误消息:无法加载资源:服务器响应状态为 403 ()

    突然我收到此错误消息 这对我来说很奇怪 因为我没有接触过地图部分 Failed to load resource the server responded with a status of 403 在寻找线索时 我发现了这个过时的信息 ht
  • 如何在本机 Android 应用程序开发中使用 OpenStreetMap [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 您好 我的 Android 手机中有默认的 Android 虚拟内容 本机应用程序构建 现在我需要使用
  • 检测 Android 中 OSM Mapview 是否仍在加载

    我已将 Open Street Maps 包含在我的 Android 应用程序中 在地图视图中 用户应该能够在地图完全加载后捕获屏幕 但目前 即使地图视图仍在加载 用户也可以捕获图像 有人可以告诉我如何检测地图视图何时完全加载吗 下面是我加
  • 如何使用 LeafLe 创建商店地图

    我希望创建一个可以交互的地图 我发现的最好的选择是传单 问题是我没有找到任何资源来解释如何创建自己的地图 我希望创建一个商场地图 用户可以在其中看到所有商店 喷泉 我怎样才能做到这一点 最好的起点是传单示例页面 http leafletjs
  • 如何从 OpenStreetMap 道路中去除水?

    我想从 OpenStreetMap 获取旧金山的轮廓 有一个SF 的关系 http www openstreetmap org relation 111968 但它含有大量的水 这使得城市居民无法识别 OSM 中是否有更好的旧金山多边形 有

随机推荐