SUMO使用教程(二)
来源:互联网 发布:屏幕视频录制软件 编辑:程序博客网 时间:2024/06/05 11:07
在教程一当中,我们用了osm和SUMO的工具,生成了一些列文件,最后得以仿真。其实,仔细一看之后,这些生成的文件和配置文件本质上都是xml文件,换句话说,我们完全可以自己用一个记事本编辑这些文件。
首先是net.xml文件。作为一个道路文件,抽象成图之后,其实就是由节点和边构成,所谓的节点,映射到物理世界就是十字路口或者三叉路口,反正就是两条路的交汇处,而边就是道路。换句话说,只要我们有了节点和边就可以得到net.xml文件。
我们先编写nod.xml和edg.xml,然后将其结合,而不是直接写出net.xml,这有一点模块化和封装的思想在里面。
1.nod.xml。
这是一个简单的nod.xml文件。node文件的node标签里面有四个属性,id,x,y,type。
(新浪博客竟然无法显示xml文件,只能截图了)
id就是交叉路口的名字,x,y是交叉口的坐标,不像opencv或者显示屏驱动一下,这里的坐标就是左下角是原点。
type属性复杂一些:
priority: 车辆必须等待,直到它们右侧车辆完全通过路口。
Vehicles have to wait until vehicles right to them have passed the junction(并不知道这要表达什么。)
• traffic_light: 交叉口被交通灯控制着
• right_before_left: 来自右边的车辆优先通过
Vehicles will let vehicles coming from their right side pass.(还是不知道)
Vehicles have to wait until vehicles right to them have passed the junction(并不知道这要表达什么。)
• traffic_light: 交叉口被交通灯控制着
• right_before_left: 来自右边的车辆优先通过
Vehicles will let vehicles coming from their right side pass.(还是不知道)
2.edg.xml文件
下面是一个简单的edg.xml文件:
要注意的是,edge文件对于节点有两个方向,当只存在一个方向的时候,就是单行线。笔者不禁想起家乡坑爹的单行线。
3.有了这两个文件之后,可以用netconvert转换成net.xml。
同样的,node文件和edge文件作为输入,而net.xml作为输出。
最后,我们可以用SUMO-gui看一下地图,
共有12个nodes,所以如上图所示。根据坐标,可以知道左下角是node1,下边中间的是node2,类型分别为traffic_light和priority,所以下面展示的是不一样的。
edge的numlane都是2,所以都是双车道。
到这里,笔者提出了一个问题,像自己家附近单车道管制的地方怎么仿真?
到这里,笔者提出了一个问题,像自己家附近单车道管制的地方怎么仿真?
0 0
- SUMO使用教程(二)
- SUMO使用教程(一)
- SUMO使用教程(三)
- SUMO使用教程(四)
- SUMO使用教程(五)
- SUMO使用教程(六)
- SUMO使用教程(八)
- SUMO使用教程(七)
- SUMO教程(九)
- SUMO教程011:TraCI教程(上)
- SUMO文档007:高级教程(上)
- SUMO文档008:高级教程(中)
- SUMO文档009:高级教程(下)
- SUMO文档012:TraCI教程(中)
- SUMO文档013:TraCI教程(下)
- Sumo第一次使用博客
- SUMO仿真快速入门系列二:使用XML生成自定义地图
- Junit使用教程(二)
- Android Studio Gradle说明
- Axure学习笔记
- 9.文件和输入输出
- imx6q 网络调试方式汇总
- C++实现机制RTTI
- SUMO使用教程(二)
- Linux 监控一个目录的变更
- 利用ruby实现对不同网站发送请求
- HTML基础之<head>
- C#特殊的技巧(C#)
- Android之创建对话框
- JS 制作九九乘法表
- 推荐!手把手教你使用Git
- [NOIP 2012]国王游戏 高精度+贪心