如何利用Matsim从OSM提取仿真所需的地图
通过本节,你将会:学会如何从OSM地图文件生成仿真需要的路网文件//
上一节内容详细介绍了OSM地图和坐标变换,然而Matsim并不能利用OSM文件作为它的仿真地图,而是需要他自己能够识别的一种地图形式。转换的方法在Matsim中已经写好,代码也比较简单。但是为了以后对Matsim的学习,我还是先介绍一下Matsim能够识别的地图——network.xml。如果对于这个内容没有兴趣,可以跳过第一小节。
1. network.xml文件解读
没有那么死板,这个文件叫什么名字都可以,你可以起名为myNetwork.xml,只是后缀名为.xml即可。但是我们需要了解一下这个文件是如何描述一个路网的。找到上次仿真中config.xml所在的文件夹,可以在这里找到network.xml文件。右键,依然使用Notepad++打开(右键文件,Edit with Notepad++),可以看出路网文件由两大部分描述:节点(node)和道路(link)。我们分别详述:
node 描述路网中某个节点(如下图所示),分别由以下三个属性描述:(注意:节点的坐标意义取决于坐标系,若使用WGS84则表示经纬度,若使用墨卡托坐标则可以近似表示相对位置)
- id 该节点的唯一编号,用作唯一性说明和引用
- x 该节点的横坐标
- y 该节点的纵坐标