SuperMap iClient for classic已经实现对接WFS服务,可以对WFS进行查询并展示出查询的结果,但是官网范例中,目前没有关于MapboxGL客户端的示例,在此文章中将简单介绍iClient for MapboxGL如何实现WFS查询功能。

前期准备

  1. WFS服务地址,此次使用的地址是SuperMap官方的wfs服务地址:“http://support.supermap.com.cn:8090/iserver/services/data-world/wfs100”;
  2. 引用的js文件有include-mapboxgl.js,jquery.min.js和SuperMap-8.1.1-17226.js;

成果截图

图中红框内的小圆圈是定位在北京的查询结果,此次的查询范例实现的是根据SMID查询北京所在位置的功能。

主要代码实现过程

function loadWFS(){$.ajax({url:' http://support.supermap.com.cn:8090/iserver/services/data-world/wfs100',type:'POST',contentType: 'text/plain;charset=UTF-8', // 这里必须设置,否则会默认以form表单数据进行发送 traditional: true, data: '<wfs:GetFeature xmlns:wfs="http://www.opengis.net/wfs" service="WFS" version="1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opengis.net/wfs http://schemas.opengis.net/wfs/1.0.0/WFS-transaction.xsd">'+'<wfs:Query typeName="World:capital" xmlns:World="http://www.supermap.com/World">'+'<wfs:PropertyName>SMY,SMX,SMUSERID,SMLIBTILEID,SMID,SMGEOMETRYSIZE,COUNTRY,CAP_POP,CAPITAL,the_geom</wfs:PropertyName>'+'<ogc:Filter xmlns:ogc="http://www.opengis.net/ogc">'+'<ogc:PropertyIsEqualTo xmlns:ogc="http://www.opengis.net/ogc">'+'<ogc:PropertyName>SMID</ogc:PropertyName>'+'<ogc:Literal>170</ogc:Literal>'+'</ogc:PropertyIsEqualTo>'+'</ogc:Filter>'+'</wfs:Query>'+'</wfs:GetFeature>',success:loadWFSHandler,error:function (rst) {console.log('request error.')}})function loadWFSHandler(gmlString){var GMLFormat= new SuperMap.Format.GML().read(gmlString);//读取GML格式的数据var geoJsonString = new SuperMap.Format.GeoJSON().write(GMLFormat,false);//将GML格式的数据写成GeoJSON格式var point=JSON.parse(geoJsonString);//解析GeoJSON格式的数据为JavaScript对象map.addSource('point', { type: 'geojson', data: point });map.addLayer({'id': 'pointlayer','type': 'circle','source': "point",'paint': {"circle-radius": 6,"circle-color": "#FF3030","circle-opacity": 0.6,"circle-stroke-width": 2,"circle-stroke-color": "#FF0000","circle-stroke-opacity": 0.8}});}

ogc:Filter的过滤参数用来设置查询限制条件,空间的或非空间的限制条件都可以进行设置,可用来限制 GetFeature 操作的结果,即要素结果集。本次示例中使用的是PropertyIsEqualTo,即PropertyName字段的值等于Literal的情况。

小结

本次范例的演示只是基于WFS的查询功能,对于WFS来说可以做到增删改查的功能,基于本范例的代码稍作更改可以实现。

SuperMap iClient for MapboxGL 实现WFS查询功能相关推荐

  1. SuperMap iClient for Leaflet实现WFS查询功能

    SuperMap iClient for classic已经实现对接WFS服务,可以对WFS进行查询并展示出查询的结果,但是官网范例中,目前没有关于Leaflet客户端的示例,在此文章中将简单介绍iC ...

  2. SuperMap iClient for Openlayers 实现WFS查询功能

    SuperMap iClient for classic已经实现对接WFS服务,可以对WFS进行查询并展示出查询的结果,但是官网范例中,目前没有关于Openlayers客户端的示例,在此文章中将简单介 ...

  3. 在SuperMap iClient 9D for MapboxGL中使用ECharts和MapV

    作者: MR. SuperMap iClient 9D 是云GIS网络客户端开发平台.基于现代Web技术栈全新构建,是SuperMap云四驾马车和在线GIS平台系列产品的统一JS客户端.集成了领先的开 ...

  4. SuperMap iClient 9D for MapboxGL地图风格浅析

    作者:dominating ###前言 随着SuperMap iServer 9D的发布,iServer增加了许多的新功能,其中之一就是地图服务模块,矢量切片(tileFeature)资源增加了支持 ...

  5. SuperMap iClient for JavaScript 实现拖动半径进行距离查询

    作者:sniper 前一段时间有很多朋友问我,怎么用SuperMap iClient for JavaScript实现类似百度地图或高德地图那样拖动一个按钮选择半径,从而查询附近的地理要素.因此,我们 ...

  6. SuperMap iClient for Leaflet对EPSG:4509图加载滑动查询

    作者:John SuperMap iClient for Leaflet对EPSG:4509地图加载&滑动查询 在WebGIS开发使用中,我们会遇到地图显示不了,以及查询到数据显示不出的问题, ...

  7. SuperMap iClient for JavaScript常见问题解答集锦(十二)

    作者:皇皇 问:如果您在OpenStack平台中创建虚拟机时出现以下错误信息Build of instance aborted: Flavor is disk is too small for req ...

  8. java取geosever数据,终于搞定了GeoServer的WFS查询

    上一周,我在学习OpenLayers.一开始是用Image做数据,后来发现图片的分辨率始终有限,就想到动态获取数据.立即想到了以前在SKY看过的图片切片 ,MS太难了.不过OpenLayers作为轻量 ...

  9. 超图supermap实现BIM模型的属性查询

    有了BIM+GIS,实现室内室外一体化,室内导航等不再是梦想了哈! 最近为了学bim+gis,断断续续开始学超图产品,还是小白一枚,若分享中有错误,欢迎批评指正! 关于BIM的属性查询,之前在网上没找 ...

最新文章

  1. GitHub重大好消息:私有仓库可无限制免费创建
  2. html用div做出一颗树的效果,用Scrapy建造一棵树
  3. java中的线程安全是什么?
  4. 20 个势头最猛的开发者工具
  5. 在计算机系统中引入通道结构,第5-6章习题讲解.doc
  6. python的argsort函数_python——argsort函数
  7. codeforces1151 E. Number of Components(计数)
  8. Apache TomEE(和Tomcat)的自签名证书
  9. 在命令提示符中运行c语言程序,【命令提示符运行exe】命令提示符运行文件_命令提示符运行程序-系统城...
  10. java中的网络入门2(J2SE入门19)
  11. 你所不知道的 CSS 滤镜技巧与细节
  12. 计算机电子报模板,计算机辅助电气电子线路设计课程设计设计报告排版模板(WIT).doc...
  13. 什么是瀑布图_什么是瀑布图以及为什么我需要一个
  14. JavaScript 排序,不只是冒泡
  15. CodeBlocks安装汉化与使用说明
  16. HTML常用标签 选择器
  17. Android-图像识别项目OpenCV(2):运行官方例子中的脸部识别程序
  18. java计算机毕业设计web智慧医疗平台设计与实现源码+mysql数据库+系统+lw文档+部署
  19. ImageMagick快速入门
  20. 2019文章分类汇总

热门文章

  1. 网页集成大华摄像头以及回放功能2019.11.14
  2. MoCo 动量对比学习——一种维护超大负样本训练的框架
  3. 【Nginx 源码学习】Nginx 的缓冲区
  4. (附源码)记账微信小程序 毕业设计180815
  5. 深入理解计算机系统 第3章 程序的机器级表示
  6. QT之远程控制对方电脑
  7. 谣言检测相关论文阅读笔记:PAKDD2020-SAFE: Similarity-Aware Multi-Modal Fake News Detection
  8. 多款AE字幕条模板动画
  9. e7用什么主板_八路E7的下场如何?盘点历代至尊版处理器现价
  10. 计算机电路计数器pl什么意思,计数器原理—不懂就要看哦~~