gis毕业论文--基于gis的火车换乘系统内容摘要:

3 新建 FeatureDataset ○3 将主要铁路线和地级市居民点导入到 railway 要素集当中 , 选择采用网络数据集的方式建立拓扑网络 ,选择 railway 要素数据集单击右键创建 Network dataset,如图 — 24 所示 : 华北水利水电学院毕业设计 14 图 — 24 新建网络数据集  校验网络 数据 集的可用性 (1) 打开 Arcmap,点击菜单栏空白处选择 NetworkAnalyst 工具条激活它 , 添加网络数据集到 Arcmap 中 如下 图 — 25 所示 图 — 25 网络数据集图层 华北水利水电学院毕业设计 15 (3)单击 NetworkAnalyst 工具选择 New Route 项 , 并在图层列表中发现多出了RouteLayer 图层 ,单击 NetworkAnalyst 工具条中的 工具选择两个位置进行最短路径查询 ,单击 工具显示最短路径如 图 — 26 所示 : 图 — 26 测试网络数据集  本章总结 本章主要是描述在国家主要铁路网的基础之上进行网络数据集的建立过程。 先对收集到的 数据进行初期的编辑处理,然后针对国家主要铁路干线图层进行网络数据集的建立 和校验 ,网络数据集是本系统的实现基础。 华北水利水电学院毕业设计 16  3 火车换乘系统的 设计 GIS 火车换乘系统的建立 是主要 根据系统 功能模块的设想,系统遵循如下的总体设计。 系统具体要实现的功能,具体化为数据库的查询要求、地图的可视化要求、模糊查询 、 点选查询要求、根据条件实现数据库与地图的可视化联动要求、最短路径查询。  系统开发平台设计  GIS 系统平台 Arcgis 作为 GIS 软件平台行业的领跑者,以她强大的功能一直备受行业人士的青 睐。 GIS 火车换乘系统采用 Arcgis 的轻量级开发组件 Arcengine, 在ArcGIS 9 系列产品中, ArcGIS Desktop、 ArcGIS Engine 和 ArcGIS Server 都是基于核心组件库 ArcObjects 搭建。 ArcObjects 组件库有 3000 多个对象可供开发人员调用,为开发人员集成了大量的 GIS 功能,可以快速的帮助开发人员进行 GIS 项目的开发。 ArcGIS Engine 开发包提供了一 系列可以 在ArcGISDesktop 框架之外使用的 GIS 组件, ArcGISEngine 的出现对于需 要使用ArcObjects 的开发人员来说是个福音,因为 ArcGISEngine 发布之前,基于ArcObjects 的开发只能在庞大的 ArcGIS Desktop 框架下进行。 .ArcEngine 包括核心 ArcObjects 的功能,是对 AO 中的大部分接口、类等进行封装所构成的嵌入式组件。 中的组件接口、方法、属性与 AO 是相同的。 ArcEngine 具有简洁、灵活、易用、可移植性强等的特点。  系统开发语言 本系统采用 Java 语言进行开发, 对于 Java 语言大家肯定最熟悉不过了。 Java 是一种简单的,面向 对象的,分布式的,解释型的,健壮安全的,结构中立的,可移植的,性能优异、 多线程 的动态语言。 Java 语言的语法与 C 语言和C++语言很接近,使得大多数程序员很容易学习和使用 Java。 另一方面, Java丢弃了 C++ 中很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。 特别地, Java 语言不使用指针,并提供了自动的废料收集,使得程序员不必为内存管理而担 忧。 Java 语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,华北水利水电学院毕业设计 17 并支持类与接口之间的实现机制( 关键字 为 implements)。 Java 语言全面支持动态绑定,而 C++ 语言只对虚函数使用动态绑定。 总之, Java 语言是一个纯的面向对象程序设计语言。 Java 语言也完全支持 组件机制,这就为和 AE 的结合打下了基础, ESRI 公司推出的 AE for JavaSDK 这使得在 JAVA 环境下的GIS 二次开发更为简单方便。  数据库平台 Access 管理的对象有表、查询、窗体、报表、页、宏和模块,以上对象都存放在后缀为( .mdb)的 数据库文件 中 ,便于用户的操作和管理。 GIS 平台Arcengine 能够良好的支持 Access 数据库, Java 语言在 的桥接模式下也能够很好的支持 Access 数据库。  系统运行平台 本系统的运行 环境为 Win XP 操作系统,以及系统平台 要装有 JavaRuntime 和 Runtime。  系统数据层次结构搭建  系统结构 在进行数据库设计时,通过数据分层、图层管理、属性编码和空间索引设计,建立空间数据库,然后进行属性数据库设计,最后建立空间数据库与属性数据库的连接关系。 如图 — 31所示 图 31 : 系统结构图  系统空间数据 空间数据是 系统中 GIS 应用环节的基础数据,他的合理组织直接影响着系统GIS 火车换乘系统 属性数据 ( Access) 空间数据 (Geodatabase) 关键字 火 车 站 图层;铁路干线图层;省界线图层;省界面图 …层; 车站详情, 车次所经车站, Point属性表 JDBC ArcGIS 华北水利水电学院毕业设计 18 的整体组成。 本系统 空间数据 主要来自于国家 1:400 万基础地理数据, 并选择需要的 存储在四个图层当中 分别是 省界线图层, 省界面图层、主要铁路线图层、地级市以上居民点图层 ,每一个图层都包含了图层名称 、空间特性、 属性数据 等数据。 另外一部分是网络数据集,它是存储网络拓扑信息的载体, 通过国家主要铁路创建而成的,也作为重要的空间数据存储在数据库中。  系统属性数据 系统的属性数据主要 存储在 Access 数据库,分为三张表 车次所经车站表、车站详情表 、 point 属性表 ( 数据处理阶段的系统生成表 ) 因为在系统实现过程中,要实现最短路径就必须要有可用的网络节点存在在网络数据上,然而个别的地级市居民点离网络过远这样就无法实现有效地最短路径分析 ,只能通过居民点查找网络节点,通过寻找最近设施点的方法将网络节点和城市居民点一一对应,并作为火车站的位置,存储在系统生成这张表中 图 — 32 point属性表 华北水利水电学院毕业设计 19 图 — 33 车次所经车站表 图 — 34车站详情表  系统的组织结构 与实现思路 GIS 火车换乘系统主要实现火车的可视化查询、火车信息的修改和用户自定义最优换乘方案查询 , 用户可以在看到查询结果的同时看到具体的在地图中的信息可视化显 示。 为了实现设计的功能,主要有以下几个模块基于文本的火车站查询,基于文本的车次查询、基于文本的换乘方案查询、用户自定义换乘方案查询、点选换乘方案查询。 如下图 — 35 所示: 华北水利水电学院毕业设计 20 图 3— 5 系统实现思路 结果 用户输入车次名称 弹出窗体显示车次详情 地图显示本车次所经车站,弹出窗口显示车站详情 列表显示所有乘坐方案,以表格形式显示乘坐方案详情,并排序。 在地图上显示乘坐方案 火 车换乘系统 路径查询 车次查询 车站查询 高级 用户输入车站名称 系统查找所经车站 系统查找车站详情 系统查找车次详情 系统查找所经车次 系统根据最短路径在地图中显示出乘坐方案 点击车站名称 单击某车次 输入 出发站终点站 在 地图 图上选择 输入自定义选择项:如价格 系统查找所有乘坐方案 系统查找并筛选方案 单击乘坐方案 华北水利水电学院毕业设计 21  本章总结 本章的主要内容是基于 GIS 火车换乘系统 的建立 过程 ,在分析合理选用开发平台、开发方式、开发语言和数据库的基础上 ,以 全国主要铁路线 为例,探讨了基于 ArcEngine 的 火车换乘 系统数据结构 的建立 : 空间数据和属性数据,并给出了系统开发组织结构和系统实现的基本功能。 华北水利水电学院毕业设计 22  4 火车换乘系 统的 实现  系统概述 本系统以中国主要铁路干线 作为 研究对象,利用已有的 中国铁路网图层 ,结合 地级市居民点图层数据 、 网上搜集的火车站、火车车次信息 等,开发了一个基于 ArcEngine 的 GIS 火车换乘系统。 系统的软件设计采用 Java 作为可视化编程工具,结合 进行开发。 在 Java 环境下通过 与 Access 数据库 连 接 ,用 SQL 语句访问表中的数据,实现对 火车 信息 的管理。 利用 ArcEngine组件提供的各种属性、方法和工具,能够进行空间数据获取、数据查询、数据分析等操作,从而实现对 铁路网络 信息 数据 的管理。  系统界面 系统主要有菜单栏、工具栏、 查询 页签、结果页签、 高级页签组成 和 图形窗口组成。 系统界面设计人性化, 并可以自由更换主题, 更方便 了 用户使用。 如图4— 1 所示 图 4— 1系统主界面 华北水利水电学院毕业设计 23  功能模块论述  车次 查询 打开主页面点击车次查询单选按钮,在车次文本框中输入要查询 的车次号,然后点击查询,如图 4— 2 所示: 图 4— 2 车次查询 在结果页签当中,将所有结果依照次序罗列出来,我们点击第十站郑州 查看详情如图 4— 3 所示 : 图 — 43车次查询结果 华北水利水电学院毕业设计 24 可以看到当前车次,到达郑州的时间、出站时间本车次是否有硬座、软座等信息。  车站查询 单击车站查询单选按钮,输入要查询的车站名称: 此处我们以宝鸡为例 ,在查询结果的车次列表上我们单击 1046 次列车会弹出1046 次列车的详细信息 如图 — 44 所示 : 图 — 44车站查询结果  按路径查询 本模块 是本系统中 主要的模块。 本模块的实现思路: 首先 从用户输入得到出发站和终点站,以出发站和终点站为关键字在 数据库中车次所经车站表进行遍历。 将 所有含有出发站或者是终点站的车次分为只 含有华北水利水电学院毕业设计 25 出发站的车次、只含有终点站的车次、既有出发站又有终点站的车次并分别存储在 list list list3 中 ,然后对每一个 list 分别 按照相应的条件进行排序 并。 将新的 list1 从出发站开始每次 增加一个站点向下进行循环并分别对 list list3 进行比对如果 list2 或 list3 中含有当前循环的站点则将当前站点 作为中转站以当前list1 中的车次作为中 转前车次、以 list2 或 list3 中的车次作为中转后车次存储在方案列表中。 以这样的方法分别对 list3 进行遍历。 然后 要实现车次路径在地图上显示 , 有两种途径 : (1):将每两个相邻火车站之间的铁路线进行命名, 并存储在图层中,当用户点击换乘方案时将当前方案所经过的所有铁路线段的名称查找出来,然后再到mapbean 中一一显示。 这样做显然非常不合适,数据处理的工作量比较大。 (2):也是本系统所采用的方法, 得到方案所经过的所有车站的名称,并以这些车站作为最短路径分析 时 的 stops,这样就查找出每两个相邻车站之间的 路径,并存储在新的图层中显示在 mapbean 中。 单击按路径查询单选按钮,输入出发站名称和目的站名称 ,单击查询按钮 :在结果页签中显示 所有换乘方案。 单击能够直接到达的换乘方案 返回路径到mapbean 中如图 — 45 所示 : 华北水利水电学院毕业设计 26 图 — 45直接到达方案 单击需要换乘的方案 如图 — 46 所示 : 图 — 46需要换乘的。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。