分享

47

 桦芊树图书馆 2011-11-15

§7.7 Web GIS

    90年代IT技术最引人注目的进展就是Internet的普及发展。它推开了网络时代的大门,为社会带来了巨大的发展空间。同时,它使应用系统的计算体系结构更容易走向分布化,使得GIS的认识论和方法论都发生了一些改变。随着用户对网络地理信息的需求日益增长,互联网络上的地理信息系统应运而生,产生了很多相应的网络GIS技术产品。目前突出的一个就是Web GIS。

一、Web GIS原理

    介绍Web基本原理和WebGIS具体实现技术。

二、WebGIS的特点和意义

    介绍WebGIS的特点、WebGIS性能和技术方法以及现实意义。

三、WebGIS的应用实例

    用图解方式介绍WebGIS的实际应用。

一、WebGIS原理

    Web GIS是建立在Web技术上的一种特殊环境下的地理信息系统。其本质与一般的地理信息系统没有区别。但是由于早先的GIS一般在网络功能上比较差,因此建立在网络环境下的Web GIS一出现就受到了很大重视。

    Web GIS也称为Web-based GIS,是建立在Web技术之上的一种特定领域的应用。Web的全称为World Wide Web,一般简称为WWW或Web。它是目前Internet上最重要的应用技术之一。Internet从1969年美国国防部国防高级研究计划署资助建立的ARPANET ("阿帕网")开始,发展到今天,诞生了很多软件技术和产品,如TCP/IP、FTP、EMAIL、BBS、网络新闻组等。但是最流行的应用技术还是Web。目前在网站建设、电子商务和大型应用系统的建设中都离不开Web技术的应用。

1、Web 原理

    Web技术是一种特殊形式的客户/服务器体系结构,由W3C(WorldWideWeb Consortium )这个国际组织来维护相关的标准。其中,在客户和服务器之间通过超文本传输协议HTTP(HyperText Transfer Protocol)交流信息(图7-7-1)。HTTP是建立在TCP/IP基础上的一种高层网络应用协议。服务器一般采用WWW Server,也称为HTTPd(HTTP daemon)。客户端一般采用流行的通用浏览器(Browser),如IE、Netscape等。简单地说,Web的原理就是用浏览器下载服务器管理的文件并显示出来。浏览器通过统一资源定位符URL(universal resource locator)来访问服务器并请求取得文档。

    URL分三部分:一是通讯协议;二是网络主机名(或IP地址)和端口号,默认端口号一般省略不写;三是文件在主机上的绝对路径名称。绝对URL地址包括完整的三个部分,相对URL地址只包括文件在主机上的相对路径名称。具体例子见图7-7-2。

     浏览器通过指出网络文件的URL地址就可以直接获取服务器上存储的文件。这些文件名称中带有不同的后缀。浏览器根据这种后缀的类别对文件内容进行识别和解释。这种后缀类别经过W3C标准化后形成了统一标准,被称为MIME(Multipurpose Internet Mail Extentions,多用途Internet邮件扩展映射)。*.HTML、*.GIF、*.WAV等都是常见的MIME格式。其中最重要的是超文本标记语言HTML(Hypertext Markup Language) 文档,对应的MIME文件名为*.html和*.htm。HTML文档是对一种增强版本的ASCII文本。它在文件中加入各种以"<…>"形式标记的标签,进行各种字体、图形、表格等要素的显示控制和说明。

    Web技术原本是一种通过网络直接访问和浏览以文件形式存储的数据的技术。早期只能访问静态的文本和图像文件,后来该技术思想得到广泛的传播、发展和利用,目前已经实现了对多媒体数据、动态数据、实时数据和数据库等数据的访问。图7-7-3是一个IE浏览器进行网上阅读的例子。

2、WebGIS的实现

    Web GIS也是利用上述原理,通过浏览器访问服务器上的地理信息文件。不过,一方面浏览器需要增加解释和显示GIS数据的功能,另一方面,服务器需要具备动态产生GIS数据文件的功能。

    在Web GIS 发展的早期,需要在WWWServer端事先把GIS信息转换为GIF或JPEG图像和文字信息,组织在HTML文件内。当用户通过浏览器访问这些页面文件时,地理信息以图像和文字的方式传输给客户端,这种方式受制于HTML语言的限制,用户对交互操作的能力很弱,而且纯图像方式也不太适合一些GIS`的深入使用。后来Web GIS实现了矢量地图文件的传输显示,目前已经可以实现把传统GIS的全部功能搬到WebGIS上。

     第一种Web GIS的实现原理是利用客户端浏览器的扩展技术

利用客户端浏览器的扩展技术实现Web GIS

    首先是利用浏览器厂家开放的数据解释功能。各浏览器厂家除了在浏览器软件中内置了MIME解释器以外,还为第三方软件开发商提供了开发MIME解释器的预留开发接口。这为Web GIS开发浏览器接收解释专用GIS数据格式和执行特定功能提供了机会。

    很多浏览器支持Plug-in技术,也称插件,这是最早向第三方软件开发商开放的浏览器功能扩展接口。针对解释特定GIS数据格式的Plug-in程序被编译后,放入浏览器指定的位置,浏览器启动时自动加载入内存。当浏览器接收到指定类型的GIS文挡时就交给这些插件处理,完成GIS数据的解译。

    例如,Autodesk公司首先利用Plug-in实现了浏览器对AutoCAD的矢量数据的访问,后来又开发了Web GIS产品 Mapguide。浏览器先自动下载一个GIS控制信息文件mwf,由浏览器本地的Plug-in解释,根据其中的控制需要再分别下载实际的GIS矢量、栅格、属性等数据。这种方式需要提前在浏览器端安装插件程序。

    当Java语言兴起以后,又出现了一种灵活的浏览器功能扩展方法。现在很多浏览器内置了Java语言的解释器,可以解释服务器传来的Java代码。Java的这种代码叫Applet,预先编写的程序以*.class的文档方式存储在服务器上,当用户下载的HTML文件中包含了这种Applet程序的引用标记时,浏览器自动向服务器申请下载这个程序。于是Applet程序从服务器移动到浏览器端,被Java语言解释器解释执行。这种技术路线已经被很多Web GIS所利用。一般在*.class中都首先包含了一个GIS交互操作界面,供用户操作、激发和下载其它GIS功能和数据。例如在 http://www.rcgis./wwwgis/Geo11/default.htm 文件内包含这样一个语句:< APPLET CODE="wwwgis.class" WIDTH=610 HEIGHT=360>:,就可以让GIS程序动态下载到客户端执行。

    另外一种方式是在微软环境下,利用ActiveX技术来实现,其原理与Java/Applet的程序下载执行原理一样,ActiveX程序编写好后存储于服务器上,跟随HTML下载到用户端。

    例如在HTML内加入< object ID="MBWebGis" WIDTH="100%" HEIGHT="100%" align="center" CLASSID="clsid:C892ADFB-7E50-11D3-9B16-D85D20115343" CODEBASE= "mbWebGis.cab # version=1,0,0,4">,可以下载ActiveX程序。不同的是ActiveX程序会在用户端自动与操作系统的功能融合在一起,具有操作本地文件的能力。而Applet不能读写用户端的文件,也不能在用户端长久保留,每次调用HTML页面都要重新下载。微软的产品(IE浏览器和IIS WWW服务器软件)由于有微软强大的操作系统支持,很容易实现这种方式。

    由于HTML缺乏适合GIS的数据描述,所以在目前Web GIS技术中,扩展浏览器的功能成为加强用户端交互能力和GIS数据格式多样化的重要实现方式,可以使浏览器提供与普通程序一样丰富的人机交互界面。

    在微软环境下,利用ActiveX技术来实现,其原理与Java/Applet的程序下载执行原理一样,ActiveX程序编写好后存储于服务器上,跟随HTML下载到用户端。

    第二种Web GIS的实现方式是利用WWW服务器端的功能

利用WWW服务器端的功能实现Web GIS

    Web Server的产品很多,主要功能是负责接收用户端浏览器发来的请求,然后调用相应的服务功能,最后返回结果。早期的WWW Server功能很简单,只是直接调用预先静态存储的HTML文件返回给用户。后来WWW Server的功能越来越复杂,逐渐演变成为浏览器访问站点内部的相应服务器群的共同关口,WWW Server联合其它的专用服务器来回答浏览器的请求,既分担了负载,又扩展了服务的内容,增加了动态性和灵活性。目前最常见的是数据库服务器与WWW Server的配合使用。由于WWW Server功能的独特性,目前它在与其它服务器的连接上存在一些效率问题,人们正在积极解决和改进。

    由于WWW Server最主要的功能在于应对单位时间内大量客户对页面文件的快速访问和及时反馈,因此一般其它的服务都交给专业服务软件来配合完成,以减轻WWW Server软件的负担。GIS软件也是属于这种专业服务软件之一。

    WWW Server一般都采用成熟的商业产品,目前还很少有定做的。因此在WWW Server和专业服务软件之间一定要存在一个中件,这个中件承担着WWW Server和专业服务软件之间的通讯桥梁的作用。

    早期技术上,这个中件多使用CGI方式(通用网关接口,Common Gateway Interface)。CGI是一种独立存储可执行的程序,加上执行参数后放在HTML页面的标记内,通过浏览器端的点击操作,激活WWW Server端的CGI程序。

    例如,在用户看到的页面内的放大按钮下放置这样一句链接标记:< a href= "http:// www.etak.com /cgi-bin /demoPan ? Command=out& XInc=263 & YInc=213 & Lat=37. 790000 & Lng=-122.410000 & scale=20000">Zoom Out,就可以获取远程指定范围的地图。

    CGI一般通过操作系统的输入输出管道建立WWW Server与GIS服务软件之间的联系。后来还发展了很多中件技术,如WWW服务器专用的API(如ISAPI、NSAPI等),可以较高效率地解决WWW Server与GIS服务软件的信息传递和功能调用。现在由于WWW Server和专业服务软件越来越专业化和多样化,这种中件技术也越来越与双方的服务软件甚至与操作系统紧密结合,中件的效率越来越高,出现了很多新的实现方式。

     WebServer的产品很多,主要功能是负责接收用户端浏览器发来的请求,然后调用相应的服务功能,最后返回结果。

    在实际中,经常把第一种和第二种方式结合起来应用,从客户和服务器两方面着手提高Web GIS的实用性。当WWW服务器与GIS软件或GIS数据建立联系后,能对浏览器做出应答,把GIS数据以某种浏览器能识别的形式反馈回去,实现浏览器对远程地理信息的访问时,这就构成了基本的Web-GIS框架。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多