概述

在本文,讲述如何妙用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
联系方式

类型 内容
qq 1004740957
公众号 lzugis15
e-mail niujp08@qq.com
webgis群 452117357
Android群 337469080
GIS数据可视化群 458292378

ol3中妙用Arcgis Server Rest Export接口模拟WMS,并实现属性过滤相关推荐

  1. 巧用Arcgis Server的REST接口实现OL2中WMS添加过滤

    概述: 在实际的应用中,很多时候我们需要对展示的图层进行属性或者空间的过滤,在Geoserver发布的WMS中,可以通过CQL_FILTER来设置过滤条件,但是Arcgis Server发布的WMS不 ...

  2. ArcEngine中加载ArcGIS Server地图服务

    代码如下: private void addMapServerLayer(object sender, EventArgs e) {             IActiveView pActiveVi ...

  3. Arcgis for Js之加载wms服务

    概述:本节讲述Arcgis for Js加载ArcgisServer和GeoServer发布的wms服务. 1.定义resourceInfo var resourceInfo = { extent: ...

  4. ArcGIS Server 10 Java 版的Rest服务的部署方法

    使用ArcGIS Server 10 Java版发布GIS服务,当使用ArcGIS Manager创建好服务后,然后打开"ArcGIS Services Directory"的链接 ...

  5. ArcGIS Server 10.1动态图层 以及Windows Phone/Silverlight客户端实现

    本博文编写环境:ArcGIS 10.1 for Server /Destop                               ArcGIS Runtime SDK for Windows ...

  6. ArcGIS Server 学习

    ArcGIS Server http://help.arcgis.com/zh-cn/arcgisserver/10.0/help/arcgis_server_dotnet_help/#/na/009 ...

  7. ArcGIS Server 部署与配置

    一.ArcGIS Server安装概述 ArcGIS Server安装过程包括两个部分:安装(installation)和安装后(post installation)设置.为了完成ArcGIS Ser ...

  8. ArcGIS Server 简介

    ArcGIS Server ArcGIS Server--企业级GIS服务器 产品概况 关键特征 扩展模块 常见问题 ArcGIS Server--企业级GIS服务器 ArcGIS Server是一个 ...

  9. (转)OL记载Arcgis Server切片

    http://blog.csdn.net/gisshixisheng/article/details/47955787 概述: 本文讲述如何在OpenLayers中调用Arcgis Server切片并 ...

最新文章

  1. NVIDIA安倍架构
  2. 5.0:Spring-bean的加载
  3. 【OJ】洛谷红题题解锦集(Java语言描述)
  4. python中类的构成_Python类的构成元素
  5. 迷宫~哈哈~终于懂了BFS
  6. bootstrap 使用总结
  7. 公司危机、下岗困局、不受重视,程序员该如何面对职场挫折?
  8. php赛车,php调用接口及三分赛车平台搭建出租编写接口
  9. 距7月30日PMP考试不足10天,应该做点什么?
  10. Java的三大基本特征及其特点
  11. Vs2010创建网站
  12. 植物大战僵尸:实现灵魂收割者
  13. 计算机垃圾清理指令,win7电脑清理垃圾的运行命令代码是什么
  14. 7.网络基础配置实验报告(2)
  15. opencv3/C++ 机器学习-决策树/DTrees
  16. 舒城中学2021年高考成绩查询,舒城教育信息网——舒城县教育局关于对2019年荣获高考目标奖的学校和个人表彰的通报...
  17. TextBlob简介
  18. java怎么连接sql_java怎么连接SQL Server
  19. 正月初七 | 2月18日 星期四 | 京东物流在港交所提交招股书;字节跳动回应在美上市传闻;2021年中国电影总票房破百亿...
  20. 手机计算机在线汇率准确吗,汇率计算机(汇率计算器在线计算)

热门文章

  1. 【游戏建模模型制作全流程】ZBrush蜥蜴模型雕刻教程
  2. 微型计算机电路软件,微机控制电路
  3. 读书笔记(VII) 人生五大问题
  4. Unity通过鼠标或者手势实现拉进拉远,旋转等操作的常用方法
  5. Educoder中Spark算子--java版本
  6. Mac出现共享网络/wifi问题
  7. 难译 | windbg 乐趣之道(下)
  8. 可道云kodexplorer修改小记
  9. l完整的计算机系统,一个完整的计算机系统包括
  10. python中pd series_Python 数据处理(三)——pd.Series