ArcGIS 切片与矢量图图层顺序问题
在项目中有个需求:根据图层索引添加图层
看到这个需求一下子想到 map.addLayer(layer,index?) 接口
但是问题出现了,我切片图加载顺序在矢量图之后就不行!
map = new Map("map");
//加载矢量服务图层
var dynamic = new ArcGISDynamicMapServiceLayer("");
//加载切片服务图层
var tiled = new ArcGISTiledMapServiceLayer("");
//先添加动态地图服务
map.addLayer(dynamic);
//再添加切片地图服务
map.addLayer(tiled);
但是反过来,先加载切片底图,后加载矢量图就没有问题
map = new Map("map");
//加载矢量服务图层
var dynamic = new ArcGISDynamicMapServiceLayer("");
//加载切片服务图层
var tiled = new ArcGISTiledMapServiceLayer("");
//先添加切片地图服务
map.addLayer(tiled);
//后添加动态地图服务
map.addLayer(dynamic);
这究竟什么原因呢?偶然间查到如下一段话

我的理解是Map会根据第一个添加的图层设立参考,但是缓存图层不能动态转换参考。所以有缓存图层的必须将缓存图层作为底图,第一个加载到Map里。
是否底图加载再最底层就行?再来看看 map.addLayer(layer,index?) 的表现
//情形一
//加载正常,切片在矢量图下方
map.addLayer(tiled, 0);
map.addLayer(dynamic, 1); //情形二
//加载正常,切片在矢量图上方
map.addLayer(tiled, 1);
map.addLayer(dynamic, 0); //情形三
//加载不正常,切片图不出现
map.addLayer(dynamic, 0);
map.addLayer(tiled, 1); //情形四
//加载不正常,切片图不出现
map.addLayer(dynamic, 1);
map.addLayer(tiled, 0);
经过上面的测试发现,情形三和四都先加载了矢量图,即使矢量图放在最底层也没用。
故加载切片图和矢量图时,必须先加载切片,再加载其他矢量,而并非把切片放最底层就可以的。
ArcGIS 切片与矢量图图层顺序问题的更多相关文章
- 【转】10.4新特性-ArcGIS 10.4矢量切片介绍
原文地址:http://zhihu.esrichina.com.cn/article/567 1.矢量切片简介GIS的底图一直使用金字塔技术进行切图,使用户能够快速访问指定级别的地图或者影像.但是切图 ...
- arcgis建立拓扑分析(检验矢量图)
目的:矢量图画好后,检查是否有伪节点,悬挂节点等,线要素和面要素都可以检查.伪节点,两条线应该相交但是画的没相交:悬挂节点,两条线看似相交了但是没有节点,因此路径不同(类似于高架桥和交叉口,悬挂节点就 ...
- c#+ArcGIS Engine-获取矢量图层的空间参考
转自原文c#+ArcGIS Engine-获取矢量图层的空间参考 介绍一种简单的获取矢量图层空间参考的方法: 首先打开Shp文件获得FeatureClass,代码如下: string pPath=&q ...
- ArcGIS Server的切图原理深入(转载)
http://forum.osgearth.org/template/NamlServlet.jtp?macro=search_page&node=2174485&query=arcg ...
- ArcGIS Engine开发鹰眼图的功能(基础篇)
鹰眼是用于调节全视域范围内主地图显示范围情况的副地图.它体现了地图整体与详细局部的关系. 用户可以通过鼠标单击或者画框等动作实现鹰眼与主地图的交互情况. 鹰眼功能的原理是通过主地图窗口的地图控件和鹰眼 ...
- 使用geoserver发布arcgis切片
arcgis map 版本:10.1,10.2,10.3均可 jre:7或者8 geoserver:2.8.2以上 切片:松散型,256*256 ,png 1:安装geoserver并独立部署geo ...
- 时空地图TimeGIS 可编辑ArcGIS的Shape矢量文件的地理信息系统
时空地图 TimeGIS 6.0 是一个地理信息系统软件,它可以显示网络地图,编辑ArcGIS的SHP矢量文件格式,显示NETCDF等栅格文件,管理图层等. 在它的基础上,可以二次开发各种GIS应用, ...
- arcgis for javascript之ArcGISDynamicMapServiceLayer图层控制的实现
图层控制是非常多GIS系统里面必须的一个小功能,本文就说说arcgis for javascript下ArcGISDynamicMapServiceLayer图层控制的实现方式.首先看图: 实现效果 ...
- Android 开发 VectorDrawable 矢量图 (三)矢量图动画
VectorDrawable 矢量图 三部曲: Android 开发 VectorDrawable 矢量图 (一)了解Android矢量图与获取矢量图 Android 开发 VectorDrawabl ...
随机推荐
- 用Java JMC控制台分析线程阻塞原因
问题 今天在玩dianping-CAT框架时,发现请求某个页面的时候,发生了阻塞.浏览器得不到响应. 环境 本地Tomcat 8 , Windows 系统. 解决 启动jmc 控制台,找到BLOCKE ...
- PowerBI开发 第十五篇:Power BI的行级安全
Power BI支持行级安全(Row-Level Security,RLS)的权限控制,用于限制用户对Dashboard.报表和DataSet的访问.用户浏览的报表是相同的,但是看到的数据却是不同的. ...
- php curl 生成的cookie 文件含义 cookie 属性含义
最近用了curl 感觉还是很方便的,看了下curl生成的 cookie 文件 格式 , 对其中一些值的含义不是很明白,去找了些cookie的资料看了下,做下备忘 PHP curl 生成 的 cooki ...
- Unity3d粒子特效:制作火焰效果
效果 分析 真实的火焰效果,通常包括:火.火光.火星等组成部分,而火焰对周围环境的烘焙,可以通过灯光实现,如点光源. 针对火焰组成部分,我们可以创建对应的粒子系统组件,实现相应的效果,如下图所示: 1 ...
- 如何往Spark社区做贡献,贡献代码
随着社区正在努力准备Apache Spark的下一版本3.0,您可能会问自己“我如何参与其中?”.现在的Spark代码已经很庞大,因此很难知道如何开始自己做出贡献.Spark PMC & Co ...
- 《吊打面试官》系列-Redis基础
你知道的越多,你不知道的越多 点赞再看,养成习惯 前言 Redis在互联网技术存储方面使用如此广泛,几乎所有的后端技术面试官都要在Redis的使用和原理方面对小伙伴们进行360°的刁难.作为一个在互联 ...
- CVE-2019-0708复现之旅
CVE-2019-0708 0x00 前言: CVE-2019-0708漏洞已经出来三四个月了对应的poc也出现了很久 ,exp 还是没动静前段时间出了个蓝屏伪exp 不过肯定那些大厂手里早已经了有了 ...
- 有关logistic(sigmoid)函数回归
在神经网络中,经常用到sigmoid函数,y = 1 / (1+e-x) 作为下一级神经元的激活函数,x也就是WX(下文,W以θ符号代替)矩阵计算结果. 这个函数通常用在进行分类,通常分为1或0的逻辑 ...
- P2115 [USACO14MAR]破坏(二分答案)
给定一串数,问删除中间一段,剩下的平均数最小是多少: 不容易想到这是个二分. $solution:$ 来手玩一点式子: 首先很容易想到一个前缀和$sum_i $表示i到1的前缀和,这样就能很容易地O( ...
- 卖饲料——单调队列优化dp
题目描述 约翰开车来到镇上,他要带K吨饲料回家.运送饲料是需要花钱的,如果他的车上有X吨饲料,每公里就要花费X^2元,开车D公里就需要D* X^2元.约翰可以从N家商店购买饲料,所有商店都在一个坐标轴 ...