# ArcGisWfsLayer
查阅Cesium API

#### new mars3d.layer.ArcGisWfsLayer(options)
layer/graphicLayer/ArcGisWfsLayer.js 9

ArcGIS WFS服务图层， 按瓦片网格分块分层加载。

参数名称 | 类型 | 描述信息
--- | --- | ---
`options` | object | 可选 参数对象，包括以下：
参数名称 | 类型 | 默认值 | 描述信息
--- | --- | --- | ---
`url` | string |  | ArcGIS服务地址, 示例：'http://server.mars3d.cn/arcgis/rest/services/mars/hefei/MapServer/37',
`token` | string |  | 可选 用于通过ArcGIS MapServer服务进行身份验证的ArcGIS令牌。
`where` | string |  | 可选 用于筛选数据的where查询条件
`wkid` | number |  | 可选 当非标准EPSG标号时，可以指定wkid值。
`parameters` | object |  | 可选 要在URL中 传递给WFS服务GetFeature请求的其他参数。
`headers` | object |  | 可选 将被添加到HTTP请求头。
`proxy` | string | Cesium.DefaultProxy |  | 可选 加载资源时使用的代理。
`IdField` | string | `'id'` | 可选 数据中唯一标识的属性字段名称,默认读取 id或objectid或OBJECTID
`minimumLevel` | number | `0` | 可选 图层所支持的最低层级，当地图小于该级别时，平台不去请求服务数据。【影响效率的重要参数】
`maximumLevel` | number |  | 可选 图层所支持的最大层级,当地图大于该级别时，平台不去请求服务数据。
`rectangle` | object |  | 瓦片数据的矩形区域范围
参数名称 | 类型 | 描述信息
--- | --- | ---
`xmin` | number | 最小经度值, -180 至 180
`xmax` | number | 最大经度值, -180 至 180
`ymin` | number | 最小纬度值, -90 至 90
`ymax` | number | 最大纬度值, -90 至 90
`bbox` | Array.<number> |  | 可选 bbox规范的瓦片数据的矩形区域范围[xmin ,ymin ,xmax ,ymax],与rectangle二选一即可。
`debuggerTileInfo` | boolean |  | 可选 是否开启测试显示瓦片信息
`maxCacheCount` | number | `1000` | 可选 记录临时缓存数据的最大数据量(有缓存的瓦片不再二次请求), 0时不记录
`opacity` | number | `1.0` | 可选 透明度（部分图层），取值范围：0.0-1.0
`zIndex` | number |  | 可选 控制图层的叠加层次（部分图层），默认按加载的顺序进行叠加，但也可以自定义叠加顺序，数字大的在上面。
`symbol` | object | function |  | 可选 矢量数据的style样式,为Function时是完全自定义的回调处理 symbol(attr, style, feature)
参数名称 | 类型 | 描述信息
--- | --- | ---
`type` | GraphicType | string | 可选 标识数据类型，默认是根据数据生成 point、polyline、polygon
`styleOptions` | object | Style样式，每种不同类型数据都有不同的样式，具体见各矢量数据的style参数。`GraphicType`
`styleField` | string | 可选 按 styleField 属性设置不同样式。
`styleFieldOptions` | object | 可选 按styleField值与对应style样式的键值对象。键支持对attr的JS语法字符串，如 "attr.floors>10 && attr.floors<20": { color: "#ff0000" } 或 "floors>10 && floors<20": { color: "#ff0000" } ，默认与styleOptions合并，可以设置merge:false不合并。
`merge` | boolean | 可选 是否合并并覆盖json中已有的style，默认不合并。
`callback` | function | 可选 自定义判断处理返回style ，示例：callback: function (attr, styleOpt){ return { color: "#ff0000" }; }
`graphicOptions` | object |  | 可选 默认的graphic的构造参数，每种不同类型数据都有不同的属性，具体见各`GraphicType`矢量数据的构造参数。
`chinaCRS` | ChinaCRS |  | 可选 标识数据的国内坐标系（用于自动纠偏或加偏）
`allowDrillPick` | boolean | function |  | 可选 是否允许鼠标穿透拾取
`simplify` | object |  | 可选 是否简化坐标点位，为空时不简化
参数名称 | 类型 | 默认值 | 描述信息
--- | --- | --- | ---
`tolerance` | number | `0.0001` | 可选 简化的程度，传值是经纬度的小数位
`highQuality` | boolean | `true` | 可选 是否花更多的时间用不同的算法创建更高质量的简化
`mutate` | boolean | `true` | 可选 是否允许对输入进行变异（如果为true，则显著提高性能）
`buildings` | object |  | 可选 标识当前图层为建筑物白膜类型数据
参数名称 | 类型 | 默认值 | 描述信息
--- | --- | --- | ---
`bottomHeight` | string |  | 可选 建筑物底部高度（如:0） 属性字段名称（如:{bottomHeight}）
`cloumn` | string | `1` | 可选 层数，楼的实际高度 = height*cloumn
`height` | string | number | `3.5` | 可选 层高的 固定层高数值（如:10） 或 属性字段名称（如:{height}）
`cluster` | object |  | 可选 聚合参数(Tip:不参与聚合的类型：合并渲染对象、处于标绘或编辑状态的对象)：
参数名称 | 类型 | 默认值 | 描述信息
--- | --- | --- | ---
`enabled` | boolean | `false` | 可选 是否开启聚合
`pixelRange` | number | `20` | 可选 多少像素矩形范围内聚合
`minimumClusterSize` | number | `2` | 可选 可以聚集的屏幕空间对象的最小数量
`includePoly` | boolean | `true` | 可选 是否对线面对象进行聚合
`image` | string | function | Globe.getCircleImageOptions |  | 可选 聚合点的图标样式，支持：string时直接传图片; object时定义内置样式; function时传：getImage:function(count) { return image}
`style` | BillboardEntity.StyleOptions | object |  | 可选 聚合点的样式参数
`popup` | string | Array.<Globe.getTemplateHtml_template> | function |  | 可选 绑定的popup弹窗值，也可以bindPopup方法绑定，支持：'all'、数组、字符串模板
`popupOptions` | Popup.StyleOptions |  | 可选 popup弹窗时的配置参数，也支持如pointerEvents等`Popup`构造参数,还包括：
参数名称 | 类型 | 默认值 | 描述信息
--- | --- | --- | ---
`title` | string |  | 可选 固定的标题名称
`titleField` | string |  | 可选 标题对应的属性字段名称
`noTitle` | string |  | 可选 不显示标题
`showNull` | string | `false` | 可选 是否显示空值
`tooltip` | string | Array.<Globe.getTemplateHtml_template> | function | object |  | 可选 绑定的tooltip弹窗值，也可以bindTooltip方法绑定，参数与popup属性完全相同。
`tooltipOptions` | Tooltip.StyleOptions |  | 可选 tooltip弹窗时的配置参数，也支持如pointerEvents等`Tooltip`构造参数,还包括：
参数名称 | 类型 | 默认值 | 描述信息
--- | --- | --- | ---
`title` | string |  | 可选 固定的标题名称
`titleField` | string |  | 可选 标题对应的属性字段名称
`noTitle` | string |  | 可选 不显示标题
`showNull` | string | `false` | 可选 是否显示空值
`contextmenuItems` | object |  | 可选 绑定的右键菜单值，也可以bindContextMenu方法绑定
`id` | string | number | `mars3d.Util.createGuid()` | 可选 图层id标识
`pid` | string | number |  | 可选 图层父级的id，一般图层管理中使用
`name` | string |  | 可选 图层名称
`show` | boolean | `true` | 可选 图层是否显示
`eventParent` | BaseClass | boolean |  | 可选 指定的事件冒泡对象，默认为map对象，false时不冒泡
`center` | object |  | 可选 图层自定义定位视角 `Map#setCameraView`
参数名称 | 类型 | 描述信息
--- | --- | ---
`lng` | number | 经度值, -180至180
`lat` | number | 纬度值, -90至90
`alt` | number | 可选 高度值
`heading` | number | 可选 方向角度值，绕垂直于地心的轴旋转角度, 0至360
`pitch` | number | 可选 俯仰角度值，绕纬度线旋转角度, -90至90
`roll` | number | 可选 翻滚角度值，绕经度线旋转角度, -90至90
`flyTo` | boolean |  | 可选 加载完成数据后是否自动飞行定位到数据所在的区域。
`flyToOptions` | object |  | 可选 加载完成数据后是否自动飞行定位到数据所在的区域的对应 `BaseLayer#flyTo`方法参数。

##### 参考:

- `支持的事件类型`

- `支持的事件类型`

### 继承自

- LodGraphicLayer

### 方法

#### clear(hasDestroy) → void
layer/graphicLayer/LodGraphicLayer.js 424

清除图层内所有矢量数据

参数名称 | 类型 | 默认值 | 描述信息
--- | --- | --- | ---
`hasDestroy` | boolean | `true` | 可选 是否释放矢量对象

##### 返回值:

无

继承自:
  - LodGraphicLayer#clear

#### reload() → void
layer/graphicLayer/LodGraphicLayer.js 444

重新加载数据

##### 返回值:

无

继承自:
  - LodGraphicLayer#reload

#### setWhere(where) → void
layer/graphicLayer/ArcGisWfsLayer.js 304

更新where条件后 刷新数据

参数名称 | 类型 | 描述信息
--- | --- | ---
`where` | string | 筛选条件

##### 返回值:

无

#### abstract updateGraphic(graphic, attr) → void
layer/graphicLayer/LodGraphicLayer.js 411

根据 attr属性 更新 矢量对象，主要是属性是动态变化的场景下使用。

参数名称 | 类型 | 描述信息
--- | --- | ---
`graphic` | BaseGraphic | * | 矢量对象
`attr` | object | 数据的属性信息

##### 返回值:

无

继承自:
  - LodGraphicLayer#updateGraphic