基于ArcIMS的交通基础设施信息系统研建


(广西基础地理信息中心 广西南宁 530023 Email:13507714592@vip.sina.com)

【摘 要】 本文主要介绍基于ESRI的Web GIS平台ArcIMS,广西交通基础设施信息系统的设计和实现。
【关键词】 Web GIS;ArcIMS;交通基础设施

1 前言

  改革开放以来,广西的交通基础设施建设取得了快速发展,高速公路从无到有,从少到多,路网结构不断完善;港口吞吐能力明显增强、内河航运设施较大改善。交通基础设施信息量迅速增长,传统的管理方法已经不适应交通日益发展的需要。有必要充分利用计算机应用技术的最新发展,采用IT技术、GIS(地理信息系统)技术、多媒体技术,结合行业规划及管理需要,开发功能完善的基于Web GIS的交通基础设施信息系统。
广西交通基础设施信息系统是为了适应目前交通基础设施信息量不断增加的要求,采用ESRI的Web GIS平台ArcIMS,通过电子地图的展示,动态地表现已建成、在建以及正在做前期工作的各等级公路、港口、内河航运枢纽的基本情况,及时地为交通部门的领导和管理人员提供准确、翔实的资料。
2 Web GIS技术及ArcIMS简介
2.1  Web GIS(互联网地理信息系统)技术
  近几年来, 飞速发展的Internet已经成为GIS新的系统平台,利用Internet技术在Web上发布空间数据供用户查询和使用是GIS发展的必然趋势,Web GIS技术作为GIS的主要发展方向之一已是不争的事实。目前, Web GIS的实现方法有 Java编程法、 ActiveX法、公共网关接口法(CGI)、服务器应用程序接口法(Servlet API)和插件法 (Plug Ins)等。 国内外大部分GIS厂商都推出了自己Web GIS产品。国外如AutoDesk公司的MapGuide、ESRI公司的ArcIMS、MapInfo公司的MapXtreme;国内如武汉吉奥公司的GeoSurf、北京超图的SuperMap IS、武汉奥发公司的AFInternet GIS等。
采用Web GIS技术至少有以下几方面的优势:
  (1)高伸缩性:从 Web GIS服务上来说,既可以在Internet上发布,满足GIS网站的要求,也可以在Intranet上使用,满足单位内部局域网的需求。还能更好地与部门内部已有的系统集成。
  (2)瘦客户端:所有地图、属性数据、编程等工作都在服务器端进行,客户端只需浏览器如IE就可以工作 (有些Web GIS产品需安装插件)。客户端访问服务器上的Web GIS服务,可对服务器发出各种请求,服务器接受客户端的请求后,在服务器端进行数据分析处理,向客户端传回结果图像(或矢量数据)和检索出的属性数据。
  (3)低网络带宽需求:由于客户端的任何操作都是向服务器发送数据量很小的指令集,服务器端处理客户端的请求后,向客户端传送的是高压缩率的JPEG图像(或矢量数据)和属性数据,对网络带宽要求很低。
  (4)高安全性:从公众服务的角度来说,由于对外服务的项目可通过服务器控制,用户只能访问到和自己权限相匹配的资料,避免了用户越权查阅保密资料;从地图、行业数据保密的角度来说,服务器端传送到客户端的是一张结果图像(或矢量数据)以及属性数据,客户端永远不能获取服务器上的GIS矢量数据及属性数据,这样从根本上保护了花大量精力收集、加工的数据资料,保护了数据提供者的投资。
2.2 ESRI的Web GIS平台ArcIMS简介
  (1) ArcIMS的体系结构(见图1所示):
  作为美国ESRI公司第二代Web GIS产品,ArcIMS主要用于在Internet/Intranet
  环境上提供GIS服务。它包含三个实用工具,用于构建B/S结构的地图应用。
  ① 地图服务管理工具Administrator:提供图形界面管理栅格和矢量两种地图服务,用于读取Author生成的AXL文件。
  ② 地图数据组织工具Author:提供对栅格数据和矢量数据(Shape格式)进行数据组织,最终生成AXL文件。
  ③ Web 发布站点设计Designer:可快速定制客户端看到的界面,生成站点。

图1 ArcIMS的体系结构

  (2) ArcIMS的特点:
  ①支持多种操作系统平台:如NT4、Windows2000、UNIX等
  ②支持多种Web 服务器:IIS、iPlanet、Apache等
  ③客户端伸缩性:瘦客户端(传到客户端的地图为栅格数据)包括HTML Viewer,胖客户端(传到客户端地图为矢量数据)包括JAVA Viewer、ArcGIS Desktop、ArcExplore(免费)、无线设备(如蜂窝电话、PDA)等。
3 系统功能设计:
  广西交通基础设施管理信息系统选用ArcIMS3.1的Servlet Connector和HTML Viewer,采用ASP和JavaScript语言,MacroMedia公司的Dreamweaver MX和微软的Visual InterDev6.0网站开发工具进行二次开发,实现对交通基础设施信息的检索查询、综合分析的功能等。系统整体功能结构如图2所示:

图2  广西交通基础设施信息系统功能结构图

3.1 基本地图操作功能
  本系统的电子地图具有漫游、缩放、显示全图、根据比例尺显示等浏览功能,并采用鸟瞰图,即可方便概览全图,又可观察局部细节。并可控制任意图层是否显示。
3.2 数据管理与维护功能
  系统提供了方便有效的数据录入、管理和更新维护功能。系统共管理两种数据:电子地图数据、广西交通基础设施信息(包括公路、港口、内河航运枢纽及航道的信息)。用户可根据需要随时更新这两种数据,以保证数据的时效性。
3.3 强大的可视化信息查询显示功能
  ·实现图形查属性、属性查图形双向功能以及模糊查询功能。可快速地查询广西各条公路、港口、内河航运枢纽及航道的地理位置,突出显示选中目标和相关周边环境电子地图,以文字、图片、录像等多媒体方式展现查询目标的详细情况。
  · 可查询电子地图上任何位置的坐标。
3.4 量算与空间分析功能
  · 可计算两个或多个目标之间的直线距离。
  · 可进行缓冲区分析(或辐射范围分析),如点缓冲区分析、线缓冲区分析、面缓冲区分析等。
3.5 打印输出功能
  可将电子地图及各种信息资料打印输出。
3.6 权限管理功能
  系统采用用户登录权限管理,不同等级的用户具有不同的权限,以保证系统和数据的安全。

图3 广西交通基础设施信息系统界面

4 ArcIMS二次开发的几点体会
4.1 如何选择Viewers
  Viewers决定了ArcIMS站点的功能和外观,决定了提供哪些空间、属性查询工具和显示工具。因此在使用ArcIMS进行开发时,首先要考虑“选择什么样的客户端?”, ArcIMS提供了三种viewer以供选择。一般情况下要考虑以下几方面因素:站点是建立在Intranet还是Internet?用户使用什么浏览器?用户的GIS背景?需要的功能?定制的工作量有多大?
  如果要建立一个Intranet站点,Java Viewer(胖客户端)可能是个明智的选择。在内部网中要求用户在客户端下载并安装插件相对应该较为容易。Java Viewer支持矢量数据流和更丰富的客户端功能,如MapNotes和EditNotes,这是HTML Viewer所不支持的。一旦客户端加载了Applets,地图的显示和查询速度将非常快。ArcIMS支持两种Java Viewers:可定制的Java Viewer和标准的Java Viewer。
  如果要建立一个Internet站点,且要求客户端不用下载插件,可以考虑HTML Viewer(瘦客户端)。使用HTML Viewer的主要原因是无需定制,即可获得强大的功能。并且HTML Viewer支持所有平台的客户端和服务器。开发者只需熟悉HTML和JavaScript就可以通过HTML Viewer建立站点。HTML Viewer的主要缺点是客户端只能返回栅格数据,因此访问大数据量时响应时间较慢。
4.2 如何通过修改ArcIMSparam.js文件达到简易、快速定制HTML Viewer
  首先使用ArcIMS Author定义地图应用的内容:包括添加数据、设置地图属性,产生一个在线地图作为地图服务。然后根据ArcIMS Author定义的数据,用ArcIMS Designer生成用户可以浏览的Web服务。ArcIMS Designer可通过一系列对话框帮助用户选择客户浏览器使用的地图服务、模板和功能。
  此时HTML Viewer会生成一系列文件,其中一个重要的参数文件是位于站点目录下的ArcIMSparam.js文件。该文件包含了一组影响站点外观和工作方式的JavaScript变量。对HTML Viewer大部分的定制都可以通过改变这些变量的值来完成。ArcIMSparam.js包含的主要变量可用于:改变所用的地图服务和地图范围、设置图例的初始化显示、定义acetate层的指北针,版权文字、定义属性字段的显示、改变工具和工具条。例如:
  ①给字段加上汉字别名:
  var useFieldAlias=true;
  fieldAliasList[0]="CODE:代码 | RNAME:名称";
  ②缺省只能查询当前图层的属性,若要查询所有图层的属性,则修改:
  var useIdentify = false;
  var useIdentifyAll = true;
4.3 使用ArcXML(基于Internet的空间数据描述语言)扩展和定制系统功能
  ArcXML是专为在ArcIMS中不同部件间进行数据交换而设计的一种协议,是特定的一种XML语言。
  ArcXML使用分级标签系统为ArcIMS部件之间的通讯提供了基本框架结构。在ArcXML体系中一共有五个标签构建基本框架。ArcXML标签包含在ArcXML的声明部分。四个根子标签CONFIG,REQUEST,RESPONSE和MARKUP定义了ArcXML声明的类型。CONFIG标签通过设定属性和定义图层配置地图;REQUEST,RESPONSE和MARKUP标签用于在不同部件间进行通讯。所有从客户端向空间服务器传递的请求用REQUEST标签;RESPONSE标签用在从空间服务器返回的响应中;MARKUP标签描述了在客户端通过EditNotes工具进行的修改。
  ArcXML是实现更灵活、更复杂的系统功能和地图显示的基本方法。
4.4 使用javascript扩展和定制系统功能
  JavaScript是一种脚本编程语言,支持Web应用程序的客户端和服务器方构件的开发。在客户端中,它可用于编写Web浏览器在Web页面上下文中执行的程序;在服务器端,它可用于编写处理Web浏览器提交的信息并相应地更新浏览器显示的Web服务器程序。ArcIMS的HTML Viewer缺省包含一个JavaScript函数库,其中设计了几百个函数和几百个全局变量,是进行定制开发的核心。这些函数按功能进行了分组,以*.js形式保存。我们可以改写或补充这些函数,这也是进行深度定制开发所必经的过程。是否有一个组织良好的Javascript函数库,决定了开发的效率与质量。
5 结束语
  广西交通基础设施信息系统的建成为广西交通管理部门提供了一个可视化的决策辅助管理工具,显著提高了管理人员的规划及管理水平,促进了行业管理向科学化、规范化、信息化的方向发展。今后,结合电子政务在交通管理部门的应用,Web GIS技术在交通基础设施管理方面将有广阔的应用前景。

参考文献:
[1]  http://www.esrichina-bj.cn/ . ESRI中国(北京)有限公司
[2] 《Customizing ArcIMS HTML Viewer》. GIS by ESRI,2001

posted @ 2005-07-26 08:18  facewater  阅读(484)  评论(0编辑  收藏  举报