Thomas Brinkhoff 基于路网的移动对象生成器的使用
Thomas Brinkhoff 基于路网的移动对象生成器的使用
文章补充
http://www.cnblogs.com/cmi-sh-love/p/6503275.html ⬅️点击各个移动对象在路网中进行移动会产生一定的轨迹记录,这些轨迹是有一个一个的带时间戳的坐标点。不同移动对象会形成不同的轨迹,那么一种颜色就代表一个移动对象的轨迹记录。比方红色是汽车A的一系列坐标点,蓝色又表示汽车B的一系列坐标点。而通过移动对象的id号来区分不同的移动物体。
比如上图生成的轨迹数据,一种颜色代表一个物体的轨迹记录,不同颜色表示'移动对象id'不同的物体的轨迹记录,同一个颜色的多个点的集合表示一个物体的轨迹。
大家可以下载它的Demo直接点击run.bat 运行,也可以下载Complete source Code 导入eclipse运行。我这里下载的是完整的源码。
下载后解压然后import进eclipse
相关文件的说明
- 第一个是:properties.txt
这个是配置程序的文件,里面可以修改各种参数
- 第二个是:地图包
包括edge和node两个压缩文件,例如oldenburgGen.edge.zip,oldenburgGen.node.zip
运行
导入eclipse后运行时选择DefaultDataGenerator-generator2
点击Run
其中maximum time那里填入最大时间数,想生成100个时间片的纪录就填100,max.speed div填10,50,250,数字越大,移动对象移动的速度越慢,全部填写完成点击Compute进行生产数据。
生成的数据的说明
这是代码中对于数据的注释
* @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文件同一个目录。我上传的项目已经包含地图数据。但是我的项目运行时,地图初始化大小是被缩放的很小的,在左上角的一个小点上。大家可以仔细观察。
我们要做的是对他进行缩放,在地图显示区域可以通过按下鼠标左键->拖动鼠标->释放鼠标左键来绘制一个矩形缩放区域。可以对地图进行缩放。