栅格地图技术与VML融合的WebGIS研究

更新时间:2023-05-15 16:56:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

栅格地图技术与VML融合的WebGIS研究

682009,45(13)ComputerEngineeringandApplications计算机工程与应用

研发、设计、测试◎

栅格地图技术与VML融合的WebGIS研究

杨海东1,向华2YANGHai-dong1,XIANGHua2

广州5106411.华南理工大学自动化科学与工程学院,

广州5105332.亿阳信通,

1.SchoolofAutomationScienceandEngineering,SouthChinaUniversityofTechnology,Guangzhou510641,China2.BrightOceansCorporation,Guangzhou510533,ChinaE-mail:hdyang@

YANGHai-dong,puter

(13):EngineeringandApplications,2009,4568-71.Abstract:Thepaperpresentsasolutiontoovercomesuchshortcomingsaslowresponsespeedetc.ofWebGISapplication

(VML)systems,basedonhybridtechnologywhichcombinesthegridmaptechnologywithVectorMarkupLanguage.Explorehow

toexerttheiradvantagestoconstructanenterprise-application-orientedWebGISsystemindetails,anddiscussthekeytechnologiesofWebGISsuchasthesystemarchitecturedesign,dataconversionandstorage,gridmapproduction,developmentkitetc.Furthermore,applysuchWebGIStechnologyinthesystemofthewaterpollutionmonitoringandemergencyresponseinFoshancity,whichobtainsgoodeffect.

(VML);Keywords:gridmaptechnology;vectormaptechnology;VectorMarkupLanguageWebGIS摘要:融合栅格地图技术与矢量标记语言(VML)来解决目前WebGIS应用中存在的响应速度慢等不足,主要研究如何充分发挥

二者的优点,构建一个面向企业应用的WebGIS系统,探讨了系统架构设计、栅格地图制作、开发包等WebGIS的数据转换和存储、关键技术。最后,将栅格地图技术与VML融合的WebGIS应用到佛山市水污染监控与应急反应系统中,取得良好的效果。关键词:栅格地图技术;矢量地图技术;矢量标记语言;WebGIS

文章编号:(2009)文献标识码:中图分类号:DOI:10.3778/j.issn.1002-8331.2009.13.0201002-833113-0068-04ATP393

1引言

随着计算机网络技术的迅速发展,基于Internet的

WebGIS是下阶段GIS发展的主流之一。相对于传统的基于桌面客户端GIS而言,集中部署、跨平台WebGIS具有资源共享、和互操作等优点,并已逐渐成为国内外GIS软件开发商和新型网络服务提供商的研究焦点[1-2]。

目前满足企业应用的WebGIS主要是在传统的矢量GIS基础上构建地图服务器,根据浏览器的请求动态生成图片并发送回浏览器端。这种基于矢量地图的WebGIS虽然功能强大,但是服务器的响应速度非常缓慢,用户感受差[3]。随后,国内外研究者开发了基于栅格地图的WebGIS,提高了响应速度,但是

在表达区域和这种WebGIS只能用于地图和点状地物的表达,

[4-5]

空间呈现方面存在不足。因此,非常有必要研究一种具有性能和应用优势的WebGIS。本文基于栅格地图技术与VML的优点,将二者融合起来,构建一个满足企业应用的WebGIS。

2栅格地图技术和VML

2.1栅格地图技术

栅格地图技术是基于HTML的一种GIS表达方式。在WebGIS中采用栅格地图技术,将地图按照缩放级别分类切割并组织成静态的栅格图片,与业务相关的地物信息保存在服务端的数据库中,呈现时业务地物以图标的方式覆盖在地图上;在客户端上则利用Ajax、JavaScript等新型Web技术与服务端客户端进行数据交互。当客户端进行地图缩放和平移操作时,先计算需要的具体图片,再向服务端提交请求,服务端仅将请求的图片返回给客户端,不需要作其他计算,因为客户端采用图片缓存技术,需要传输的图片也大大减少,网络负荷也大大降低,响应效率大大提高。WebGIS利用栅格地图技术实现了地图的预生成,不需要地图服务器做实时计算,能够大幅度地提高地图的传输速度。

基金项目:中国博士后科学基金(ChinesePostdoctoralScienceFoundationNo.20060400752);高等院校博士学科点专项科研基金(theChinaSpe-

);广东省工业科技攻关计划项目cializedResearchFundfortheDoctoralProgramofHigherEducationunderGrantNo.20070561081)。(GuangdongProvinceIndustryTechnologyTacklingProjectNo.2007B010200046

作者简介:杨海东(1973-),男,博士后,主要研究方向为WebGIS;向华(1979-)男,学士,主要研究方向为GIS。收稿日期:2008-09-23

修回日期:2008-11-14

栅格地图技术与VML融合的WebGIS研究

杨海东,向华:栅格地图技术与VML融合的WebGIS研究2009,45(13)69

2.2VML

(VectorMarkupLanguage)是一个最初由Microsoft开VML

由于XML是公认的拥有无穷生命力的下一代发的XML词表。

网络标记语言,VML具有先天的优势[6]。VML是HTML在WEB

图形绘制上的补充和完善。VML支持高质量的矢量图形显示和广泛的矢量图形特征,可以较好地解决WebGIS中存在的矢量地图处理等问题。VML使用简单的文本形式的XML语言来表示图形,由文本构成的图像,这样就可用很少的字节来表示比较复杂的图像。在VML中使用两个基本的元素:shape和group。这两个元素定义了VML的全部结构;shape描述一个矢这样它们可量图形元素,而group用来将这些图形结合起来,以作为一个整体进行处理。

通过在HTML中声明VML命名空间VML与HTML兼容,

和处理函数,就可以和其他HTML元素一样使用VML元素,在客户端浏览器显示图像。VML标记里面可以定义DHTML大部分属性和事件,比如说id,name,title,onmouseover等等。VML的功能不只是绘图,它还可以在图形中嵌入文本,并可实现超链,还可通过脚本语言实现一定的动画功能。

(3)应用层主要提供对各种空间数据的呈现。应用层调用WebGIS开发包和业务层提供的可识别的空间数据,通过WebGIS开发包的相关应用接口在WebGIS上呈现相关的数据

和各种空间效果。

Á

图1WebGIS的系统结构

2.3栅格地图技术与VML融合

栅格地图技术和VML在语言上遵循了相关的HTML规范和标准,遵循了W3C的统一标准,在描述和结构方式上都相同。所以基于HTML的栅格地图技术和VML的各种元素可以互相嵌套,并且相关的属性描述都一致,例如id、name等属性;对于样式表达都能够使用css进行描述;在对于客户端响应控制方面也是使用相同的规则,利用onmousemove、onclick等客户端事件响应;在对各种元素的操作上,都可以使用Javascript语言进行控制和操作;同时都是基于DOM树,栅格地图和

VML在编程操作上也有很好的兼容性。

因此,栅格地图技术和VML的融合上首先在技术上和兼容性上能够有效地进行融合,并且由于结构的相同和功能上互补性,两者的融合能够更大地增强WebGIS的功能和可复用程度、应用范围。例如:在WebGIS中公共地物的地图表达上,采用栅格地图格式按照分级缩放组织存储,并在浏览器端采用栅格图片缓存技术,降低服务器计算负荷和网络负荷,提高响应采用VML实现矢量呈现,从速度。在涉及业务的地物表达上,

而保持WebGIS强大的空间数据分析能力[7-8]。

4关键技术实现

4.1数据转换和存储

(1)数据转换。在数据转换工具中,通过各个厂家提供的读入对应格式的矢量地图数据,然后进行地图数据提取SDK,

和个性化存储,图2是数据转换的步骤。

选择外部矢量文件

矢量图

类型

通过厂家SDK读取文件

读取图层数据

读取层中的地物信息到内存表

保存个性化数据

选择数据保存的方式

层是否读取完毕

图2数据转换流程图

步骤1选择厂商提供的矢量地图文件;步骤2系统识别矢量图形类型;

步骤3系统根据矢量图形类型调用匹配的厂家SDK读取矢量数据到内存中;

步骤4系统循环读取矢量图形数据的各个图层和各个图层中的空间数据,根据空间数据的类型(点、线、面)进行读取;

步骤5根据读取出来的图层信息、空间数据基本信息、空间数据类型按照规范的格式进行标准化;

步骤6根据选择的系统存储介质类型进行规范数据的创建和存储。

(2)空间数据的提取和存储。由于不同的厂家所提供的矢量地理信息在存储格式、存储方式和描述上都存在一定的差异,在应用上没有一个统一的规范,以往的WebGIS大都利用厂家所提供的二次开发组件进行数据的提取,这样存在规范和数据上的不同,无法达到相关的通用性。为了实现一个通用的平台,需要使用统一的格式对空间数据进行描述和表达,以达到软件的兼容性,并且相关的空间数据的描述必须遵循Web应用的通用标准,方便进行不同开发环境数据的提取和操作。

在文中WebGIS的开发过程中利用不同开发厂商提供的

3架构设计

基于栅格地图技术和VML融合的WebGIS在架构设计上

首先要考虑与企业应用系统的结合。整个架构包含数据层、业务层和应用层等三层,如图1所示。

(1)数据层主要提供对WebGIS应用的基础数据和基础文件,其中包含了数据转换工具和栅格地图制作工具。数据转换工具通过各个厂商提供的SDK和矢量地图数据,从矢量地图中提取空间数据,并按照通用的格式存储到WebGIS应用的数据介质(数据库或者XML文件等)中;栅格地图制作工具主要针对厂家提供的矢量数据进行地图的生成、分割和保存成栅格地图。

(2)业务层是对空间数据业务进行封装。业务层根据提取出来的空间数据和WebGIS应用的实际需要实现的功能,进行封装、管理和数据分析等功能,并提供上层应数据业务的解析、用的数据接口。

栅格地图技术与VML融合的WebGIS研究

702009,45(13)

ComputerEngineeringandApplications计算机工程与应用

(2)矢量地图的栅格化。矢量地图转换为栅格地图按如下步骤进行。

步骤1通过各个厂家提供的地图制作工具,对矢量地图的呈现进行美化和设计;

步骤2把制作好的地图进行加载;

步骤3根据分割算法计算出每个栅格块的图形范围;步骤4根据图形的范围从矢量图形中提取出相应的图片和命名规则,输出到设定的存储路径。

二次开发SDK,通过统一的接口和格式进行提取和存储,在存储上也根据WebGIS的应用情况,通过大型数据库或者XML文件等形式进行存储和数据提取。在空间数据的存储上使用标

准的XML进行描述,存储的格式描述如下:

<Name>地物名称</Name><Type>类型</Type><Points>

<Point>

<X>116.715</X><Y>40.25</Y></Point></Points>

4.3WebGIS开发包

WebGIS开发包是应用层进行GIS呈现的核心基础API。

开发包中包含了地图控制接口、数据读取接口、事件控制接口客户端通过引用开发包的API接口进行GIS的呈现和应用等。开发。空间数据WebGIS开发包集成了在客户端进行地图呈现、呈现、数据运算的一系列功能。在具体的开发和设计上利用分布式计算的原理,将WebGIS呈现的计算分布到了各个客户端,并利用Web的缓存和Ajax等技术降低客户端访问的流量,有效地降低了对服务器端依赖。在客户端API的设计上主要分为3层:核心对象层、地图绘制容器层、如图4API控制层,所示。

4.2栅格地图制作

采用栅格地图技术的WebGIS最具性能优势的特点是进行地图的预生成和栅格化读取。而栅格地图制作的功能就是把

厂家提供的矢量地图进行图形的预生成和栅格化,并且进行格其步骤是:首式化存储,以提供给各个客户端进行地图的读取。

先通过厂家提供的地图制作工具进行地图的美化和制作;然后通过栅格地图制作工具进行矢量地图读取,计算需要生成的栅格图片的切割点和切割范围;然后按照预定义的规则进行图片的切割和存储。

(1)栅格地图切图的计算原理和存储的规则。①栅格地图的放大是2倍关系,例如第一层瓦片数目为1,第二层为4,以此类推,计算出所有层级的瓦片数量。每层栅格图片的名称必须按照固定的算法进行存储和放置,例如以行和列进行命名0-1,0-2。②根据瓦片的数量和位置关系,对整图进行等分切割,并输出到指定的文件路径。

例如,将一个地图切割成两级的WebGIS栅格图形。步骤首先确定地图的四个角的坐标,形成一个地图的范围。步骤1:

根据计算出的该地图需要分成的等份,计算每个栅格的坐标2:

进行等分。如图3所示。

图4客户端API的层次结构

(a)(b)

(1)核心对象层主要实现对GIS所使用到的相关模型的抽

象,在客户端可以通过核心对象表示WebGIS中的相关概念。包括:Point对象、Zoom对象、Marker对象、Line对象、Sharp对象、Tile对象等。

(2)地图绘制容器是在地图绘制上对各种不同对象呈现容器的划分。在WebGIS的呈现过程中,主要是栅格地图、点状地物以及矢量图形的呈现和控制。在地图绘制的过程中,不同的对象在呈现方式、计算和绘制方式上是有概念上的区别的;栅格地图主要是HTML的Image对象构成,而点状地物对象是

(Icon+Shawdown+InfoWindow)对象的呈现容器,由ImageMarker

对象和普通的Div构成;必须由VML的VML矢量对象的绘制,

画布容器来进行承载,在栅格地图上进行图形的叠加操作,形成对矢量地图的呈现。为了把VML容器无缝地嵌入到普通的

在开发中必须申明对VML对象的引用,并且把HTML对象中,

VML的容器加入到HTML对象树中。下面就是具体的实现方式。

<styletype="text/css">

(#default#VML)}v\

:*

{behavior:url

HTMLCode+=’<v:groupid="draw_sharp’"style="transparent:true;position:absolute;z-index:150;"coordorigin="-500000000,-;500000000"coordsize="1000000000,1000000000"></v:group>’

(c)

图3

地图切割示例

this.container.innerHTML+=HTMLCode;

当客户端自定义的各种事件触发的时候,首先是通过事件

栅格地图技术与VML融合的WebGIS研究

杨海东,向华:栅格地图技术与VML融合的WebGIS研究

响应控制器进行捕捉,对客户端的事件进行翻译,形成WebGIS的自定义事件,接着通知图形绘制控制器接收相关的自定义图形控制器首先判断事件所引起的变化,如果是存GIS事件;

在数据上的交互,则通过数据读取控制器读取相关的控件数据并进行计算,最后把计算的结果反馈到地图绘制容器,由地图绘制容器分别进行相关图形的绘制工作。

2009,45(13

)71

事故的应急救援中也能提供强有力的决策支持。突发性水污染事故模拟应急处理能够借助WebGIS反映水污染状况及其随时间的变化过程,直观地表达事发地及其污染水体的地理位置和空间变化情况。通过该模块能够提供对事故发生地点周边救援资源情况和应急预案的查看,给救援工作提供有效的信息手段。如图7、图8所示。

5应用实例

栅格地图技术与VML融合的WebGIS,开发了一个应用实

例:基于WebGIS的佛山水污染监控管理与应急反应系统。系

统不但实现了基本的GIS功能如放大、缩小、漫游、点选查询、量算距离、量算面积、图层控制,而且也实现了污染源定位和检索、重点污染源专题分布、突发性水污染事故模拟与应急处理等。

(1)污染源定位和检索

该模块实现了污染源信息的查询和定位功能,能够对空间数据进行快速的检索,并在WebGIS上进行呈现。其中WebGIS提供了定位、地图漫游、鹰眼、地图缩放和信息查看功能,如图5所示。

图7

水污染随河流变化情况

图8救援资源的分布情况

6结束语

(1)本文研究的WebGIS采用栅格与矢量相结合的空间数

据表达和呈现方式,既能解决纯矢量GIS的效率问题,又能克

图5

地理信息定位和检索

服纯栅格GIS地物表达能力弱的缺点。在纯矢量WebGIS中,只要客户端对地图有缩放、平移和图层加载操作,均会向服务端请求,服务端根据请求重新生成图片,发送到客户端,造成服务器端负荷高,网络传输数据量大。而栅格WebGIS采用分级缩放,图片已切割和组织好存储在服务器端,当客户端对地图有缩放和平移操作时,客户端先计算需要的具体图片,再向服务端提交请求,服务端仅将请求的图片返回给客户端,不需要作其他计算,因为客户端采用图片缓存技术,需要传输的图片也大大减少,网络负荷也大大降低,响应效率大大提高。但栅格多边形等地物表达能力弱,本文研究的WebGISWebGIS对线、

通过VML/SVG在浏览器端生成矢量图形,因而表达能力大大性能和功能得到平衡。增强。因此综合了栅格和VML的优点,

(2)采用Javascript和VML作为WebGIS中的SDK的开发

语言,全面实现了跨平台和互操作。Javascript包统一部署在服务器端,通过客户请求下载到客户端,在浏览器上执行,Javascript可以在任何浏览器中执行,包括IE、Apache、

后台服务器不受局FireWorks等。Javascript嵌入在HTML中,

限,可以是Tomcat、开发语言可以是JSP、Weblogic、IIS等,ASP或PHP。真正实现了一次开发,随处可用。

(3)采用了多种设计模式,充分吸收传统GIS和新型WebGIS

模型的优点,进行改进和优化,从而使WebGIS的可扩展性大大增强。在对外开放的接口,采用分级封装的原则,基本功能均

(下转89页)

(2)重点污染源专题分布

该模块实现了对佛山各种重点污染源地理位置分布、污染源检测信息走势和污染源检测信息查看的功能,通过WebGIS可以直观地反映出各个污染源检测统计情况和该污染源对周边的影响程度,如图6所示。

图6

重点污染源专题分布

(3)突发性水污染事故模拟与应急处理

突发性水污染事故的发展瞬息万变,必须及时有效地控制事态发展,遏制事故快速蔓延,避免大范围的停水、人群中毒和

能够在突发性水污染事故生态破坏。通过该模块的模拟功能,

发生的时候经过科学计算,模拟出该事故在各个时间维度对人民生活和工业生产等造成的影响范围和深度,在突发性水污染

栅格地图技术与VML融合的WebGIS研究

林祝亮:无线传感网络覆盖的多步长粒子群优化研究2009,45(13)

89

图1(a)粒子群算法传感

节点布局图1(b)多步长粒子群算法传感

节点布局

(c)粒子群算法收敛曲线图1

图1(d)多步长粒子群算法

收敛曲线

无线传感网络的覆盖优化过程中,多步长粒子群算法比粒子群算法具有更好的优化效果。

Currentresult[C]//The13thsensornetworkforremotesurveillance:

lSymponAeroSenseConference,Orlando,USA,1999.AnnualInt’

王晟,马俊杰,等.无线传感网络移动节点位置并行微粒群优[3]王雪,

化策略[J].计算机学报,(4):2007,30563-568.

[4]KumarS,TenHL,BaloghJ.Onk2coverageinamostlysleeping

lConferenceMobilesensornetwork[C]//Proc10thAnnualInt’

ComputingandNetworking.NewYork:ACMPress,2004:144-158.[5]WangXue,WangSheng,MaJun-Jie.Animprovedco-evolutionary

particleswarmoptimizationforwirelesssensornetworkswith(7):dynamicdeployment[J].Sensors,2007354-370.

[6]LiS,XuC,PanY.Sensordeploymentoptimizationfordetecing

maneuveringtargets[C]//7thInternationConferenceonInformationFusion.Piscataway,NJ,USA:IEEEPress,2005:1629-1635.余玲.一种改进的微粒群算法———多步长微粒群算法[J].机械[7]刘康,

设计,(7):2004,2124-26.程,(6):2005,3014-17.

电子科技[3]廖峻.基于J2ME的矢量地图浏览器研究与开发[D].成都:

大学,2004.

马范援.矢量地图在嵌入式GIS系统上的高速显示研究[J].[4]许成钢,

微型电脑应用,(9):2005,213-7.

张继贤,林宗坚.数字栅格地图的制作[J].测绘科学,[5]洪钢,2000:25(9):44-50.

南京理工大学,[6]邹修明.栅格地图矢量化关键技术研究[D].南京:

2001.

纪俊.GIS中间件的设计模式研究[J].测绘信息与工程,[7]张在荣,2004,

(4):2923-26.

钟耳顺,王尔琪.WebGIS-基于Internet的地理信息系统[J].[8]宋关福,

中国图象图形学报,(3):1998,3251-254.

[3]UngarLY,AmblerT.Economicsofbuilt-inself-test[J].IEEEDe-

sign&TestofComputer,2001-09-10:70-80.

[4]KrsticA,ChenLi,LaiWei-Cheng,etal.Embeddedsoftware-based

self-testforprogrammablecore-baseddesigns[J].IEEEDesign&(4):TestofComputer,2002,1918-27.

[5]PapachristouCA,MartinF,NouraniM.Microprocessorbasedtest-

ingforcore-basedsystemonchip[C]//ProceedingofDesignandAutomatonConference,1999:586-591.

[6]WangDanghui,FanXiaoya,GaoDeyuan.Microprocessorbasedself

scheduleandparallelBISTforsystem-on-a-chip[C]//nternationalConferenceonEmbeddedSystemandSoftware,Xi’an,China,2005,12:299-307.

[7]JasA,inganembeddeprocessorforefficientdeter-

ministictestingofSystems-on-a-chip[C]//InternationalConferenceonComputerDesign,1999:418-423.

5结论

无线传感网络覆盖优化有利于提高网络有效覆盖率,延长

网络寿命。提出的多步长粒子群覆盖优化策略,利用远、中、近不同步长的搜索个体来进行粒子更新,有效地兼顾了全局搜索能力和局部搜索能力的平衡,提高了网络的覆盖率和算法收敛速度。仿真实验表明,多步长粒子群算法比粒子群算法具有更好的覆盖优化性能,表现出良好的全局和局部优化能力。

参考文献:

陈剑,常桂然,等.无线传感器网络中基于遗传算法的优化覆[1]贾杰,

盖机制[J].控制与决策,(11):2007,221289-1292.

[2]BurneRA,BuczakAL,JinYC.Aself-organizing,cooperative

(上接71页)

封装为工具控件,对于高级用户,可调用底层接口实现复杂的功能;对于初级用户,仅仅需要几行代码即可完成基本功能,调用方便快捷。

(4)空间数据格式上,支持对主流GIS的矢量空间数据转换,同时可利用扫描图片、卫星图片等资源构建GIS,因此资源共享能力强,同时具备了3DGIS的功能基础。

参考文献:

上海海[1]秦正田.GIS/GSM/GPS信息处理技术及其应用研究[D].上海:

运学院,2002.

金淑英.高精度数字栅格地图的制作方法[J].测绘信息与工[2]张晓东,

(上接83页)

芯片测试主控制器的需求,对内嵌微处理器的结构进行改进,增加了测试数据专用接口,采用在微程序控制下的DMA方式进行测试设备与被测芯片之间的数据交互;设计了专用的测试数据解压缩电路,以减小测试设备和被测芯片之间数据通信量,降低对测试设备数据传输带宽的需求。综合和仿真结果表明在不显著增加电路面积开销和没有引入性能开销的情况下,提出的结构可以很好地完成任务。

参考文献:

[1]MooreG.VLSI:somefundamentalchanges[J].IEEESpectrum,1979,

(4)16.

[2]InternationalRoadmapCommittee.Theinternationaltechnology

roadmapforsemiconductors2006editionexecutivesummary[R/OL].2006.http:///Files/2006ITRS/Home2006.htm.

本文来源:https://www.bwwdw.com/article/a9y4.html

Top