智慧社区GIS系统开发详细设计

智慧社区GIS系统开发详细设计
1. 前⾔
1.1. 建设背景
GIS是继地图之后的第三代地理学语⾔。最通俗的讲,GIS就是“电⼦地图 ”,把地图放到计算机⾥,不但能够查“在哪⾥”,还能查到“有什么”“发⽣了什么”“怎么去”等。
当然,GIS远不⽌“电⼦地图”这么简单。GIS与其他信息最⼤的区别在与它的空间分析功能。GIS借助于计算机技术,把许多以前在纸质地图上不可能完成的 分析⼯作系统化了。只需要事先输⼊⼀定的数学模型,使⽤的时候输⼊初始量,原来需要⼈⼯计算数天的⼯作,在计算机上可能只需要⼏秒钟就会得到精确的结果。
  在陆家嘴社区应⽤系统中,需要建设⼀个为社区应⽤系统提供地图查询展⽰功能的GIS⼦系统,该系统应该充分利⽤已有的GIS数据和底层平台软件,在应⽤服务接⼝层进⾏⾯向SOA的架构设计开发,以⾯向服务的⽅式为各个应⽤系统提供地图能⼒服务。
1.2. 建设⽬标
实现基础地理数据、影像图数据、2.5维地图数据的统⼀集成管理
建设⾯向服务SOA架构的地图应⽤引擎
实现⼆维和2.5维地图服务
开发基于PC应⽤和⼿机应⽤的地图开发API
实现各种GIS基本浏览、查询、显⽰定位功能
氨分解制氢
为社区应⽤平台提供各类定制的查询定位接⼝
提供对于GPS数据的定位查询功能
提供与社区服务平台其它模块的集成接⼝
1.3. 建设原则
实⽤性
全部⼈机操作设计均应充分考虑调度⼯作的具体情况和实际需要;⽤户接⼝和界⾯设计将充分考虑⼈体结构特征及视觉特征进⾏优化设,界⾯尽可能美观⼤⽅,操作简便使⽤。
先进性
系统设计采⽤先进的系统结构、开放的体系结构;采⽤技术先进的应⽤平台;同时采⽤业界先进的各项新技术。
扩展性
系统将充分考虑在结构、容量、通信能⼒、产品升级、处理能⼒、数据库、软件开发等⽅⾯具备良好的可扩展性
维护性
系统具有远程维护功能,可⽅便的在系统⽹络上实现各客户端的维护和安装;编写详细⽂档资料和程序说明,便于维护⼈员和软件⼈员利⽤原始材料进⾏维护和⼆次开发。
可靠性
从信息处理的⾓度上来看,往往是数据量⼤、时效性强。因此,在系统的实施⼯作将采⽤以下做法:在条件允许的情况下采⽤具有容错功能的服务器,选⽤双机热备、Cluster技术的硬件设备配置⽅案,出现故障时能够迅速恢复并有适当的应急措施;采⽤数据备份恢复、数据⽇志、故障处理等系统故障对策功能;选择合适的⽹络管理软件进⾏⽹络管理。
标准化
制定各种对象的统⼀代码和结构,确定各级共享数据库⽬录、内容和结构;运⽤系统⼯程的⽅法制定软件的总体框架和结构;
地理信息数据编码采⽤国际和⾏业标准,使⽤⾏业通⽤的编码机制和格式
经济性
根据实际需求,以及未来⼯作的发展趋势,⼀⽅⾯要考虑安全、可靠、先进,同时,要考虑经济实⽤,要易于扩展升级、易于操作、易于管理维护、易于⽤户掌握和学习使⽤。在完成系统⽬标的基础上,⼒争⽤最少的钱办最多的事,保护投资。
2. 系统总体设计
2.1. 系统体系结构
GIS设计采⽤⾯向Internet的分布式计算技术,⽀持跨区域、跨⽹络的复杂⼤型⽹络应⽤系统集成。系统采⽤经典的多层软件体系构建,不但在逻辑上划分了各个模块的功能和相互之间的关系,在物理实现时实现了真正组件独⽴:GIS应⽤程序、GIS组件扩展、GIS引擎服务器、数据服务器,每个组件都可以单独扩展和升级更新。
2.1.1. 数据层
GIS系统的数据按照性质的不同可以分为空间数据和属性数据,空间数据指地理空间对象的,属性数据包括地理空间对象的属性以及其他相关联的业务数据等。本系统依托ARCGIS系列产品的ARC SDE产品的强⼤功能,可以顺利实现将空间数据和属性数据⼀体化存储到Oracle、SQL Server、Access等关系数据库中。基于ARC SDE,可以充分发挥⼤型关系数据库海量数据管理和并发访问能⼒,构建⼤型⽹络GIS应⽤系统。
2.1.2. 平台层
GIS平台是整个系统的基础部分,在这⾥实现GIS数据模型的构建和复杂计算的优化处理,实现数据层和功能组件层的链接,是整个系统的基础⽀撑平台。
GIS平台采⽤ZTMAP。ZTMap是⼀个完全⽤于GIS数据、地图和应⽤软件发布的可伸缩的⽅案。ZTM
ap可进⾏伸缩以处理从最⼩的企业内部⽹到⾼容量的⽹站的所有要求。ZTMap为进⾏⽹络GIS 数据和服务交流建⽴了⼀个通⽤平台。它不仅仅是⼀个⽹络制图⽅法-⽽是⼀个⽤于在互联⽹上实现分布式GIS 功能的框架。
2.1.
3. 功能组件层
系统所有的逻辑功能都是以组件的⽅式构建的,不同的组件实现了不同的逻辑功能。组件层是顶层应⽤程序和系统引擎的中间业务逻辑实现环节,也是整个GIS应⽤系统的核⼼部分。功能组件是实现GIS服务的实体,引擎组件根据客户端提交的所有请求产⽣新的地图或者根据客户端的查询条件、GIS分析需求进⾏查询、分析并获得处理结果,然后根据约定的协议和格式将结果输出。
再数据传输交换部分,本系统引⼊Web Service技术,采⽤可扩展的数据交换协议-XML⽂件,使得异构系统之间的交互操作、数据交换和集成易如反掌,这样的技术会降低⼤型系统集成⽤户因为更换统⼀平台⽽增加的成本。同时,服务运⾏商可以基于我们提供的Web Service 为Internet提供集成后的⽹络服务,提供增值服务。
saw1
2.1.4. 应⽤层
本系统的应⽤层主要是指IE,Netscape,Mozilla等浏览器应⽤程序。本系统客户端设计采⽤“瘦客户端”的设计模式,即客户端⽆需安装任何插件即可进⾏地图的浏览、查询等操作,降低了对客户端配置的要求,减轻了客户端负担,⽤户只需普通IE等浏览器即可进⾏所有操作。
系统以AJAX技术为基础进⾏GIS客户端程序的开发,以XML作为与地图服务组件的数据传输协议。⼤⼤提升了系统的实⽤性和可扩展性等能⼒
2.2. 系统⽹络结构
推进式搅拌桨
2.3. 技术路线
B/S结构:GIS应⽤系统采⽤B/S结构进⾏设计,⽤户使⽤GIS功能⽆需下载安装任何插件,⽤普通IE浏览器即可进⾏所有地图浏览定位、统计分析、数据维护等功能。
开发平台:采⽤J2EE架构和技术标准,采⽤WebLogic作为应⽤服务平台。GIS平台采⽤ESRI的ARCGIS系列Web服务器。
数据库:采⽤Oracle数据库。Oracle是以⾼级结构化查询语⾔(SQL)为基础的⼤型关系数据库,是⽬前最流⾏的数据库之⼀。同时Oracle提供了⾼级安全性解决⽅案,保证数据的安全性和完整性。
GIS中间件:开发GIS业务中间件。以ARCGIS平台为基础,封装GIS平台的基础对象⽅法,开发出⾯向应⽤的易于应⽤开发的各种应⽤组件,不同的组件提供不同的MapService服务接⼝,应⽤层直接调⽤相关的接⼝接⼝实现相应地图服务。组件化的设计更便于以后功能的扩展。
3. GIS系统技术特点
3.1. 组件化设计,易于管理
通过采⽤全组件化结构,系统的可管理性⼤⼤增强,可以实现单点登录、集中管理。可以管理分布在分布式环境下的各个服务器和服务程序。
组件具有⾃描述特性,不同组件封装了实现不同功能和不同⽬的的模块,从⽽使各个组件可以单独搭建和扩展,使系统的更新⼯作⼤⼤减少,兼容性得到增强。
GIS服务引擎的数据处理和开发平台采⽤相同的体系结构,GIS的数据只需在服务器上进⾏配置即可直接使⽤,快速发布到Internet上。  组件具有良好的扩充性和开放性。各个层次的组件提供了丰富的接⼝和功能,松散的体系结构为系统的扩充提供了⾜够的扩展空间,⽤户可以通过继承或者聚合等软件重⽤⽅法,开发特殊功能的⾃定义⾏业组件或者更⾼层次的通⽤组件,集成到GIS系统中。
3.2. 标准的应⽤层接⼝和应⽤层⽆关性
kumool由于本GIS系统对于地图服务接⼝设计的标准性以及应⽤层⽆关性的先进理念,使得原本复杂的WEBGIS开发⼯作变得简易可⾏。⼤⼤缩短开发周期,提⾼效率。
建⽴在地理信息平台基础之上的应⽤系统的类型是⾮常丰富的。这些应⽤系统最终将由不同⾏业的开发商使⽤不同的开发⼯具,设计不同的应⽤逻辑,所⽀持的其终端类型也从普通的计算机到具有⽂字短信功能的普通⼿机等,⽆所不包。要⽀持这些各式各样的应⽤系统,就要求GIS系统提供良好的应⽤开发接⼝和系统集成模型,这就是应⽤层⽆关性。
实现这⼀点,主要体现在应⽤接⼝层:在HTTP协议基础之上设计标准的地图应⽤访问协议并提供丰
富的实⽤功能接⼝函数供应⽤系统调⽤,这样的设计符合⼯业标准,⽀持异构操作系统上的应⽤系统。
3.3. 多源数据集成与海量数据快速访问橡胶补强剂
ZTMap提供了强⼤的数据集成功能,它使得⽤户可以⽅便的存取数据,并简单快速的将其与来⾃其他⽹络或本地的数据进⾏集成,包括shapefile、 coverages、ArcSDE层
⽀持分析和显⽰各种格式的影像图 (TIFF, JPEG, GIF, ERDAS IMAGINE, MrSID图像压缩格式)
3.4. 服务器集,具有⾼度伸缩性
随着应⽤规模的扩⼤,当单台服务器的处理能⼒(不仅包括CPU运算能⼒)不能满⾜应⽤需要时,往往需要将多台服务器集起来同时提供服务。通过集可以实现负载能⼒的成⽐例提⾼,同时还可以减少单点失效的危险,提⾼系统的稳定性。但是集同时会带来服务器的部署、管理复杂度提⾼和负载平衡的问题。
常见集⽅法可以分为业务复制和业务分割两种⽅法。业务复制即将相同的业务复制到多台服务器上进⾏处理,每台服务器承担其中⼀部分⽤户的处理请求;业务分割即将业务划分为不同的部分,每⼀部分放到不同的服务器上去运⾏,⽐如将数据库服务、地图服务、Web服务分别放到不同的服务器上
运⾏,可以提⾼性能和增强可靠性。
主要通过四种⽅式提⾼多⽤户并发访问的性能:异步⽹络传输,减少⽹络阻塞;GIS服务引擎的分时操作;多应⽤实例并发服务;多服务器集服务。这种特性可以满⾜⼩型⼯作组到⼤型⽹络服务的多种应⽤规模的需要。
3.5. 全⾯⽀持OpenGIS规范
OpenGIS(Open Geodata Interoperation Specification,OGIS-开放的地理数据互操作规范)由美国OGC(OpenGIS 协会,OpenGIS Consortium)提出。OGC是⼀个⾮赢利性组织,⽬的是促进采⽤新的技术和商业⽅式来提⾼地理信息处理的互操作性(Interoperability),OGC会员主要包括GIS相关的计算机硬件和软件制造商(包括ESRI, Intergraph,MapInfo等知名GIS软件开发商),数据⽣产商以及⼀些⾼等院校,政府部门等,其技术委员会负责具体标准的制定⼯作。
OpenGIS的⽬标是,制定⼀个规范,使得应⽤系统开发者可以在单⼀的环境和单⼀的⼯作流 中,使⽤分布于⽹上的任何地理数据和地理处理。它致⼒于消除地理信息应⽤(如地理信息系统,遥感,⼟地信息系统,⾃动制图/设施管理(AM/FM)系统) 之间以及地理应⽤与其它信息技术应⽤之间的藩篱,建⽴⼀个⽆“边界”的、分布的、基于构件的地理数据互操作环境,与传统的地理信息处理技术相⽐,基于该规范的GIS软件将具有很好的可扩展性、可升级性、可移植性、开放性、互操作性和易⽤性。
本系统提供对OpenGIS各种主要标准和规范的全⾯⽀持和兼容,⽀持WFS/WMS、GML等OpenGIS的标准规范,通过对OpenGIS的全⾯⽀持,使得本系统在可扩展性、可移植性、跨平台等⽅⾯具备更强的能⼒。
4. GIS地图服务和数据交换规范
4.1. 地图服务规范
GIS系统需要实现应⽤客户端同服务器引擎的各种交互操作,为了实现系统应⽤层⽆关性,提⾼GIS的⼆次开发的可扩展性和系统可集成性,需要制定⼀套应⽤客户端与服务器端交互的通讯协议。
⼀.为什么使⽤本规范
1. 实现不同制图引擎的互操作,多种制图引擎能够按⼀致的⽅式运作。
2. 实现不同应⽤的互操作,不同应⽤可以共⽤客户端或服务器模块。
3. 减少客户端开发负担,可以使⽤系统提供的客户端按照规范开发的客户端。
4. 不同⽤户共享信息和开发成果,不同⽤户开发的模块可以相互操作。
5. 易于学习和掌握,学习和开发具有继承性,⽽且容易升级到新的版本。
⼆.基本处理流程
地图获取⼀般分为两步:第⼀步,⾸先发出地图请求,服务器传回相应的地图参数;第⼆步,客户端根据结果参数判断下⼀步应该进⾏的操作,如果传回的为地图图像,根据URL值请求下载该影像⽂件,如果传来的为查询结果,则分析该结果,将其显⽰出来或发出新的查询请求。
4.2. 数据交换协议
GIS系统地图服务接⼝与客户端的数据传输采⽤标准的XML数据协议,根据不同类型的地图服务接⼝,提供不同格式的XML⽂档。应⽤层程序通过AJAX脚本程序对传回的XML⽂档进⾏解析。
数据交换协议举例如下:
GIS数据交换协议XML规范1
<?xml version="1.0" encoding="gb2312" ?>
</ GIS>
GIS数据交换协议XML规范2
<?xml version="1.0" encoding="gb2312" ?> 873.98291015625 596.583740234375 500 380 42.4262809753418 62534 1.0 map\6.png true
GIS数据交换协议XML规范3
<?xml version="1.0" encoding="gb2312" ?> 873.98291015625 596.583740234375 500 380 42.4262809753418 62534 1.0 "
GIS数据交换协议XML规范4
<?xml version="1.0" encoding="gb2312" ?> 873.98291015625 596.583740234375 500 380 42.4262809753418 62534 1.0
5. GIS数据和功能
5.1. GIS空间数据描述
根据系统的建设需要,对业务涉及到的空间数据进⾏分类收集、整理、统⼀⼊库。为各种社区应⽤查询、辅助决策提供数据的⽀撑。
⾏政区划:包括区县、街道、乡镇。⾯状
道路:道路中⼼线(边线)、名称。线状
⽔系:河流⽔系。线状或⾯状
绿地:绿化区域。⾯状
轨道交通:轨道线路和站点。线状和点状
街区:居民区、地块。⾯状
建筑物:⾯状或点状
门牌号:包括具体的门牌地址信息。点状
5.2. API接⼝开发包
Webservices:提供基于http 协议的webservice 接⼝,采⽤xml 格式作为通讯格式。实现符合OGC 规范的地图操作
Javascript API:提供⾯向javascript 语⾔的开发类库,完全基于javascript 快速构建GIS 应⽤,⽀持PC 和⼿机多平台。
Android API:提供符合Android SDK 规范的,能够在Android 应⽤开发环境下使⽤Java 语⾔开发的API
5.3. GIS系统功能
5.3.1. 基本地图操作功能
放⼤
⽤⿏标点击地图中的任意部分,或按住⿏标左键拉出⼀个矩形框,即可获得指定区域放⼤后的地图。对地图进⾏⽆级放⼤,随着地图的放⼤,系统⾃动显⽰⼀些相关的信息。
缩⼩
⽤⿏标点击地图中的任意部分,或按住⿏标左键拉出⼀个矩形框,即可获得指定区域缩⼩后的地图。
对地图进⾏⽆级缩⼩,随着地图的缩⼩,地图上显⽰的信息将会减少以达到最好的显⽰效果。
显⽰全图
显⽰电⼦地图全貌。可以让⽤户⽅便的回到地图的初始状态。
移图
移动地图,将地图视野以外的地图移动到视野内。可按住⿏标左键任意拖动地图,使之达到理想位置。
测距
⽤户可以在地图上,沿着⾃⼰想要测量的线路,⽤⿏标单击地图,在上⾯画出⼀条直线或者折线,然后,在结束点双击,即可得到这条线所代表的实际线路的距离。
鹰眼
快速移动地图视野到指定区域,或者看⽬前的主地图窗⼝在全市范围的那个区域。
⽂件操作
快装脚手架将当前窗⼝视图打印。地图信息可以保存为jpg⽂件或其他格式的⽂件,并⽀持预览。
5.3.2. 地图基础查询功能
5.3.2.1. 模糊查询
功能概述
通过输⼊名称关键字,进⾏地图对象的查询,可以查询道路、建筑物等基础地理信息,也可以查询各类专题数据,查询结果以列表的形式显⽰出来,同时可以点击进⾏地图定位,⾼亮显⽰,同时可以点击链接查看相关的属性数据。
实现流程
在客户端要求⽤户属于关键字,选定查询的图层类别,然后客户端根据⽤户输⼊的信息调⽤模糊查询接⼝提交给引擎进⾏空间查询,地图服务引擎将检索到的地图对象的相关信息输出,客户端进⾏查询结果的接收解析,将结果进⾏拼接显⽰。

本文发布于:2024-09-22 04:16:50,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/2/147740.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:地图   系统   数据
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议