浅谈快速构建GIS应用系统
2021-07-12刘力铖张子航
刘力铖 张子航
(1.中国电建集团河北省电力勘测设计研究院有限公司,河北 石家庄 050000;2.南京航空航天大学,江苏 南京 210016)
近几年,随着大数据、云存储、移动互联等的发展,基于位置服务的GIS技术深入到人们的日常生活,普遍应用于社会的各个领域,从专业化逐步走向大众化。GIS系统构建模式也随着更广泛的应用不断变化,人们对差异、交互、便捷的应用需求逐渐增强。传统的GIS构建以代码开发为主,其效率低、不易维护的弊端,已很难适应快速变化的GIS应用需求,影响系统应用的深度和广度。如何建立一个能够快速聚合资源、灵活配置功能的GIS应用程序系统亟待研讨。
1 GIS技术发展新特点
1.1 WebGIS的开放共享程度越来越高
早期的WebGIS应用系统大都是作为独立解决方案来开发,各自是孤立和封闭的网站,系统之间不易进行信息和功能的共享。近些年,Web服务已经成为WebGIS的技术基础,客户端可以灵活地调用和重新组合Web服务[1]。地图、数据、工具都可以服务的形式进行发布和调用,地理信息服务的广泛应用促进了GIS资源的开放共享。
1.2 GIS平台门户开发技术
门户是应用与服务器进行交互、获取内容和使用资源的地理信息资源协同管理平台。目前,国内行业地理信息门户开发平台主要有Portal for ArcGIS和SuperMap的iPortal平台[2]。通过门户的前端开发框架实现托管地理信息服务、聚集各类信息资源、定制个性化界面和快速展示业务数据等功能。
1.3 微件(Widget)技术
微件是一组封装好的具有专门功能的HTML/JavaScript组件,通常包含模块UI文件、配置文件、样式文件和国际化支持文件等,微件通过特定的逻辑功能可以与用户进行交互操作[3]。GIS门户中将各种GIS的算法、功能以微件形式供使用者配置或开发,通过这些即拿即用的微件可快速构建WebGIS应用,实现制图可视化、空间分析、数据管理和协作分享等。
1.4 公共基础地理数据日益完善
矢量地形图、航射影像等基础数据是GIS建设的基础,以前大区域的基础数据大多需要自行购买,这些数据费用高,处理费时,更新滞后,不利于GIS系统的可持续应用。随着公共地理数据的不断完善,基础底图可充分利用这些资源更新平台信息。目前公共地理信息平台主要有天地图、百度地图、Google Earth地图、Bing地图等。这些数据的时效性、精度等级、更新程度各方面都较以前有很大提升,开发人员可以充分利用这些资源,解决基础数据成本过高及更新不及时的问题。
1.5 地理信息获取日益便捷
受智能终端日益普及的影响,普通大众也可以方便地获取各类地理信息,手机、平板等设备完全能够实现专业化的数据采集、编辑、分析、共享等操作,使大众参与GIS的深度不断加强。
2 传统GIS构建模式面临的问题
(1)周期长效率低。传统的WebGIS解决方案是构建独立的网站,基于大量的代码开发,针对具体需求定制功能模块,开发人员很难在短时间内开发出一个满足个性化要求、性能稳定高效的WebGIS应用系统。信息化发展日新月异,GIS资源的获取较以往更加便利,数据共享和交互操作需求导致传统项目建设在效率上和灵活性上已经不适应现在的GIS发展。
(2)开发技术复杂。传统模式开发一个功能完整的GIS系统,需要较高的技术门槛,要有一定的GIS专业知识,还要有较强的程序开发能力,GIS开发仍是专业人员从事的工作。
(3)可扩展性差。信息化的发展需要GIS程序能够快速响应系统扩展的需要,传统模式灵活度低,过渡依赖于开发人员,往往不可能做到随心所欲的改造,系统可扩展性差,影响GIS应用的深度。
3 应用案例
以水文气象信息管理GIS系统建设为例,依托PortalforArcGIS门户平台,利用配置和开发微件等手段,探讨快速构建GIS应用系统的方案。
水文气象信息管理GIS系统实现了对勘察设计工程的水文气象资料的汇总和集成化管理,对收集和积累的水文气象信息进行快速分析,为工程后续勘察设计提供数据支持。
3.1 系统构建模式
系统采用 ArcGIS Enterprise(Server+Portal)搭建,通过Web AppBuilder进行灵活配置,在短时间内组织起来相关数据,并形成WebGIS应用系统。系统采用公有云和私有云混合模式。基础底图以及基础水文、水资源分布、气象条件等城市公共资源通过公有云获取。风速、风压、覆冰等工程信息存储在私有云,通过ArcGisServer发布为服务,前端通过调用服务的形式进行数据访问。
3.2 微件库
WebAppBuilder是PortalforArcGIS的Web客户端,可让用户通过灵活的配置来创建GIS应用程序。WebAppBuilder包括很多即拿即用的微件,能实现应用程序的不同功能。功能微件主要分为内嵌微件、交互微件、分析微件。内嵌微件不需要进行定制,如比例尺、图例等。交互微件需要与地图进行交互操作,如测量、底图库、查询、打印等。分析微件提供了数据分析或空间分析工具,如图表、分析、地理处理等。
在上述基本微件不能满足功能要求的情况下,可以对微件的交互性和样式进行定制开发。复杂的业务逻辑可以封装成独立的微件,供系统拼装组合。
3.3 实现功能
水文气象信息管理GIS系统的功能主要是通过拖拽和配置微件的方式生成的,用到的微件主要有:编辑、测量、查询、打印、地理处理、底图库、分析、卷帘、书签、添加数据、图表等,实现功能如下:(1)数据管理。实现了对主要水文、气象成果详细信息的管理,包括站台信息、风速、风压、覆冰、雷击、洪水、实测流量成果、月年平均输沙率等资料。(2)查询检索。通过工程编号、名称等关键字查询工程文档。对新工程附近已有主要水文成果、气象成果进行查询检索。已有工程资料包括工程各阶段的水文气象报告及计算书。(3)在线编辑。应用系统支持多端访问,在现场可以通过手机端进行新建修改气象站、水文站、水库、堤坝干渠、河流等数据。(4)地图打印。根据工程需要形成专题地图,可以保存成PDF、JPG等多种格式,支撑更改比例、范围、DPI等参数后打印输出。(5)分析功能。分析气象设计参数,方便技术人员对工程区域设计气象条件的初步判断。采用折线图、柱状图等来展示水文数据,找出其中的变化规律。可进行聚类分析、淹没分析、缓冲区分析等操作。(6)资源聚合。与城市公共资源系统进行连接,以实现对河流情况、水利工程、基础水文、水资源分布、气象的最新信息的获取,实现资源的聚合。
4 快速构建系统的优势
系统基于GIS门户的可配置的地图及微件模块构建水文气象管理系统,提供了数据管理、查询检索、在线编辑、地图打印、统计分析、资源聚合等功能,实现水文气象信息的可视化表达及工程资源共享,为后续工程勘察设计提供技术支持。对比传统构建GIS模式,这种方式有以下显著特点:
(1)建设效率高,短时间完成项目。通过灵活的定制与配置操作,快速搭建出具有不同个性化界面及功能的专题应用系统,能满足用户快速定制专题应用系统的迫切需求,极大节约了开发成本、提升了开发效率。(2)降低GIS项目开发门槛。开发人员更多精力投入到数据的组织和功能的配置,从复杂的代码的编写中解脱出来。这种方式可充分利用GIS的聚合特性进行资源聚合,适用于快速响应的系统建设,易于高效快速地整合已有的资源来开发新的地图应用。(3)可扩展。采用微件配置与开发模式提高了用户的参与度和交互度,可快速将用户需求转化为地图应用展示出来。微件之间相互独立,对于增加的系统功能可以通过微件的复用与重组来实现,不影响系统的现有功能和结构。
这种快速构建GIS应用系统的模式仍有许多需要完善的地方,如需要有GIS门户平台和服务器的支撑,往往投入比较高;对于较为复杂的业务逻辑和功能应用仍需深入开发,微件的数量应进一步扩充。
5 应用展望
通过GIS门户平台的AppBuilder及其微件模块,整合多种地理信息资源,快速展示地图服务,搭建所见即所得的GIS应用系统。这种模式降低了WebGIS开发难度,提高了数据共享与交互操作程度,推进GIS应用的深入发展。