- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于开源Leaflet的WebGIS客户端设计与实现
摘 要:Leaflet是一个开源的地图Javascript库,具备界面友好、互操作性强、支持移动设备等特点,支持OGC的WMS/WFS/WCS标准,提供了数百个第三方插件扩展地图功能,是进行开源WebGIS客户端开发的最佳选择。文章介绍了WebGIS体系结构和关键技术与规范,并结合实例重点介绍了Leaflet的特点具体应用。
关键词:开源;WebGIS;Leaflet;GeoJSON
1 概述
近年来,随着计算机技术、互联网技术、数据库技术等技术的不断发展,GIS技术开始面向传统行业和广大民众,WebGIS出现并迅速发展[1]。因为采用B/S(浏览器/服?掌鳎┓绞酱罱ǎ?并具有响应快速、交互式、分布式、动态性等特点,实现了在互联网上实现地理信息服务共享,是GIS发展的必然趋势。人们可以在网络上的任意一个节点,通过浏览器无缝访问来自多个WebGIS服务器发布的空间数据,并使用来自多个服务器节点提供的服务。这使得WebGIS真正成为大众的工具,贴合人们的生活,利用空间信息更好的为人们服务,如谷歌地图、百度地图等,已经成为人们日常出行不可缺少的一部分。
基于WebGIS的商业平台和OGC开放式地理数据互操作规范的开源框架越来越多,但是对于个人用户和中小企业,如果使用商业WebGIS平台,就必须使用其相关的数据处理工具、制图工具、空间数据库管理工具以及数据服务发布工具等一系列商业软件,需要支付高昂的费用,让人难以接受。因此,基于开源框架的WebGIS平台成为中小企业以及科研工作者的首选,并涌现出Openlayers和Leaflet等客户端平台。本文选择Leaflet作为WebGIS客户端的开发框架,Leaflet是一套界面友好、互操作性强、支持移动设备的JavaScript开源地图库,具有简便、高效、可用性强等特点,具备开发者用到的所有地图功能[2]。
2 WebGIS的体系结构
一般来说,WebGIS的体系结构至少包括三个部分:数据源,Web服务器,客户端,如图1所示[3]。
2.1 数据源
数据源用户管理和处理各种数据,包括文件类型数据和空间数据,以及地图切片数据,可采用商业数据库如Oracle、SQL Server等,也可采用开源数据库MySQL和PostGIS等。系统会使用多台物理计算机来存储和更新数据、处理数据,并加工地图,并定期对数据进行备份,为Web服务器提供强大数据支撑。
2.2 Web服务器
基于OGC规范的Web服务器是系统的核心部分,用于创建基于OGC的WMS、WFS和WCS规范的Web服务服务。Web服务器要求性能要好、处理速度要快,从而快速处理地图服务等各种服务。当前主流的WebGIS都是用JavaScript直接访问Web服务,JavaScript是直接在浏览器上运行,可以直接访问Web服务并返回结果。
2.3 客户端
客户端是支持WebGIS的各种浏览器,浏览器通过网络连接到Web服务器发布的空间服务,并依赖这些服务来获取地图数据、查询、分析、统计、定位等功能,从而以可视化的形式为用户展示地图、文字、表格、统计图和视频等综合信息。
3 WebGIS规范和技术
3.1 OGC规范
OGC的主旨是在分布式环境下实现地理空间数据和地理信息处理资源的共享,允许用户通过网络实时的获取不同系统的地理信息[4]。OGC根据W3C的Web服务发布了WMS(Web Map Service,Web地图服务),WFS(Web Feature Service,Web要素服务)和WCS(Web Coverage Service,地图覆盖服务)等规范,从而实现了矢量数据和影像数据的共享。
WMS定义了GetCapabilities(用于返回服务级元数据),GetMap(用于返回地图影像),GetFeatureInfo(用于返回显示在地图上的某些特殊地理要素信息)等3种操作。能够根据用户的请求返回相应的地图,地图的形式包括PNG、GIF、JPEG等。
WFS定义了插入、更新、删除、检索和发现地理要素的服务,其中GetCapabilities用于返回服务级元数据。DescribeFeatureType用于返回要素结构,进而可以进行查询等操作。
GetFeature是很重要的接口,它可根据查询要求返回一个符合GML规范的数据文档。WFS支持根据属性条件进行查询,支持根据空间关系进行查询,并支持属性条件和空间关系的复合查询。
WCS根据客户端请求返回影像等多种数据。包含GetCapabilities,GetCoverage等重要操作。其中GetCapabilities返
文档评论(0)