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文件同一个目录。我上传的项目已经包含地图数据。但是我的项目运行时,地图初始化大小是被缩放的很小的,在左上角的一个小点上。大家可以仔细观察。

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

Thomas Brinkhoff 基于路网的移动对象生成器的使用的更多相关文章
- Thomas Brinkhoff 基于路网的移动对象生成器的使用[第二版]
Thomas Brinkhoff 基于路网的移动对象生成器的使用 Thomas Brinkhoff 基于路网的移动对象生成器的使用 相关操作的说明 相关文件的说明 运行 导入eclipse后运行时选择 ...
- 关于Thomas Brinkhoff移动对象生成器的修改
关于地图数据的写出 控制地图路径数据的输出 修改routing.Edge.java 路径写出源码 public void write (EntryWriter out) { out.print(id) ...
- 一种基于路网图层的GPS轨迹优化方案
文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.背景 GPS数据正常情况下有20M左右的偏移,在遇到高楼和桥梁等情况 ...
- 轨迹系列1——一种基于路网图层的GPS轨迹优化方案
文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.背景 GPS数据正常情况下有20M左右的偏移,在遇到高楼和桥梁等情况 ...
- 迭代器&迭代对象&生成器
迭代器 & 迭代对象 & 生成器 包含__next__ 和 __iter__两个方法的对象为迭代器 __next__方法返回单个元素 __iter__方法返回迭代器本身 可迭代对象包含 ...
- 基于redis的分布式ID生成器
基于redis的分布式ID生成器
- 基于ABP的AppUser对象扩展
在ABP中AppUser表的数据字段是有限的,现在有个场景是和小程序对接,需要在AppUser表中添加一个OpenId字段.今天有个小伙伴在群中遇到的问题是基于ABP的AppUser对象扩展后,用 ...
- $Django 多表操作(增删改查,基于双下划线,对象的查询) 在Python脚本中调用Django环境
在Python脚本中调用Django环境. import osif __name__ == '__main__': os.environ.setdefault("DJANGO_SETTING ...
- 基于LSTM + keras 的诗歌生成器
最近在github 上发现了一个好玩的项目,一个基于LSTM + keras 实现的诗歌生成器,地址是:https://github.com/youyuge34/Poems_generator ...
随机推荐
- JNI支持C++与C的区别
1. C++的代码后缀是".cpp" 2. 在JNI.h 文件中有两套代码.一套是支持c的, 一套是支持JNI的. JNI.h地址:mac ▸ 用户 ▸ douj ▸ Docume ...
- 71. Merge k Sorted Lists
Merge k Sorted Lists Merge k sorted linked lists and return it as one sorted list. Analyze and descr ...
- asp.net中插件开发模式说明
第一定义接口 /// <summary> /// 这是插件必须实现的接口,也是主程序与插件通信的唯一接口 /// 换句话说,主程序只认识插件里的这些方法 ...
- U盘centos7系统安装http://www.augsky.com/599.html
修改第二步中按TAB键出来的命令 这里注意了:网上很多文章都说这一步改成">vmlinuz initrd=initrd.img inst.stage2=hd:/dev/sdbquiet ...
- 关于android 5.0对开发带来的影响
由于google推出了android5.0的系统,在app的安装方式,权限的管理方面与之前的系统有较大的区别.自己做的app也有体会.现在记录一些要注意的东西,防止忘记: 1.5.0改变了对自定义权限 ...
- SQL存储过程解密
首先要建立一张表和一个存储过程: SQL_DECODE表: CREATE TABLE [dbo].[SQL_DECODE]( ,) NOT NULL, [SQLTEXT] [nvarchar](max ...
- win7远程桌面恢复全屏状态快捷键
不同的电脑可能有不同的快捷键(有些笔记本电脑甚至没有相应的键值):①台式机:ctrl+alt+break 组合键.②CTRL+ALT+PAGEDOWN 组合键.③有的笔记本没有break键,可以尝试加 ...
- AX7: Quick and easy debugging
This purpose of this blog is to show how you can get quickly get started with debuggingin AX7, speci ...
- C语言实现GPT头和分区表的读取(gcc)
#include <stdio.h> #include <stdlib.h> #include <stdint.h> #include <string.h&g ...
- C# 利用反射给不同类型对象同名属性赋值
public class ObjectReflection { public static PropertyInfo[] GetPropertyInfos(Type type) { return ty ...