ol3中妙用Arcgis Server Rest Export接口模拟WMS,并实现属性过滤
概述
在本文,讲述如何妙用Arcgis Server的REST Export接口实现WMS服务的调用和图层的属性过滤。
参考
1、巧用Arcgis Server的REST接口实现OL2中WMS添加过滤
2、OGC——WMS详细介绍(arcgis server举例)
参考文章2中,提到了Arcgis Server提供WMS的参数,如下图:
从上图我们可以看出,Arcgis Server提供WMS的参数里面没有标准的OGC服务里面的CQL_FILTER,这对我们在进行图层展示时需要一些根据属性的过滤很不方便,所以就想到了rest接口。
实现
通过rest export实现该功能,需要:
1、理解export接口的参数
这个在参考文章1里面有详细的说明,此处不再赘述,例如下面就是一个完整的请求地址。
eg. http://192.168.1.20:6080/arcgis/rest/services/test/MapServer/export?bbox=48.232992147239216%2C27.40690405991184%2C142.6612600808303%2C61.296621841232096&bboxSR=4326&layers=show%3A0&layerDefs={"0"%3A+"name+in+('内蒙古自治区')"}&size=&imageSR=&format=png&transparent=false&dpi=&time=&layerTimeOptions=&dynamicLayers=&gdbVersion=&mapScale=&f=image
2、Openlayers3+里面如何实现
查看API接口文档如下图:
如上图,里面提供了imageLoadFunction,可以很方便的来自定义url,关键实现代码如下:
var url ="http://192.168.1.20:6080/arcgis/rest/services/test/MapServer/export?f=image&format=png&transparent=true";
var tiled = new ol.layer.Image({source: new ol.source.ImageWMS({ratio: 1,url: url,imageLoadFunction: function (image, src) {var _src = url;var size = map.getSize(),bbox = image.extent;var params = {layers: "show:0",layerDefs: '{"0": "name in (\'内蒙古自治区\')"}',// layerDefs: '',bboxSR: '4326',size: size.join(","),bbox: bbox.join(",")};for (var _p in params) {_src += "&" + _p + "=" + params[_p]}image.getImage().src = _src;}})
});
说明:
1、如果需要添加过滤条件,则在layerDefs中添加,详细规则信息查看rest接口说明;
技术博客
CSDN:http://blog.csdn.NET/gisshixisheng
在线教程
https://edu.csdn.net/course/detail/799
https://edu.csdn.net/course/detail/7471
联系方式
类型 | 内容 |
---|---|
1004740957 | |
公众号 | lzugis15 |
niujp08@qq.com | |
webgis群 | 452117357 |
Android群 | 337469080 |
GIS数据可视化群 | 458292378 |
ol3中妙用Arcgis Server Rest Export接口模拟WMS,并实现属性过滤相关推荐
- 巧用Arcgis Server的REST接口实现OL2中WMS添加过滤
概述: 在实际的应用中,很多时候我们需要对展示的图层进行属性或者空间的过滤,在Geoserver发布的WMS中,可以通过CQL_FILTER来设置过滤条件,但是Arcgis Server发布的WMS不 ...
- ArcEngine中加载ArcGIS Server地图服务
代码如下: private void addMapServerLayer(object sender, EventArgs e) { IActiveView pActiveVi ...
- Arcgis for Js之加载wms服务
概述:本节讲述Arcgis for Js加载ArcgisServer和GeoServer发布的wms服务. 1.定义resourceInfo var resourceInfo = { extent: ...
- ArcGIS Server 10 Java 版的Rest服务的部署方法
使用ArcGIS Server 10 Java版发布GIS服务,当使用ArcGIS Manager创建好服务后,然后打开"ArcGIS Services Directory"的链接 ...
- ArcGIS Server 10.1动态图层 以及Windows Phone/Silverlight客户端实现
本博文编写环境:ArcGIS 10.1 for Server /Destop ArcGIS Runtime SDK for Windows ...
- ArcGIS Server 学习
ArcGIS Server http://help.arcgis.com/zh-cn/arcgisserver/10.0/help/arcgis_server_dotnet_help/#/na/009 ...
- ArcGIS Server 部署与配置
一.ArcGIS Server安装概述 ArcGIS Server安装过程包括两个部分:安装(installation)和安装后(post installation)设置.为了完成ArcGIS Ser ...
- ArcGIS Server 简介
ArcGIS Server ArcGIS Server--企业级GIS服务器 产品概况 关键特征 扩展模块 常见问题 ArcGIS Server--企业级GIS服务器 ArcGIS Server是一个 ...
- (转)OL记载Arcgis Server切片
http://blog.csdn.net/gisshixisheng/article/details/47955787 概述: 本文讲述如何在OpenLayers中调用Arcgis Server切片并 ...
最新文章
- NVIDIA安倍架构
- 5.0:Spring-bean的加载
- 【OJ】洛谷红题题解锦集(Java语言描述)
- python中类的构成_Python类的构成元素
- 迷宫~哈哈~终于懂了BFS
- bootstrap 使用总结
- 公司危机、下岗困局、不受重视,程序员该如何面对职场挫折?
- php赛车,php调用接口及三分赛车平台搭建出租编写接口
- 距7月30日PMP考试不足10天,应该做点什么?
- Java的三大基本特征及其特点
- Vs2010创建网站
- 植物大战僵尸:实现灵魂收割者
- 计算机垃圾清理指令,win7电脑清理垃圾的运行命令代码是什么
- 7.网络基础配置实验报告(2)
- opencv3/C++ 机器学习-决策树/DTrees
- 舒城中学2021年高考成绩查询,舒城教育信息网——舒城县教育局关于对2019年荣获高考目标奖的学校和个人表彰的通报...
- TextBlob简介
- java怎么连接sql_java怎么连接SQL Server
- 正月初七 | 2月18日 星期四 | 京东物流在港交所提交招股书;字节跳动回应在美上市传闻;2021年中国电影总票房破百亿...
- 手机计算机在线汇率准确吗,汇率计算机(汇率计算器在线计算)