SUMO学习(二)创建路网

SUMO学习(二):

创建路网


学习内容:

  1. netconvert转换第三方源
  2. OSM Overpass API query page下载城市地图
  3. OSMWebWizard.py
  4. openstreetmap截取地图
  5. netedit手动画图
  6. 直接编写路网文件

1. netconvert转换第三方源:

该程序是在sumo安装文件夹中的bin文件夹中
在终端中进行打开可将第三方源下载的文件转换为sumo可读的格式

支持的第三方源有:
OpenStreetMap
PTV Vissim
OpenDrive
MATsim
ArcView
Elmar Brockfelds unsplitted and splitted NavTeq-data
RoboCup Rescue League folders

以vissim为例

netconvert --vissim-file=vissim.inpx --output-file=map.net.xml

2. OSM Overpass API query page下载城市地图:

可以直接下载某城市的地图。方法较为简单,但是文件较大下载速度慢。


3. OSMWebWizard.py:

该程序是在sumo安装文件夹中的tools文件夹中
直接运行即可
有可能会出现‘ImportError: DLL load failed while importing _ssl: 找不到指定的模块。’的问题,解决方案在发布的另一篇文章中

该工具的好处在于简单易提取。
通过select area 对区域进行截取之后,可在右边工具栏选择路网对象(车,行人等)生成,选择好之后,点击generate scenario进行下载,下载完成之后自动打开sumo。
SUMO学习(二)创建路网_第1张图片
不过有一个疑惑的地方,生成的这个地标是什么?
SUMO学习(二)创建路网_第2张图片


4. openstreetmap截取地图:

官网:openstreetmap.org
操作简单,选择想要的区域,进行截取,然后导出,可以得到osm文件
SUMO学习(二)创建路网_第3张图片
再将osm文件转换为sumo可读文件
1.打开终端cd到sumo/bin路径中(安装的地方)运行以下代码得到net.xml文件(到这转换结束,以下的都是路网对象的生成)

netconvert --osm-files map.osm -o map.net.xml

2.将终端cd到sumo/tools路径中,将net.xml文件剪切到tools中,运行以下代码得到trip.xml文件(生成车辆等数据)

python randomTrips.py -n map.net.xml -l -e 100 -o map.trips.xml

3.将终端cd到sumo/bin路径中,将net.xml文件和trip.xml文件剪切到bin中,运行以下代码得到rou.xml文件(rou.xml也可以自己编写)

duarouter -n map.net.xml -t map.trips.xml -o map.rou.xml --ignore-errors

4.最后创建sumocfg文件,导入之前生成的路网,并且创建一些路网对象




    
        
        
    

    

5.最后将sumocfg拖入bin文件夹中的sumo-gui.exe即可运行


5. netedit手动画图:

该程序是在sumo安装文件夹中的bin文件夹中
功能不多,但是也够用
SUMO学习(二)创建路网_第4张图片


6. 直接编写路网文件:

后续进行学习


你可能感兴趣的:(python,xml,交通物流)