网络工程SVG技术在WebGIS中的应用研究

上传人:众众****夺宝 文档编号:203777855 上传时间:2023-04-25 格式:DOCX 页数:11 大小:17.98KB
收藏 版权申诉 举报 下载
网络工程SVG技术在WebGIS中的应用研究_第1页
第1页 / 共11页
网络工程SVG技术在WebGIS中的应用研究_第2页
第2页 / 共11页
网络工程SVG技术在WebGIS中的应用研究_第3页
第3页 / 共11页
资源描述:

《网络工程SVG技术在WebGIS中的应用研究》由会员分享,可在线阅读,更多相关《网络工程SVG技术在WebGIS中的应用研究(11页珍藏版)》请在装配图网上搜索。

1、网络工程论文SVG技术在WebGIS中的应用研究简要:摘 要:万维网与地理信息系统GIS的飞速开展,促进了网络地理信息系统(WebGIS)的兴起,Web2.0的出现,更使人们通过网络对空间地理数据的互操作成为了可能。本文针对WebGIS目前所面摘 要:万维网与地理信息系统(GIS)的飞速开展,促进了网络地理信息系统(WebGIS)的兴起,Web2.0的出现,更使人们通过网络对空间地理数据的互操作成为了可能。本文针对WebGIS目前所面临的技术瓶颈,介绍了一种新兴的、开放标准的、基于XML的文本式矢量图形描述语言SVG技术,并在此根底上介绍了GML技术,分析了GML怎样表示空间数据以及用SVG对

2、其进行发布的优点。最后又介绍了XSLT技术,并结合一个具体的GML文档实例,说明了如何运用XSLT实现GML到SVG的转换。关键词:WebGIS,空间数据,XML,电子信息论文发表,SVG1 概述万维网与地理信息系统(GIS)的飞速开展,促进了网络地理信息系统(WebGIS)的兴起,基于XML的SVG技术实现了图形、图像和文字的有机统一。GML为地理信息的互操作提供了一个很好的解决方案。这就为实现WebGIS功能提供了可能。1.1 研究背景Internet的飞速开展,促进了WebGIS的兴起,使人们通过网络获取互操作异构地理数据成为了可能。WebGIS作为万维网与GIS相结合的产物,是利用万维

3、网向用户提供地理空间信息效劳的地理信息系统。SVG由于其具有开放性、文本性、可嵌入多媒体信息以及可参加交互、动画等特点,文件较小、传输速度快、对客户端的软硬件要求不高,以其独特的优势,将是WebGIS适应“社会化GIS的开展和要求、提高自身实际应用能力的关键技术。1.2 研究现状目前,国外已经开发了许多SVG的编辑工具、浏览器和应用系统。更为重要的是,Netscape公司和Microsoft公司也己经开始进军SVG领域,这标志着未来的网络浏览器会内置对SVG文件的支持功能。国内在SVG的编辑、生成工具及应用系统方面都还处于起步阶段。但也出现了SVG编辑生成工具,如方正画苑可将设计结果输出为SV

4、G格式,输出丰富的图形、图像和文字的设计效果。目前国内外对SVG在WebGIS中的应用研究正逐步深入,2 GML与SVG技术在WebGIS应用中,地图数据的显示一般采用两种方式:栅格地图或者矢量地图。显示栅格地图,用户不需安装插件,但不能对图像进行进一步的操作和交互。假设要进行地图缩放、平移和选择等操作,那么要传递鼠标的x,y坐标到效劳器端处理,生成新的栅格图像再传递到客户端显示。SVG是一种常用的且基于XML的矢量图像标准,是一种基于XML描述可容纳矢量图形、点阵图像和文本图像的语言。2.1 GML及其特点地理标记语言(Geography Markup Language)GML是由Open

5、GIS联盟制定的基于XML对地理信息传输和存储的编码标准。利用GML可以存储和发布各种特征的地理信息,并控制地理信息在Web浏览器中的显示。作为实现空间信息的共享与对异构空间信息进行集成以及开放式WebGIS的进一步开展的有力工具,GML有如下特点: GML基于文本表示地理信息。与XML编码类似,也是用文本的方式进行地理信息表示。文本比拟直观,容易理解,编辑,检查和转换。 GML对几何特征及其属性进行编码。GML是基于OGC的地理信息抽象模型,即空间实体特征及属性封装。它用地理实体描述世界。地理特征(Feature)包括一系列的属性和相应的几何信息,一般来说属性由名称、类型和属性值组成,几何信

6、息由根本的几何建模体(如点、线、面、曲线、多边形等)组成。GML可以对很复杂的地理实体进行编码。 GML可对空间参考系统(SRS)进行编码。空间参考系统是地理信息系统数据处理的根底。GML封装了空间地理参考系统及主要的投影关系等,确保了分布式处理的扩展性和灵活性。 GML可以实现地理数据的分布式存储。GML对地理数据的分发是非常便捷的技术,同样可以成为地理数据分布式存储的重要手段,主要的技术工具是XLink和XPointer。 GML可以用公共工具进行浏览和编辑。 GML可以实现与非空间数据的集成2.2 SVG的特点及其技术优势SVG作为网络图形新标准和XML的一种应用,随着WebGIS技术的

7、成熟,SVG可以在基于网络的应用中与其他技术进行有机集成。具有以下特点:基于XML标准;矢量图形和高质量的图像;灵活易用的文件格式;支持交互性;支持Xlink和Xpointer;更好的扩展性;独立性;开放性。3 基于SVG的WebGIS体系结构将SVG用于WebGIS,具有非常重要的意义:一方面对于众多的非专业用户,可方便地通过各种SVG创作编辑工具来组织、发布自己的空间信息,从而使地理信息资源和其他网上资源一样,被整个社会方便地共享,以充分发挥其应有的价值;另一方面,由于SVG的交互动画功能,据此产生的交互地图,展现在客户面前更具有表现力。3.1 地理空间数据的SVG编码SVG定义了六种根本

8、形状,分别为圆、矩形、椭圆、线、折线和多边形,这些根本形状和路径一起,可以组合成任意形状的图像,可以满足GIS系统制图的需要。3.1.1 圆形(circle)一个原点在坐标(100,100),半径为30,以红色为边缘线,蓝色填充的标准圆形。如图3-13.1.2 矩形(rectangle)指定了左上角点坐标(100,100),宽度为200,高度为100,以红色为边缘线,蓝色填充的标准的矩形。如图3-23.1.3 椭圆(ellipse)指定了中心点坐标(150,100),x轴半径长度为100,y轴半径长度为50,以红色为边缘线,蓝色填充的标准的椭圆。如图3-33.1.4 线(line)指定了起始点

9、坐标(50,50),终点坐标(300,50)的红色的标准的直线。如图3-43.1.5 折线 (polyline)指定了起始点坐标(50,100),中间折点坐标(100,150)终点坐标(250,50),以红色表示线形的标准的折线。如图3-53.1.6 多边形 (polygon)指定了起始点坐标(100,100),中间折点坐标分别(50,150),(200,250),(300,200),(230,170)终点坐标(250,50),以红色表示边缘线,以蓝色填充的的标准的多边形。如图3-63.1.7 路径(path)指定了起始点坐标(208,128),中间路径分别以C开头为,以红色表示边缘线,以蓝色

10、填充的的标准的路径。如图3-7C 209 127 208 124 214 125 C 219 125 234 125 241 131 C 248 136 256 150 256 158C 255 165 245 174 237 178 C 229 182 215 185 208 182 C 200 179 194 167 190 160C 185 152 183 143 183 136 C 182 128 181 120 186 115 C 190 109 198 104 211 105C 224 105 253 106 264 118 C 274 129 275 159 273 174 C

11、270 188 258 198 248 203C 237 208 221 209 210 204 C 198 198 188 184 179 171 C 169 157 153 133 151 121C 148 108 155 102 163 97 fill=none stroke=red3.2 系统体系结构将GML和SVG应用在WebGIS中,主要的问题就是如何将GML转化成SVG.。可以先将空间数据转换成GML格式存储,再通过XSLT将GML转换为SVG。目前主流的浏览器IE还不支持SVG的显示,所以要先在IE浏览器上安装SVG图像插件(如SVGViewer),从而实现失量图形的显示。工作

12、原理是客户在浏览器中指定一个请求并发送,请求通过 协议发出,Web效劳器端收到请求后解析并创立一个SQL查询,通过数据访问接口把SQL查询传递到SVG数据库,数据库执行查询并把检索到的数据动态转换成相应的SVG格式和HTML格式的文件返回给客户端,客户端将文件显示在页面上由于客户端接收的SVG是矢量数据,一些根本功能比方地图图层控制、查询、缩放、漫游等可在客户端进行,不需要频繁地向效劳器发送请求,极大地减少网络数据传输量和效劳器的负担。4 SVG技术在WebGIS的应用实现现实中的图形数据多以SHP格式或MIF之类的GIS软件数据格式存储,要充分利用这些数据,在生成SVG图形时,我们就需要将这

13、些数据转换为SVG格式。由于SVG是采用文本语言描述的,所以先要将图形数据装换成GML格式,并根据GML文件编写一套适宜的XSLT样式表,通过JAVA转换程序最终将图形数据转化为SVG格式4.1 XSLT技术简介及其工作原理XSLT(Extensible Stylesheet Language Transformations)即可扩展样式表语言转换,是一种用来转换XML文档结构的语言。它可以将一个XML文档转换成另一个XML文档,还能把XML文档转换成HTML和许多其他基于文本的格式。XSLT把XML文档转换成必需的输出结果,这个过程一般包含两个方面:首先是结构变换。在该变换中数据从传入XML

14、文档的结构被转换成反映所需输出结果的结构,这是转换中的主要的一步它可能涉及选择数据、聚集这些数据、分类这些数据、或执行算术转换等;其次是格式化,在该格式化中新结构按所需的格式得到输出。XSLT依赖于XML语法分析器,无论是DOM语法分析器还是SAX语法分析器,它把XML文档转换成一个树形结构。XSLT所操纵的正是文档的这种树形表示结构,而不是文档本身。XSLT语言是说明性的,它只是描述所需的转换,而并不是提供实现这个转换的过程性指令系列。真正的转换实现那么依赖于XSLT处理器。4.2 GML 几何模型空间几何对象可以归纳为点,线和多边形等几种空间类型。GML通过Geometry schema定

15、义了有关几何根本的图形元素,geometry.xsd提供了点(point),线(line),多边形(polygon),点集(multipoint),线集(multiline)和多边形集(multipolygon)等根本几何图形,甚至是复合类型(plextype)几何图形,都可以直接使用。4.3 SHP文件到GML文件转换根据GML3.0标准中的Schema的描述和SHP文件的格式,就能将SHP文件转换为GML文件。在转换过程中,首先要创立一个GML格式文档,添加GML描述信息,然后循环的将SHP文件中的地理信息元素转换为GML中的几何图元。这里以ESRI公司地理数据文件为例,其数据格式是Sha

16、pefile格式的。一个Shapefile文件包括一个主文件(SHP),存储的是相同几何类型的空间对象;一个索引文件(SHX),供主文件索引使用;一个dBASE文件(DBF),存储的是相应空间对象的非空间属性。我们可以先把这些文件用工具如Fme,ArcSDE或者编程将其导入支持空间操作的数据库中,再由数据库输出GML文档。当然也可以直接读取文件产生GML文档。但前者是建立WebGIS的通用作法。对于其它格式的地理数据,我们也同样可以这样做。下面的这个GML文档 change.gml,是用程序从数据库中输出的。4.4 GML到SVG的转换从GML到SVG的转换需要进行坐标转换和文档映射两局部工作

17、。SVG提供了平移、旋转、伸缩、矩阵变换等几种坐标转换方法。使用XSLT对GML文件转换真正依赖的是XSLT转换器。它们的转换过程,首先是编辑GML和XSLT源文件change.gml和change.xslt,再利用JAVA转换程序生成SVG文件。采用这种转换方法的优点是:修改图形时不需要修改SVG源文件,只需要修改GML文件。4.4. XSLT样式表根据结构分析编写了XSLT表,首先,对于面状数据,将每次读得的坐标串解析给元素path的属性d绘制。但对于坐标串,起始点前加上M,而后的每一对坐标,前面加上L,最后的一对坐标的后面加上Z结束。利用XSLT中的concat函数经过这样的处理后,再将

18、整个坐标串赋给d。对于点状数据,那么是将其在GML文档中所包含的坐标串解析给SVG中的Circle元素,而x、y坐标那么分别以变量的形式赋予Circle元素的cx和cy属性,并为Circle元素的半径r属性赋一个较小的值,这就表示可以绘出点对象。对于线状数据,我可以采用和面状数据一样的方式将坐标串解析给元素的path属性d绘制,我们所进行的转换中只考虑了空间数据不考虑属性数据,因为这里我们关心的只是最终的SVG图。4.4.2 转换程序本文用Eclipse进行JAVA程序的编写以及运行,相比命令行编辑而言,集成开发环境Eclipse使用更简洁有效,他可以直接进行编辑运行,并能提示编译中的错误。有

19、了XSLT样式表change.xslt编译好了的转换程序trans.java,就可以根据GML 文档change.gml生成相应的svg文件change.svg。最后在浏览器翻开change.svg,便可以看到最终的SVG图。5 地图交互功能实现地图控制是电子地图最根本的功能,包括地图显示、地图缩放、漫游、图层控制、鹰眼漫游等功能,这些交互功能需要在客户端完成。SVG本身提供了对DOM和Script的较完善的支持,因此可以使用Javascript编程来实现地图的交互功能。5.1缩放功能Adobe的SVGViewer本身提供了图形的缩放功能,但是要通过鼠标右键菜单才能实现,且功能较为单一,不直观

20、也不方便。我们设计一个界面用来实现对地图的缩小、放大功能。放大、缩小、平移都是对整个SVG图形对象进行操作。点击地图,获取坐标值,以当前点击的点为中心,利用currentScale变量进行图形的放大和缩小变化。5.2图层控制SVG采用基于XML的DOM文档管理结构,很方便实现层次管理,其组对象就可以将所有图形管理起来,一个组中存储一个专题图层,每个组都有一个唯一标志ID属性,根据这个ID属性就可以通过JavaScript控制图层的显示与否。5.3 地图漫游地图漫游功能,点击界面中的地图漫游按钮,用鼠标在原图上进行拖拽,可实现地图的上下左右的定向漫游,在右侧的小地图上也可以看到拖拽后的漫游效果。

21、5.4 拉框缩放拉框缩放功能的实现分为两步:首先创立矩形对象,并把矩形元素参加到SVG对象中,鼠标移动时动态获取矩形框的末坐标并划线,实现跟随鼠标移动拉框,然后根据拉框的大小和拉框矩形的中心点对地图进行缩放和平移操作。5.5 测量距离当图形中点的坐标捕获到时,测量两点之间的距离就很容易实现了,只需要编写一个函数实现两点之间距离的数学函数式,就可以得到图形上的距离,如果要获得地物之间的实际距离,还需要除以比例尺。5.6 地图复位不管前面把地图放大了多少倍,漫游到了地图的任何一个小角落,都可以让地图回复到最原始的地图大小状态,将所有内容以适合的比例显示到当前地图窗口中。5.7 鹰眼漫游鹰眼功能就是

22、实现鹰眼SVG对象和地图SVG对象之间的联动,关键点是判断两个SVG对象进行联动的数学关系。在鹰眼中,地图只是作为参考,是不移动的,移动的是红线层。地图进行移动、缩放等操作时,根据两个地图对象的数学关系进行联动操作。结论GML和SVG是开发WebGIS的强有力的工具。将SVG和GML应用于WebGIS有利于地理空间信息的存储、传输和发布,克服了一些原有WebGIS中存在的问题,如异构、分布空间数据的存储及失量数据的传输和显示等问题。GML可以实现异构空间数据的存储,是解决网络上多数据格式空间数据的一个有力方法,同时GML又实现了数据描述与表现的别离,GML可以只描述数据,表现方式可以通过其它方

23、式实现,如SVG。SVG着重在于二维矢量图形的表现,可以通过转换将G M L存储的信息清晰、完整的表现在浏览器上。两者的结合使WebGIS的功能更加丰富,开发更加简单,实现更加容易。参考文献1MIT.LatestSVGFullEB/OL. :/ w3.org/TR/SVG12,2022:03.2 刘兴权,田磊,吴涛.SVG技术在WebGIS中的应用J.地理空间信息,2022,7(2).3 肖昕.SVG的开展与应用J.计算机系统应用.2022,11:3437.4 李威.基于GML/SVG的WebGIS构建:D.河南:河海大学地图学地理信息系统,20225 简友光,李岩基于SVG+GML的空间信息发布的方法研究J.计算机与数字工程,2022,34(1)6 许春杰,邹乐君.SVG、GML在WebGIS中的应用J.GIS技术,2022(3):3842.

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!