ArcGIS API for JavaScript:Layer之间那点儿事

先来看一个模型:

 |–TiledMapServiceLayer
  |       |–ArcGISTiledMapServiceLayer
  |–DynamicLayer
  |       |–DynamicMapServiceLayer
  |                 |–ArcGISDynamicMapServiceLayer
  |                 |–ArcGISImageServiceLayer
  |                 |–GPResultImageLayer
  |–GraphicsLayer
  |       |–FeatureLayer

以上红色均为常用的几种图层,ArcGISTiledMapServiceLayer主要用于加载发布在ArcGIS Server上的缓存地图服务,具备了层级的概念,并在服务端缓存了预浏览的地图图片(如下图)。

 

ArcGISDynamicMapServiceLayer动态地图通常用于实时显示经常变化的数据,支持控制单个图层可见性,可动态投影。但缺点是显示效果较差,整个服务出图较慢。

//ArcGISDynamicMapServiceLayer class is used to define the Layer that is added to the  
 //MapView object.  
 MapView mv = new MapView(this);  
 mv.addLayer(new ArcGISDynamicMapServiceLayer(  
 "http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Demographics/ESRI_Population_World/MapServer"));  
 setContentView(mv);

GraphicsLayer就是包含了一个甚至是更多元素的图层,而且在ArcGIS API for JavaScript中默认了创建了Map Object之后都会默认包含一个元素图层,元素图层在地图上支持创建和删除Graphic。同时需要注意的一点是,图层的加载遵循“先上后下”的原则,即首先加载的图层都在下面,以此类推,同时所有的元素图层都是分布在ArcGISDynamicMapServiceLayer和ArcGISTiledMapServiceLayer上的。

posted @ 2017-03-22 16:25  小木工  阅读(3262)  评论(5编辑  收藏  举报