今天遇到了esri.layers.FeatureLayer发布一个宗地图层,里面有些数据未显示,导致数据显示不全,原来是服务中数据返回参数限制。

ArcGIS的feature图层(在JavaScript API中为esri.layers.FeatureLayer),在浏览器中进行显示时是有一定限制的。比如一个名为traffic的feature图层,该图层记录了该地区所有交通事故的发生地,其feature数量可想而知非常巨大。在浏览器中创建该图层的时候就要为其选定“模式”。如

var traffic = new esri.layers.FeatureLayer(trafficServiceURL, {
              displayOnPan : true,
              mode : esri.layers.FeatureLayer.MODE_ONDEMAND,
              opacity : 0.8,
              infoTemplate : infoTemplate,
              outFields : [*]
});
第二个参数mode就是模式。ArcGIS JavaScript API提供了三种模式,分别是
  • MODE_ONDEMAND:按需加载feature
  • MODE_SELECTION:初始不加载,只有当客户端选择的时候才加载feature
  • MODE_SNAPSHOT:一开始就将“全部”feature从服务器端取回并加载
值得注意的是,MODE_SNAPSHOT中的“全部”是有限制的,根据官方文档,在ArcGIS Server 9.3.1中默认是500个,在版本10的时候默认为1000。这个限制是可以在ArcCatalog中进行修改的。在GIS Servers中连到服务器,并停止该feature图层的服务,右键选择Service Properties,在Parameters选项卡下可以设置“Maximum Number of Records Returned by Server”。然后重启图层服务,并且在REST服务的管理界面清理一下缓存就可以了。
需要注意的是,该参数并非设置得越大越好,它会对地图在浏览器端的加载产生比较大的影响,如果设置的过大,不仅仅会导致加载缓慢,更有可能出现浏览器挂掉等不良体验。对于feature图层模式的选择,如果feature数量较小(比如小于Server默认的限制数量),那么选择MODE_SNAPSHOT一次性加载最好,并且要在初始化的时候为图层添加适当的过滤条件,如setDefinitionExpression和setTimeDefinition对feature属性、时间进行相应过滤,不至于初始加载阶段有过多的feature造成浏览器崩溃。
 
 

ArcGIS服务器的feature图层限制的更多相关文章

  1. WebGIS实现在线要素编辑之ArcGIS Server 发布Feature Service 过程解析

    WebGIS实现在线要素编辑之ArcGIS Server 发布Feature Service 过程解析 FeatureService也称要素服务,其最大的好处就是支持在线要素编辑,并将编辑同步更新到后 ...

  2. [转] arcgis Engine创建shp图层

    小生 原文 arcgis Engine创建shp图层 以创建点图层为例.首先要得到保存文件的地址. SaveFileDialog saveFileDialog = new SaveFileDialog ...

  3. OpenLayers学习笔记(五)— 拖拽Feature图层

    参考文档的例子可以知道如何拖动矢量图层feature GitHub: 八至 作者:狐狸家的鱼 本文链接:拖拽Feature图层 全部代码 <!DOCTYPE html> <html& ...

  4. c#+ArcGIS Engine-获取矢量图层的空间参考

    转自原文c#+ArcGIS Engine-获取矢量图层的空间参考 介绍一种简单的获取矢量图层空间参考的方法: 首先打开Shp文件获得FeatureClass,代码如下: string pPath=&q ...

  5. Arcgis javascript api 动态图层自图层可见性设置

    Arcgis javascript api 动态图层自图层可见性设置 子图层管理 rest服务 sublayers sublayer ArcGISDynamicMapServiceLayer 本文主要 ...

  6. ArcGIS API for JavaScript(2)-ArcGIS Server发布要素图层服务

    1.前言 上一篇该系列的文章我们主要讲了一下基础Web地图搭建,这篇我们主要讲一下ArcGIS Server发布服务,并且如何调用服务.将自己的数据加载到Web地图当中来,实现Web端浏览数据. 2. ...

  7. ArcGIS api for javascript——图层-创建定制的切片图层类型的图层

    描述 本例展示了如何创建一个定制图层,该图层访问来自WEB服务器的地图切片.这种方式最通用的用途是检索ArcGIS Server 9.2切片缓存或web上的其他地图切片服务.尽管本例使用的是一个Arc ...

  8. 命令行部署SharePoint2016离线前提条件和添加服务器的Feature

    前言 Sp2016的软件环境要求如下: 服务器场中的数据库服务器的最低要求: 以下各项之一: Microsoft SQL Server 2014 Service Pack 1 (SP1) 的 64 位 ...

  9. ArcGIS JavaScript API动态图层

      矢量动态图层     <!DOCTYPE HTML> <html>   <head> <meta http-equiv="Content-Typ ...

随机推荐

  1. Codeforces 786B Legacy(线段树优化建图)

    题目链接  Legacy 首先对于输入的$n$,建立一棵线段树. 显然线段树有大概$2n$个结点,每个节点对应一段区间 我们把这$2n$个结点加入我们的无向图中,一起跑最短路. 具体连边方案: 我们把 ...

  2. MySQL 几种调式分析利器

    目录 pstack gdb strace perf pstack 获取堆栈信息 问题线程的定位 负载较低 mysql_pid=4522 pstack $mysql_pid>pstack.info ...

  3. python3:requests模块-写了一点

    使用requests,它的七个主要方法,在这里只讲两个:get.post >>> import requests >>> r=requests.get(" ...

  4. Codeforces Gym 100203I I WIN 最大流

    原题链接:http://codeforces.com/gym/100203/attachments/download/1702/statements.pdf 题解 首先寻找每个I,然后枚举形状,如果匹 ...

  5. Flex 布局教程学习

    转载自:阮一峰的网络日志(http://www.ruanyifeng.com/blog/2015/07/flex-grammar.html) 网页布局(layout)是 CSS 的一个重点应用. 布局 ...

  6. 【经验之谈】适合学习的IT教程站点列表

    ①  CSDN   http://www.csdn.net/ ②  gitHub   https://github.com/ ③  极客学院  http://www.jikexueyuan.com/ ...

  7. c++ concurrency serial 1: introduction

    platform: vs2012 Code#include <iostream> #include <thread> using namespace std; void Fun ...

  8. 基于ACIS/HOOPS的3D应用开发简介 【转】

    (整理) 平台:                造型引擎——ACIS         显示引擎——Direct3D/OpenGL/GDI         应用框架——HOOPS   组件关系图     ...

  9. SVN服务器配置说明 【转】

    http://www.cnblogs.com/ricksun/articles/1564905.html 1.前 言 花了72小时,终于把 Subversion 初步掌握了.从一个连“什么是版本控制” ...

  10. QlikView显示所选时间前一年的数据

    客户常常提出这种需求,当用户选择某一时间时.图表中显示所选时间之前一年的数据.以下是我的方法.如有不当,请多不吝赐教: 数据准备例如以下所看到的: SalesData: LOAD Num(ID) as ...