Thomas Brinkhoff 基于路网的移动对象生成器的使用

Thomas Brinkhoff 基于路网的移动对象生成器的使用

文章补充

http://www.cnblogs.com/cmi-sh-love/p/6503275.html ⬅️点击

Thomas Brinkhoff 基于路网的移动对象生成器的使用

网站:http://iapg.jade-hs.de/personen/brinkhoff/generator/

Thomas Brinkhoff 基于路网的移动对象生成器的使用

各个移动对象在路网中进行移动会产生一定的轨迹记录,这些轨迹是有一个一个的带时间戳的坐标点。不同移动对象会形成不同的轨迹,那么一种颜色就代表一个移动对象的轨迹记录。比方红色是汽车A的一系列坐标点,蓝色又表示汽车B的一系列坐标点。而通过移动对象的id号来区分不同的移动物体。

Thomas Brinkhoff 基于路网的移动对象生成器的使用

比如上图生成的轨迹数据,一种颜色代表一个物体的轨迹记录,不同颜色表示'移动对象id'不同的物体的轨迹记录,同一个颜色的多个点的集合表示一个物体的轨迹。

大家可以下载它的Demo直接点击run.bat 运行,也可以下载Complete source Code 导入eclipse运行。我这里下载的是完整的源码。

下载后解压然后import进eclipse

相关文件的说明

Thomas Brinkhoff 基于路网的移动对象生成器的使用

  • 第一个是:properties.txt

这个是配置程序的文件,里面可以修改各种参数

Thomas Brinkhoff 基于路网的移动对象生成器的使用

  • 第二个是:地图包

包括edge和node两个压缩文件,例如oldenburgGen.edge.zip,oldenburgGen.node.zip

运行

导入eclipse后运行时选择DefaultDataGenerator-generator2

Thomas Brinkhoff 基于路网的移动对象生成器的使用

点击Run

Thomas Brinkhoff 基于路网的移动对象生成器的使用

其中maximum time那里填入最大时间数,想生成100个时间片的纪录就填100,max.speed div填10,50,250,数字越大,移动对象移动的速度越慢,全部填写完成点击Compute进行生产数据。

生成的数据的说明

Thomas Brinkhoff 基于路网的移动对象生成器的使用

这是代码中对于数据的注释
* @param action the action of the object
* @param id object id
* @param repNum report number
* @param objClass object class
* @param time time stamp
* @param x current x-coordinate
* @param y current y-coordinate
* @param speed current speed
* @param doneDist the distance since the last reporting
* @param nextNodeX x-coordinate of the next node
* @param nextNodeY y-coordinate of the next node

1.物体的状态(是新点还是旧点或是消失点)

2.物体id ❤️

3.回报的编号

4.物体种类的id

5.时间戳 ❤️

6.x轴坐标 ❤️

7.y轴坐标 ❤️

8.当前速度

9.预期的下一个x轴坐标 (用于做未来预测)

10.预期的下一个y轴坐标。(用于做未来预测)

关于回报编号的说明

移动对象在计算的时候有一个回报位置的可能性,当回报的可能性为0时,下一个时间戳就不回报该移动对象,当回报可能性大于0时,移动对象的回报编号会+1,此时则回报该移动对象的数据。在初始化一个新的移动对象的时候,给某个移动对象的回报编号初始化为0。

补充:许多读者回信反馈地图运行看不见。

地图数据两个文件.node和.edge分别表示交通的结点以及路网的线路段,可以放置在项目根目录,和properties.txt文件同一个目录。我上传的项目已经包含地图数据。但是我的项目运行时,地图初始化大小是被缩放的很小的,在左上角的一个小点上。大家可以仔细观察。

Thomas Brinkhoff 基于路网的移动对象生成器的使用

我们要做的是对他进行缩放,在地图显示区域可以通过按下鼠标左键->拖动鼠标->释放鼠标左键来绘制一个矩形缩放区域。可以对地图进行缩放。

Thomas Brinkhoff 基于路网的移动对象生成器的使用

上一篇:tarjan模板


下一篇:js数组去重方法集合