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 ...
随机推荐
- web app开发之rem
CSS3新增了一个相对单位rem,官方的解释为“font size of the root element”,相对于根元素(html)的font size. rem,em,px单位的区别: rem单位 ...
- 使用Visual Assistant X创建C程序注释模板
本文将讲解C程序注释模板的使用背景.创建方法,并在结束时进行总结. 1.使用背景 在项目开发过程中,为方便组内其他成员能够快速学习自己编写的代码,需要对自己写的函数添加注释.在正规的软件开发流程中,一 ...
- Modelsim-altera 仿真 顶层原理图设计的FPGA
我的原理图采用的是bdf的顶层原理图的设计,仿真工具用的是modelsim-altera,调用仿真后的错误提示: # ** Error: (vsim-3033) C:/Users/lenovo/Des ...
- 批量Clip
没有建立对应dataset,直接生成featureclass,主要是工作中没几个dataset. # -*- coding: utf-8 -*-__author__ = 'tanshuai' impo ...
- jsp+servlet+mysql 实现简单的银行登录转账功能
jsp+servlet+mysql 实现简单的银行登录转账功能 [前期的准备] html(登录界面),servlet(处理业务逻辑),jsp(主要实现界面),mysql(实现与数据库的简单的交互)先从 ...
- Winform Textbox MultiLine和WordWrap属性的使用
突然用到,有些不明白,零乱记录下: 1.MultiLine属性为True时,Dock属性Fill值才能达到所需效果 2.MultiLine属性为False时,WordWrap属性也是无效果的,同1,T ...
- 谈谈React Native环境安装中我遇到的坑
谈谈React Native环境安装 这个坑把我困了好久,真的是接近崩溃的边缘...整理出来分享给大家,希望遇到跟我一样问题的小伙伴能尽快找到答案. 首先,这是在初始化App之后,react-nati ...
- react在jsx语法中实现for循环
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <script sr ...
- python中的内存管理
不像大多数编译型语言,变量必须在使用之前声明名字和类型,在python中,变量在第一次被赋值时自动声明.在变量创建时,python解释器会根据语法和右侧的操作数来决定新对象的类型,在对象创建后,一个该 ...
- webconfig中注册HttpHandler报错:检测到在集成的托管管道模式下不适用的 ASP.NET 设置。
为什么会出现以上错误? 在IIS7的应用程序池有两种模式,一种是"集成模式",一种是"经典模式". 经典模式 则是我们以前习惯的IIS 6 的方式. 如果使用集 ...