于 庆,刘淑静,付锦凤,高 赟,单 科,黄鹏飞
(国家海洋局天津海水淡化与综合利用研究所海水利用发展战略研究中心,天津 300192)
海水淡化是解决全球水资源危机的重要途径,对解决我国沿海水资源匮乏,优化沿海用水结构,保障和促进沿海经济社会可持续发展具有重要意义。当前我国海水淡化产业发展迅速,沿海各地发展海水淡化的热情高涨,多个万吨级、十万吨级淡化工程正在规划建设;同时,政府、企业及社会各界对以网络为手段更快更便捷地获取海水淡化工程信息需求日益迫切。但目前海水淡化工程信息分布零散、查询困难,大多以文字、图片、表格等静态形式表达,亟需与空间位置集成实现统一管理与动态可视化服务。因此,本文利用数据库技术集成管理海水淡化工程信息,采用WebGIS建立海水淡化工程空间信息可视化系统。该系统能够直观、生动、形象化地表达海水淡化工程信息,实现海水淡化工程信息的共享与服务,为政府部门决策、科研机构科学研究、社会公众了解海水淡化事业提供一定支持。
WebGIS是互联网与地理信息技术(GIS)相结合的产物,能够利用网络技术在互联网上发布和出版GIS信息,以供用户浏览、查询并获取所需的空间数据和应用[1-3]。WebGIS最大特点是在空间框架下实现图形、图像数据与属性数据的动态连接,提供可视化查询和空间分析功能。目前WebGIS已被应用到海洋领域,如:欧洲遥感企业协会应用WebGIS技术,以Internet数字地图形式可视化表达希腊东部阿尔基岛附近的波西多尼亚海草分布及其生存环境的空间信息[4];德国,英国和挪威三国科学家共同开发了基于WebGIS的海洋污染监测与预测系统[5];希腊国家海洋研究中心开发了基于WebGIS海洋环境监测预警系统[6];波兰格但斯克工业大学的Marcin Kulawiak等人开发了一个能够收集、处理和动态可视化多类型海洋信息的WebGIS平台[7];爱尔兰科克大学的Tuama和挪威南森环境遥感中心的Hamre深入地研究了WebGIS在海上溢油和赤潮灾害动态可视化中的应用[8]。国内专家学者在基于WebGIS技术的海流场远程可视化[9]、海洋表面温度信息的动态可视化[10]等方面开展了相关研究并取得了积极成果。前人在应用WebGIS技术开展海洋属性信息与空间信息一体化组织与管理方面以及信息可视化表达方面的研究成果表明,该技术能够结合海水淡化工程空间信息特点,为实现海水淡化工程空间信息可视化提供技术支撑。
WebGIS技术具有多种实现手段,其中Flex技术、ArcServer技术和 ArcGIS Flex API的结合,使得WebGIS能够开发包含丰富用户体验的富客户端用户程序[11-14]。本文依托这些技术结合系统业务需求开展系统设计工作,主要包括系统架构设计、系统数据库设计与系统功能设计。
海水淡化工程空间信息可视化系统主要由表现层、服务层和数据层构成,如图1所示。
图1 系统架构设计图
(1)表现层的载体为客户端浏览器,在 Flew-Viewer基础上,采用Flex Framework框架及 ArcGIS Flex API设计,使用Flash-Player作为与用户的交互窗口。
(2)服务层由GIS服务器和IIS服务器组成。GIS服务器由ArcGIS Server搭建而成,IIS服务器主要负责非GIS相关服务的发布。
(3)数据层主要包括基础地理要素、海水淡化工程空间信息及相关属性信息。对空间数据的存取采用ArcGIS中的ArcSDE空间数据引擎访问Oracle数据库,对属性数据的存取采用ADO.NET与Oracle数据库连接,对海水淡化工程详细信息、图片等不便于数据库存储管理的数据以文件的方式存放在服务器端,供服务层调用。
数据是系统的核心组成部分,数据的有效组织程度将直接影响到系统运行的效率,本系统涉及的数据主要包括基础地理信息数据及海水淡化工程数据。
基础地理信息数据包括沿海省市行政区、主要公路、铁路、水系及岛屿等基础图层,通过ArcSDE在Oracle数据库中存储与管理;海水淡化工程数据由工程位置信息与属性信息组成。由于海水淡化工程存在分期建设情况,因此工程位置空间信息与工程属性信息存在一对多的关系。本文将这两种信息分开存储,通过关键字标识码建立两者间的对应关系,进而实现数据的无缝组织与互操作。
海水淡化工程空间信息可视化系统的目标是实现海水淡化工程信息的动态可视化发布,满足用户及时、准确掌握海水淡化工程信息的迫切需求。根据系统目标进行系统功能设计,主要由地图浏览、常用辅助功能、专题信息检索和统计分析4个功能模块组成,如图2所示。
图2 系统功能结构图
依据系统框架设计,系统实现采用B/S的组织体系结构,即“客户端/服务器”,其中客户端前台浏览器选用IE6.0及以上版本,程序采用Flex开发,开发环境为Flex Builder。服务器端程序采用C#语言与ADO.NET 技术开发,Web 服务器为 IIS6.0,GIS服务器为ArcGIS Server 9.3,数据库服务器为Oracle11g。
海水淡化工程空间信息可视化系统致力于向用户及时提供海水淡化工程信息,系统实现过程中涉及的主要功能有地图浏览、专题信息检索、显示查询结果、统计分析等。
(1)地图浏览。
地图浏览为用户提供地图放大、缩小、漫游、全图操作。系统事先将待显示的基础地理要素在ArcMap中渲染,发布的地图服务可以划分为基础地理要素和海水淡化工程专题信息两部分。对于不经常变化的基础地理要素,系统通过ArcGISTitledMapServiceLayer方式发布切片地图服务。海水淡化工程空间信息因其实时性则采用ArcGISDynamicMapServiceLayer动态渲染。这样当用户请求时,地图服务分别返回请求范围的海水淡化工程专题地图图片和底层基础地理要素地图切片并在客户端叠加显示,尽可能地减少服务器的计算负载,提高了地图响应速度。
(2)专题信息检索。
专题信息检索功能主要对海水淡化工程实现图形查询、名称查询及查询结果定位显示。海水淡化工程专题信息查询是通过 ArcGIS API for Flex的QueryTask、Flex提供的 <WebService>组件及 ADO.NET实现,这里以名称查询为例进行说明,查询过程包括属性信息查询和空间信息查询两个步骤。首先,在ADO.NET中创建并发布数据服务,根据查询条件利用<WebService>组件实现服务的调用,从Oracle数据库中检索工程关键字标识码等属性信息;然后,利用QueryTask接口根据关键字标识码查找空间位置信息,进行信息合并显示。
(3)显示查询结果。
显示查询结果除了为查询的图形结果设置符号,还将图形添加到图形图层中。这个符号可以直接通过图形图层来表现,所有添加到该层的图形都将用这种符号来表示。本文应用ArcServer API for Flex提供的GraphicsLayer接口定义查询结果显示图层,系统中海水淡化工程属于点状要素,图形符号通过PictureMarkerSymbol设置,然后将其赋予显示图层Symbol属性,继而实现查询结果的动态显示。
(4)统计分析功能。
统计分析功能是对专题信息检索功能的进一步延伸,主要是针对我国海水淡化工程进行时空统计分析,如按照区域、时间统计海水淡化工程相关信息。统计分析过程是通过调用服务器端发布的数据服务,读取其属性字段,利用Flex的垂直柱状图和折线图等多种图表控件实现,直观明了地反映统计结果信息。
WebGIS能够以Internet数字地图形式直观地展示海洋信息,因此本文将其引入海水淡化工程空间信息可视化领域,设计开发基于Flex的富客户端海水淡化工程空间信息可视化系统,用户仅需在安装Flash Player的客户端浏览器中输入URL地址即可应用,应用效果如图3所示。应用结果表明,海水淡化工程空间信息可视化系统继承了Flash动画的丰富视觉效果,具备良好的交互性和响应性的用户体验,能够发布海水淡化工程属性信息与空间信息,实现海水淡化工程地图浏览、专题查询及统计分析等功能。随着当前海水淡化产业的蓬勃发展,海水淡化工程空间信息可视化系统作为提供海水淡化信息的重要途径,将在海水淡化工程空间信息共享、查询与可视化展示等方面展现出更加广阔的应用前景。
图3 系统应用效果
[1]Diviacco P.An open source,Web based,simple solution for seismic data dissemination and collaborative research[J].Computers & Geosciences,2005,31(5):599-605.
[2]Frehner M,Brandli M.Virtual database:Spatial analysis in a Web-based data management system for distributed ecological data[J].Environmental Modelling & Software,2006,21(11):1544-1554.
[3]Jesus J,Panagopoulos T,Blumberg D,et al.Monitoring dust storms in central asia with open-source WebGIS assistance[J].WSEAS Transactions on Environment and Development,2006,2(6):895-898.
[4]Paolo Manunta,Daniela Drimaco,et al.WebGIS 3D and interactive locator module for management and promotion of natural areas[J].GIS Ostrava,2008,1:27-30.
[5]Hamre Torill,Krasemann Hajo,et al.Interoperable Web GIS services for marine pollution monitoring and forecasting[J].Journal of Coastal Conservation,2009,13(1):1-13.
[6]SoukissianT,Chronis G.Poseidon:A marine environmental monitoring,forecasting and information system for the Greek seas[J].Mediterranean Marine Science,2000,1(1):71-78.
[7]Marcin Kulawiak,Andrzej Chybicki,Marek Moszynski.Web-based GIS as a tool for supporting marine research[J].Marine Geodesy,2010,33(2-3):135-153.
[8]Tuama,Hamre.Design and implementation of a distributed GIS portal for oil spill and harmful algal bloom monitoring in the marine environment[J].Marine Geodesy,2007,30(1-2):145-168.
[9]何亚文,杜云艳,苏奋振,等.利用空间信息网格的海流场远程可视化[J].武汉大学学报:信息科学版,2010,35(3):350-352.
[10]He Yawen,et al.Web-based spatiotemporal visualization of marine environment data[J].中国海洋湖沼学报(英文版),2010,28(5):1086-1094.
[11]高晓蓉,徐丹,雷瑛.基于Flex和REST服务的WebGIS系统开发——以陇西县地理空间信息应用系统为例[J].遥感技术与应用,2011,26(1):123-128.
[12]袁怀月,侯澄宇,杨恒.基于ArcGIS Flex API的工厂基础地理信息共享服务系统设计[J].测绘工程,2012,20(2):61-65,69.
[13]贾静,耿衬.基于ArcGIS API for Flex的Web应用初探[J].地理空间信息,2012,10(3):114-118.
[14]钟广锐.基于ArcGIS Flex API的 WebGIS设计[J].测绘科学,2012,37(3):147-149.