# Layers

#### new Cesium.Layers(scene)
MapGIS/Layers.js 42

Name | Type | Description
--- | --- | ---
`scene` | Scene | 场景对象

### Members

#### readonly featureLayersMap : HashMap
MapGIS/Layers.js 132

矢量图层管理容器

#### readonly geojsonLayersMap : HashMap
MapGIS/Layers.js 144

geojson图层管理容器

#### readonly imageryLayersMap : HashMap
MapGIS/Layers.js 108

影像图层管理容器

#### readonly m3dLayersMap : HashMap
MapGIS/Layers.js 72

M3D 图层管理容器

#### readonly sceneLayerMap : HashMap
MapGIS/Layers.js 84

SceneLayer 图层管理器

#### readonly terrainLayersMap : HashMap
MapGIS/Layers.js 156

地形图层管理容器

#### readonly vectorLayersMap : HashMap
MapGIS/Layers.js 120

矢量图层管理容器

### Methods

#### appendCesium3DTilesetLayer(url, options) → Number
MapGIS/Layers.js 1284

添加 3DTileset 数据

Name | Type | Description
--- | --- | ---
`url` | String | Resource |
`options` | Object |
Name | Type | Default | Description
--- | --- | --- | ---
`autoReset` | Boolean | `true` | optional 跳转到模型位置
`duration` | Number | `0` | optional 跳转时间，以秒为单位
`orientation` | HeadingPitchRange |  | optional 镜头朝向
`rectangle` | Cartesian3 | Rectangle | `layer.root.boundingVolume.rectangle` | optional 视野跳转位置，默认值为图层包围盒，可以设置为世界坐标
`debugShowBoundingVolume` | Boolean | `false` | optional 包围盒
`maximumScreenSpaceError` | Number | `16` | optional 几何容错率基准参数
`debugWireframe` | Boolean | `false` | optional 线渲染模式
`pointCloudShading` | Object |  | optional 点云数据渲染参数
`headers` | Object |  | optional 数据请求头
`loaded` | function |  | optional 回调函数
`errorCallback` | function |  | optional 异常回调函数

##### Returns:

返回图层序号

#### appendFeatureLayer(url, options)
MapGIS/Layers.js 2870

加载MapGIS矢量地图文档

Name | Type | Description
--- | --- | ---
`url` | String | 发布的文档地址，或Igs图层服务地址，对应的layers参数不同，使用Igs图层服务地址通过gdbp仅能加载二维矢量图层，eg：二维地图文档地址：http://[host]:[port]/igs/rest/mrfs/docs/{docName}，三维地图文档地址：http://[host]:[port]/igs/rest/g3d/{docName}，Igs图层服务地址：http://[host]:[port]/igs/rest/mrfs/layer
`options` | Object | 其他附加属性包含以下属性的对象
Name | Type | Default | Description
--- | --- | --- | ---
`getDocLayerIndexes` | function | `function` | optional 回调函数，用于获取文档中的所有图层对象
`autoReset` | Boolean | `true` | optional 视角是否自动切换到地图文档范围或第一个gdbp图层范围
`loadAll` | Boolean | `true` | optional 是否加载所有数据，默认全部加载
`setViewToExisting` | Boolean | `false` | optional 视角是否定位到现存要素的范围，仅当loadAll=true时有效，适用于旧版igs服务
`layers` | String |  | optional 图层id，即要加载哪些图层，分为地图文档加载（layer为0,1,2...）和gdbp地址加载（layer为gdbp1,gdbp2,...），分别对应两种url参数，地图文档加载示例：layers=show:0,1 表示只显示 layerIndex 为 0, 1 的图层，layers=hide:0,1 表示只隐藏 layerIndex 为 0, 1 的图层
`idField` | String | `FID` | optional id字段名
`tileFeaturesCount` | Number | `400` | optional 请求的瓦片矢量要素数量
`useSystemLib` | Boolean | `false` | optional 是否使用MapGIS桌面端符号系统库
`systemLib` | String | `'MapGIS 10'` | optional 符号系统库guid或名称,默认库为'MapGIS 10'
`clampToGround` | Boolean | `false` | optional 是否贴地，当加载三维地图文档或矢量白模时该属性无效
`filter` | Object | Array.<Object> |  | optional 全局过滤条件对象，或过滤条件对象数组，过滤条件数组顺序与图层顺序一致，空对象则使用默认无过滤
Name | Type | Default | Description
--- | --- | --- | ---
`orderField` | String |  | optional 排序字段名称，用于对输出结果进行排序
`isAsc` | boolean | `false` | optional 按照字段进行排序时，是否升序排列
`objectIds` | Array |  | optional 需要查询的要素的OID值数组,当objectIds有值时，代表基于objectIds查询，Where、geometry、geometryType、orderField、isAsc等查询参数无效.
`geometryType` | String |  | optional 几何类型，代表空间查询时传入的几何类型
`geometry` | Object |  | optional 几何类型对应的图形信息，也就是构成几何类型的坐标信息
`where` | String |  | optional 要素过滤条件
`rule` | String |  | optional 指定查询规则 {CompareRectOnly:true|false,EnableDisplayCondition:true|false,MustInside:true|false,Intersect:true|false}
`renderer` | Object |  | optional 专题图渲染规则，该属性用于提供专题服务
Name | Type | Description
--- | --- | ---
`type` | String | optional 专题图类型，可选 "simple"|"unique-value"|"class-breaks"
`legendOptions` | Object | optional 专题图图例选项，用来在图例中展示符号所表达的信息
Name | Type | Description
--- | --- | ---
`title` | Object | optional 专题图图例标题
`field` | String | optional 专题图字段名称，用来确定单值或分段要素，仅在renderer.type="unique-value"|"class-breaks"时使用
`symbol` | Object | optional 统一专题图符号样式
Name | Type | Description
--- | --- | ---
`type` | String | optional 专题图符号样式类型，可选 "point-3d"|"line-3d"|"polygon-3d"
`symbolLayers` | String | optional 专题图符号图层，可选 "icon"|"line"|"fill"|"extrude"
`label` | String | optional 统一专题图标签
`defaultSymbol` | Object | optional 单值|分段专题图默认符号样式，用来绘制具有与给定中断值不匹配的要素
`defaultLabel` | String | optional 单值|分段专题图默认标签，用来描述分配了默认符号的元素
`uniqueValueInfos` | Array.<Object> | optional 专题图单值信息，仅在renderer.type="unique-value"时使用
Name | Type | Description
--- | --- | ---
`value` | String | Number | optional 指定字段下的要素值，具有此值的要素将使用给定的符号可视化
`symbol` | Object | optional 符号，用来渲染指定要素
`label` | String | optional 标签，用来描述符号表示的值
`classBreakInfos` | Array.<Object> | optional 专题图分段信息，仅在renderer.type="class-breaks"时使用
Name | Type | Description
--- | --- | ---
`minValue` | Number | optional 设置分段间隔的最小值
`maxValue` | Number | optional 设置分段间隔的最大值
`symbol` | Object | optional 符号，用来渲染分段间隔最小-最大值之间的要素
`label` | String | optional 标签，用来描述符号表示的值
`normalizationType` | String | optional 专题图归一化类型，仅在render.type="class-breaks"时使用，可选 "field"|"percent-of-total"
`normalizationField` | String | optional 专题图根据字段归一化，即分段字段属性值 / 归一化字段属性值，如果renderer中定义了normalizationField，则优先执行normalizationField按字段归一化，通过归一化出的结果和分段专题图停靠点的值进行比较，若仅定义normalizationType未定义normalizationField，则不进行归一化，使用场景：如 区域人口数 / 该区域面积，返回该区域人口密度，根据人口密度绘制分段专题图
`normalizationTotal` | Number | optional 专题图根据属性值总和归一化，即分段字段属性值 / 给定总和，如果renderer中定义了normalizationTotal，则优先执行normalizationTotal按字段值总和归一化，通过归一化出的结果和分段专题图停靠点的值进行比较，若仅定义normalizationType未定义normalizationTotal，则使用 分段字段属性值 / 分段字段属性值总和 进行归一化，使用场景：如 区域GDP总量 / 所有区域GDP总量和，返回该区域GDP占比，根据GDP占比绘制分段专题图
`valueExpression` | String | optional 专题图计算表达式，用来对要素中的单/多个属性进行数学计算，属性字段使用"$feature.field"表示，如"[($feature.lg + 2) * 10 - 20 / 2] / 5 + $feature.mpLayer"，如果renderer中定义了valueExpression，则优先执行valueExpression表达式，通过表达式计算出来的结果和单值/分段专题图停靠点的值进行比较
`valueExpressionTitle` | String | optional 专题图计算表达式标题，在legendOptions属性中没有提供的情况下，将显示为图例中的标题
`visualVariables` | Array.<Object> | optional 专题图视觉变量
Name | Type | Description
--- | --- | ---
`type` | String | optional 专题图视觉变量类型，可选 "color"|"opacity"
`field` | String | optional 专题图视觉变量字段，用于和停靠点比较来确定绘制符号，只能为数字类型字段
`valueExpression` | String | optional 专题图视觉变量计算表达式
`valueExpressionTitle` | String | optional 专题图视觉变量计算表达式标题
`normalizationType` | String | optional 专题图视觉变量归一化类型，可选 "field"|"percent-of-total"
`normalizationField` | String | optional 专题图视觉变量归一化字段，将renderer中对应字段数据值除以归一化字段数据值
`normalizationTotal` | String | optional 专题图视觉变量归一化字段，将renderer中对应字段数据值除以所有数据值的总和
`stops` | Array.<Object> | optional 专题图视觉变量颜色数组，定义在一系列停靠点中应用于要素的连续色带的颜色
Name | Type | Description
--- | --- | ---
`value` | Number | optional 专题图视觉变量停靠点
`color` | Object | optional 专题图视觉变量停靠点颜色，根据相邻停靠点间的值和颜色进行线性插值
`style` | Object | Array.<Object> |  | optional 矢量地图文档的全局style样式对象,或分图层style样式对象数组，样式顺序与图层顺序一致，空对象则使用默认样式
Name | Type | Description
--- | --- | ---
`type` | String | optional style样式类型，可选参数为"point|line|polygon|building"，对应点，线，区，区矢量白模
`styleOptions` | Object | optional style具体参数对象
Name | Type | Default | Description
--- | --- | --- | ---
`color` | Color | `Cesium.Color.GHOSTWHITE` | optional 通用参数，颜色
`size` | Number |  | optional 点符号大小，仅当options.style.type="point"时生效
`outlineColor` | Color | `Cesium.Color.BLACK` | optional 边框线颜色，仅当options.style.type="point|polygon|building"时生效，当传入边框线颜色或边框线宽度参数时启用边框线
`outlineWidth` | Number | `1.0` | optional 边框线宽度，仅当options.style.type="point"时生效，当传入边框线颜色或边框线宽度参数时启用边框线,"polygon|building"边框线宽度仅能为默认值1。
`width` | Number | `1` | optional 线宽，仅当options.style.type="line"时生效
`heightField` | Number | String |  | optional 用作区矢量白模高程的属性字段名称，不设置则高程为零，仅当options.style.type="building"时生效
`heightRatio` | Number |  | optional 区矢量白模高程放缩比例，默认1.0，仅当options.style.type="building"时生效
`minimumLevel` | Number | `0` | optional 瓦片最小级别
`maximumLevel` | Number | `0` | optional 瓦片最大级别
`gdbps` | String |  | optional gdbps地址,多个图层用','隔开
`proxy` | String |  | optional 转发代理

##### Example:

    var options1 = {
           autoReset: true,
           filter: {
                 where: 'OBJECTID>500'
           },
           renderer: {
                 type: 'simple',
                 symbol: {
                     type: 'point-3d',
                     symbolLayers: {
                         type: 'icon',
                         material: { color: new Cesium.Color(1.0, 1.0, 1.0, 1.0) },
                         resource: {herf: "http://localhost:8085/Apps/SampleData/icon/Hotel.png", scale: 1.5, distanceDisplayCondition: new Cesium.DistanceDisplayCondition(10, 100000), sizeInMeters: false},
                         size: 20.0
                     }
                 },
                 label: "svg点符号"
           }
       }
       //java IGServer二维地图文档加载示例
       var layerIndexs;
       url = 'http://localhost:8089/igs/rest/services/二维矢量/FeatureServer/1';
       options = {
           getDocLayerIndexes: function (indexs) {
                 console.log(indexs);
                 layerIndexs = indexs;
           },
       }
       viewer.scene.layers.appendFeatureLayer(url, options);
       //.net IGServer二维地图文档加载示例
       var layerIndexs;
       url = 'http://localhost:6163/igs/rest/mrfs/docs/二维矢量/0/1';
       options = {
           getDocLayerIndexes: function (indexs) {
                 console.log(indexs);
                 layerIndexs = indexs;
           },
       }
       viewer.scene.layers.appendFeatureLayer(url, options);
       //gdbp地址加载示例
       url_gdbp = 'http://localhost:6163/igs/rest/mrfs/layer';
       option_gdbp={
           layers:'gdbp1,gdbp2,gdbp3'
           getDocLayerIndexes: function (indexs) {
                 console.log(indexs);
                 layerIndexs = indexs;
           },
       }
       viewer.scene.layers.appendFeatureLayer(url_gdbp, option_gdbp);
       //通过ID获取MapGISFeatureLayer图层
       var layerIndexs;
       for(var i = 0; i < layerIndexs; i++){
           viewer.scene.layers.getFeatureLayer(layerIndexs[i]);
       }
       //通过ID移除MapGISFeatureLayer图层
       for(var i = 0; i < layerIndexs; i++){
           viewer.scene.layers.removeFeatureLayerByID(layerIndexs[i]);
       }

#### appendGeojsonLayer(url, options)
MapGIS/Layers.js 3246

加载GeoJSON数据

Name | Type | Description
--- | --- | ---
`url` | String | 发布的Geojson数据服务地址
`options` | Object | 其他附加属性包含以下属性的对象
Name | Type | Default | Description
--- | --- | --- | ---
`getDocLayerIndexes` | function | `function` | optional 回调函数，用于获取文档中的所有图层对象索引
`loaded` | function | `function` | optional 回调函数，用于获取文档中的图层对象
`autoReset` | Boolean | `true` | optional 视角是否自动切换到geojson数据的中心
`clampToGround` | Boolean | `false` | optional 是否贴地
`renderer` | Object |  | optional 专题图渲染规则，该属性用于提供专题服务
Name | Type | Description
--- | --- | ---
`type` | String | optional 专题图类型，可选 "simple"|"unique-value"|"class-breaks"
`legendOptions` | Object | optional 专题图图例选项，用来在图例中展示符号所表达的信息
Name | Type | Description
--- | --- | ---
`title` | Object | optional 专题图图例标题
`field` | String | optional 专题图字段名称，用来确定单值或分段要素，仅在renderer.type="unique-value"|"class-breaks"时使用
`symbol` | Object | optional 统一专题图符号样式
Name | Type | Description
--- | --- | ---
`type` | String | optional 专题图符号样式类型，可选 "point-3d"|"line-3d"|"polygon-3d"
`symbolLayers` | String | optional 专题图符号图层，可选 "icon"|"line"|"fill"|"extrude"
`label` | String | optional 统一专题图标签
`defaultSymbol` | Object | optional 单值|分段专题图默认符号样式，用来绘制具有与给定中断值不匹配的要素
`defaultLabel` | String | optional 单值|分段专题图默认标签，用来描述分配了默认符号的元素
`uniqueValueInfos` | Array.<Object> | optional 专题图单值信息，仅在renderer.type="unique-value"时使用
Name | Type | Description
--- | --- | ---
`value` | String | Number | optional 指定字段下的要素值，具有此值的要素将使用给定的符号可视化
`symbol` | Object | optional 符号，用来渲染指定要素
`label` | String | optional 标签，用来描述符号表示的值
`classBreakInfos` | Array.<Object> | optional 专题图分段信息，仅在renderer.type="class-breaks"时使用
Name | Type | Description
--- | --- | ---
`minValue` | Number | optional 设置分段间隔的最小值
`maxValue` | Number | optional 设置分段间隔的最大值
`symbol` | Object | optional 符号，用来渲染分段间隔最小-最大值之间的要素
`label` | String | optional 标签，用来描述符号表示的值
`normalizationType` | String | optional 专题图归一化类型，仅在render.type="class-breaks"时使用，可选 "field"|"percent-of-total"
`normalizationField` | String | optional 专题图根据字段归一化，即分段字段属性值 / 归一化字段属性值，如果renderer中定义了normalizationField，则优先执行normalizationField按字段归一化，通过归一化出的结果和分段专题图停靠点的值进行比较，若仅定义normalizationType未定义normalizationField，则不进行归一化，使用场景：如 区域人口数 / 该区域面积，返回该区域人口密度，根据人口密度绘制分段专题图
`normalizationTotal` | Number | optional 专题图根据属性值总和归一化，即分段字段属性值 / 给定总和，如果renderer中定义了normalizationTotal，则优先执行normalizationTotal按字段值总和归一化，通过归一化出的结果和分段专题图停靠点的值进行比较，若仅定义normalizationType未定义normalizationTotal，则使用 分段字段属性值 / 分段字段属性值总和 进行归一化，使用场景：如 区域GDP总量 / 所有区域GDP总量和，返回该区域GDP占比，根据GDP占比绘制分段专题图
`valueExpression` | String | optional 专题图计算表达式，用来对要素中的单/多个属性进行数学计算，属性字段使用"$feature.field"表示，如"[($feature.lg + 2) * 10 - 20 / 2] / 5 + $feature.mpLayer"，如果renderer中定义了valueExpression，则优先执行valueExpression表达式，通过表达式计算出来的结果和单值/分段专题图停靠点的值进行比较
`valueExpressionTitle` | String | optional 专题图计算表达式标题，在legendOptions属性中没有提供的情况下，将显示为图例中的标题
`visualVariables` | Array.<Object> | optional 专题图视觉变量
Name | Type | Description
--- | --- | ---
`type` | String | optional 专题图视觉变量类型，可选 "color"|"opacity"
`field` | String | optional 专题图视觉变量字段，用于和停靠点比较来确定绘制符号，只能为数字类型字段
`valueExpression` | String | optional 专题图视觉变量计算表达式
`valueExpressionTitle` | String | optional 专题图视觉变量计算表达式标题
`normalizationType` | String | optional 专题图视觉变量归一化类型，可选 "field"|"percent-of-total"
`normalizationField` | String | optional 专题图视觉变量归一化字段，将renderer中对应字段数据值除以归一化字段数据值
`normalizationTotal` | String | optional 专题图视觉变量归一化字段，将renderer中对应字段数据值除以所有数据值的总和
`stops` | Array.<Object> | optional 专题图视觉变量颜色数组，定义在一系列停靠点中应用于要素的连续色带的颜色
Name | Type | Description
--- | --- | ---
`value` | Number | optional 专题图视觉变量停靠点
`color` | Object | optional 专题图视觉变量停靠点颜色，根据相邻停靠点间的值和颜色进行线性插值
`minimumLevel` | Number | `0` | optional 瓦片最小级别
`maximumLevel` | Number | `0` | optional 瓦片最大级别

##### Example:

    //Geojson数据加载示例
       var layerIndexs;
       url = 'http://localhost:8895/buildings.geojson';
       var options1 = {
           autoReset: true,
           getDocLayerIndexes: function (indexs) {
                 console.log(indexs);
                 layerIndexs = indexs;
           },
           renderer: {
                 type: 'simple',
                 symbol: {
                     type: 'point-3d',
                     symbolLayers: {
                         type: 'icon',
                         material: { color: new Cesium.Color(1.0, 1.0, 1.0, 1.0) },
                         resource: {herf: "http://localhost:8085/Apps/SampleData/icon/Hotel.png", scale: 1.5, distanceDisplayCondition: new Cesium.DistanceDisplayCondition(10, 100000), sizeInMeters: false},
                         size: 20.0
                     }
                 },
                 label: "svg点符号"
           }
       }
       viewer.scene.layers.appendFeatureLayer(url, options);
       //通过ID获取MapGISGeojsonLayer图层
       var layerIndexs;
       for(var i = 0; i < layerIndexs; i++){
           viewer.scene.layers.getFeatureLayer(layerIndexs[i]);
       }
       //通过ID移除MapGISGeojsonLayer图层
       var layerIndexs;
       for(var i = 0; i < layerIndexs; i++){
           viewer.scene.layers.removeFeatureLayerByID(layerIndexs[i]);
       }

#### appendGraphicsLayer(graphicsLayer)
MapGIS/Layers.js 2210

添加标绘图层

Name | Type | Description
--- | --- | ---
`graphicsLayer` | GraphicsLayer | 标绘图层对象

#### appendGraphicsLayerFromJson(viewer, json)
MapGIS/Layers.js 2220

添加标绘图层

Name | Type | Description
--- | --- | ---
`viewer` | Viewer | 视图对象
`json` | String | json格式的字符串

#### appendImageryLayer(url, options) → Number
MapGIS/Layers.js 1404

添加影像图层

Name | Type | Description
--- | --- | ---
`url` | String | 服务地址
`options` | Object | 可选参数

##### Returns:

layerIndex 返回图层序号

#### appendM3DLayer(url, options) → Number
MapGIS/Layers.js 194

添加 M3D 数据

Name | Type | Description
--- | --- | ---
`url` | String | Resource |
`options` | Object |
Name | Type | Default | Description
--- | --- | --- | ---
`autoReset` | Boolean | `true` | optional 跳转到模型位置
`duration` | Number | `0` | optional 跳转时间，以秒为单位
`orientation` | HeadingPitchRange |  | optional 镜头朝向
`rectangle` | Cartesian3 | Rectangle | `layer.root.boundingVolume.rectangle` | optional 视野跳转位置，默认值为图层包围盒，可以设置为世界坐标
`debugShowBoundingVolume` | Boolean | `false` | optional 包围盒
`maximumScreenSpaceError` | Number | `16` | optional 几何容错率基准参数
`debugWireframe` | Boolean | `false` | optional 线渲染模式
`pointCloudShading` | Object |  | optional 点云数据渲染参数
`headers` | Object |  | optional 数据请求头
`loaded` | function |  | optional 回调函数
`errorCallback` | function |  | optional 异常回调函数

##### Returns:

返回图层序号

##### Example:

    var url = 'http://localhost:8086/M3D/1.0/school_all/school_all.mcj';
     var options = {
         autoReset: true,
         duration: 2
         loaded: function (layer) {
             console.log(layer);
         }
     };

     var layerIndex = viewer.scene.layers.appendM3DLayer(url, options);

#### appendSceneLayer(url, options)
MapGIS/Layers.js 457

添加 G3D 服务数据

Name | Type | Description
--- | --- | ---
`url` | String |
`options` | Object |
Name | Type | Default | Description
--- | --- | --- | ---
`autoReset` | Boolean | `true` | optional 是否自动定位
`synchronous` | Boolean | `true` | optional 是否异步请求
`loaded` | function | `function` | optional 回调函数，获取单图层信息
`getDocLayerIndexes` | function | `function` | optional 回调函数，用于获取文档中的所有图层对象
`showBoundingVolume` | Boolean | `false` | optional 是否显示包围盒
`maximumScreenSpaceError` | Number | `16` | optional 用于控制模型显示细节 值较大将会渲染更少的贴图,进而可以提高性能,而较低的值将提高视觉质量
`layers` | String |  | optional 图层过滤功能
`useIDB` | String | `false` | optional 是否使用前端缓存
`maxCacheLevel` | Number |  | optional 前端最大缓存级别
`tileFeaturesCount` | Number | `400` | optional 矢量图层单个瓦片加载的矢量要素数量
`duration` | Number | `0` | optional 跳转时间，以秒为单位
`orientation` | HeadingPitchRange | `new HeadingPitchRange(0.0, -0.5, mergeBoundingSphere.radius * 2.5` | optional 镜头朝向
`requestVertexNormals` | Boolean | `false` | optional 是否请求法向（地形）
`proxy` | DefaultProxy |  | optional 代理

##### Example:

    viewer.scene.layers.appendSceneLayer('http://192.168.90.102:6163/igs/rest/g3d/1218示例', {
         autoReset:false,
         synchronous:true,
         layers: 'show:0',
         loaded:callBackfunction
     });

     viewer.scene.layers.appendSceneLayer('http://192.168.90.102:6163/igs/rest/g3d/1218示例', {
         autoReset:false,
         synchronous:true,
         layers: 'hide:0',
         getDocLayerIndexes: function (indexes) { console.log(indexes); }
     });

#### appendTerrainLayer(url, optionsParam) → MapGISTerrainProvider|TerrainProvider
MapGIS/Layers.js 2081

添加地形图层（内部）

Name | Type | Description
--- | --- | ---
`url` | String | 服务地址
`optionsParam` | Object | 可选参数
Name | Type | Default | Description
--- | --- | --- | ---
`requestVertexNormals` | Boolean | `false` | optional 是否请求法向（地形）
`autoReset` | Boolean | `true` | optional 是否自动跳转

##### Returns:

terrainLayer 返回图层对象

#### appendVectorLayer(url, options)
MapGIS/Layers.js 2363

加载MapGIS矢量地图文档

Name | Type | Description
--- | --- | ---
`url` | String | 发布的文档地址，或Igs图层服务地址，对应的layers参数不同，使用Igs图层服务地址通过gdbp仅能加载二维矢量图层，eg：二维地图文档地址：http://[host]:[port]/igs/rest/mrfs/docs/{docName}，三维地图文档地址：http://[host]:[port]/igs/rest/g3d/{docName}，Igs图层服务地址：http://[host]:[port]/igs/rest/mrfs/layer
`options` | Object | 其他附加属性包含以下属性的对象
Name | Type | Default | Description
--- | --- | --- | ---
`getDocLayerIndexes` | function | `function` | optional 回调函数，用于获取文档中的所有图层对象
`autoReset` | Boolean | `true` | optional 视角是否自动切换到地图文档范围或第一个gdbp图层范围
`loadAll` | Boolean | `false` | optional 是否加载所有数据，默认以矢量瓦片形式动态加载
`setViewToExisting` | Boolean | `false` | optional 视角是否定位到现存要素的范围，仅当loadAll=true时有效，适用于旧版igs服务
`layers` | String |  | optional 图层id，即要加载哪些图层，分为地图文档加载（layer为0,1,2...）和gdbp地址加载（layer为gdbp1,gdbp2,...），分别对应两种url参数，地图文档加载示例：layers=show:0,1 表示只显示 layerIndex 为 0, 1 的图层，layers=hide:0,1 表示只隐藏 layerIndex 为 0, 1 的图层
`idField` | String | `FID` | optional id字段名
`tileFeaturesCount` | Number | `400` | optional 请求的瓦片矢量要素数量
`useSystemLib` | Boolean | `false` | optional 是否使用MapGIS桌面端符号系统库
`systemLib` | String | `'MapGIS 10'` | optional 符号系统库guid或名称,默认库为'MapGIS 10'
`clampToGround` | Boolean | `false` | optional 是否贴地，当加载三维地图文档或矢量白模时该属性无效
`filter` | Object | Array.<Object> |  | optional 全局过滤条件对象，或过滤条件对象数组，过滤条件数组顺序与图层顺序一致，空对象则使用默认无过滤
Name | Type | Default | Description
--- | --- | --- | ---
`orderField` | String |  | optional 排序字段名称，用于对输出结果进行排序
`isAsc` | boolean | `false` | optional 按照字段进行排序时，是否升序排列
`objectIds` | Array |  | optional 需要查询的要素的OID值数组,当objectIds有值时，代表基于objectIds查询，Where、geometry、geometryType、orderField、isAsc等查询参数无效.
`geometryType` | String |  | optional 几何类型，代表空间查询时传入的几何类型
`geometry` | Object |  | optional 几何类型对应的图形信息，也就是构成几何类型的坐标信息
`where` | String |  | optional 要素过滤条件
`rule` | String |  | optional 指定查询规则 {CompareRectOnly:true|false,EnableDisplayCondition:true|false,MustInside:true|false,Intersect:true|false}
`style` | Object | Array.<Object> |  | optional 矢量地图文档的全局style样式对象,或分图层style样式对象数组，样式顺序与图层顺序一致，空对象则使用默认样式
Name | Type | Description
--- | --- | ---
`type` | String | optional style样式类型，可选参数为"point|line|polygon|building"，对应点，线，区，区矢量白模
`styleOptions` | Object | optional style具体参数对象
Name | Type | Default | Description
--- | --- | --- | ---
`color` | Color | `Cesium.Color.GHOSTWHITE` | optional 通用参数，颜色
`size` | Number |  | optional 点符号大小，仅当options.style.type="point"时生效
`outlineColor` | Color | `Cesium.Color.BLACK` | optional 边框线颜色，仅当options.style.type="point|polygon|building"时生效，当传入边框线颜色或边框线宽度参数时启用边框线
`outlineWidth` | Number | `1.0` | optional 边框线宽度，仅当options.style.type="point"时生效，当传入边框线颜色或边框线宽度参数时启用边框线,"polygon|building"边框线宽度仅能为默认值1。
`width` | Number | `1` | optional 线宽，仅当options.style.type="line"时生效
`heightField` | Number | String |  | optional 用作区矢量白模高程的属性字段名称，不设置则高程为零，仅当options.style.type="building"时生效
`heightRatio` | Number |  | optional 区矢量白模高程放缩比例，默认1.0，仅当options.style.type="building"时生效
`minimumLevel` | Number | `0` | optional 瓦片最小级别
`maximumLevel` | Number | `0` | optional 瓦片最大级别
`gdbps` | String |  | optional gdbps地址,多个图层用','隔开
`proxy` | String |  | optional 转发代理

##### Example:

    var options1 = {
           autoReset: false,
           tileFeaturesCount: 400,
           filter: {
                 where: 'OBJECTID>500'
           },
           style: {
                 type: 'building',
                 styleOptions: {
                     heightField: 'HEIGHT',
                     heightRatio: 10,
                     color: Cesium.Color.WHITE,
                     outline: true
                 }
           }
       }
       //多图层style设置,多图层filter同理
       var options2 = {
           style: [
               {
                   type: 'line',
                   styleOptions: {
                       color: Cesium.Color.WHITE,
                       width: 1.0
                   }
               },
               //空对象，即使用默认样式
               {},
               {
                   type: 'line',
                   styleOptions: {
                       color: Cesium.Color.RED,
                       width: 1.0
               }
                   }
           ]
       }
       //地图文档加载示例
       var layerIndexs;
       url = 'http://localhost:6163/igs/rest/mrms/docs/二维矢量';
       options = {
           layers: 'layers=show:0,1'
           getDocLayerIndexes: function (indexs) {
                 console.log(indexs);
                 layerIndexs = indexs;
           },
       }
       viewer.scene.layers.appendVectorLayer(url, options);

       //gdbp地址加载示例
       url_gdbp = 'http://localhost:6163/igs/rest/mrfs/layer';
       option_gdbp={
           layers:'gdbp1,gdbp2,gdbp3'
           getDocLayerIndexes: function (indexs) {
                 console.log(indexs);
                 layerIndexs = indexs;
           },
       }
       viewer.scene.layers.appendVectorLayer(url_gdbp, option_gdbp);
       //移除
       for(var i = 0; i < layerIndexs; i++){
           viewer.scene.layers.removeVectorLayerByID(layerIndexs[i]);
       }

#### getAllCesium3DTilesetLayers() → Array.<Cesium3DTileset>
MapGIS/Layers.js 1346

获取全部 Cesium3DTileset 图层对象

##### Returns:

返回所有的M3D图层对象

#### getAllImageryLayers() → Array.<ImageryLayer>
MapGIS/Layers.js 1648

获取全部影像图层

##### Returns:

获取全部影像图层

#### getAllM3DLayers() → Array.<MapGISM3DSet>
MapGIS/Layers.js 265

获取全部 M3D 图层对象

##### Returns:

返回所有的M3D图层对象

#### getAllSceneLayers() → Array.<SceneLayer>
MapGIS/Layers.js 792

获取全部 SceneLayer 图层

##### Returns:

获取全部 SceneLayer 图层

#### getCesium3DTilesetLayer(layerIndex) → Cesium3DTileset
MapGIS/Layers.js 1335

根据图层索引号，获取 Cesium3DTileset 图层对象

Name | Type | Description
--- | --- | ---
`layerIndex` | Number |

##### Returns:

返回 Cesium3DTileset 图层对象

##### Example:

    var layer = viewer.scene.layers.getCesium3DTilesetLayer(layerIndex);

#### getFeatureLayer(layerIndex) → MapGISFeatureLayer
MapGIS/Layers.js 1925

根据图层索引号，获取矢量图层对象

Name | Type | Description
--- | --- | ---
`layerIndex` | Number |

##### Returns:

featureLayer 返回矢量图层对象

##### Example:

    var layer = viewer.scene.layers.getFeatureLayer(layerIndex);

#### getGeojsonLayer(layerIndex) → MapGISGeojsonLayer
MapGIS/Layers.js 1975

根据图层索引号，获取geojson图层对象

Name | Type | Description
--- | --- | ---
`layerIndex` | Number |

##### Returns:

geojsonLayer 返回geojson图层对象

##### Example:

    var layer = viewer.scene.layers.getGeojsonLayer(layerIndex);

#### getGraphicsLayer(layerIndex) → GraphicsLayer
MapGIS/Layers.js 2230

根据图层索引号，获取 标绘图层对象

Name | Type | Description
--- | --- | ---
`layerIndex` | Number | 图层序号

##### Returns:

graphicsLayer返回标绘图层对象

#### getImageryLayer(layerIndex) → ImageryLayer
MapGIS/Layers.js 1638

根据图层索引号，获取影像图层对象

Name | Type | Description
--- | --- | ---
`layerIndex` | Number |

##### Returns:

ImageryLayer 返回影像图层对象

##### Example:

    var layer = viewer.scene.layers.getImageryLayer(layerIndex);

#### getLayer(index) → MapGISM3DSet|SceneLayer|Cesium3DTileset|ImageryLayer|TerrainProvider|MapGISVectorLayer
MapGIS/Layers.js 3360

按照图层索引号获取图层对象

Name | Type | Description
--- | --- | ---
`index` | Number | 图层索引号

##### Returns:

返回图层对象

#### getM3DLayer(layerIndex) → MapGISM3DSet
MapGIS/Layers.js 254

根据图层索引号，获取 M3D 图层对象

Name | Type | Description
--- | --- | ---
`layerIndex` | Number |

##### Returns:

m3dLayer 返回 M3D 图层对象

##### Example:

    var layer = viewer.scene.layers.getM3DLayer(layerIndex);

#### getSceneLayer(layerIndex) → SceneLayer
MapGIS/Layers.js 782

按索引号获取 SceneLayer 图层

Name | Type | Description
--- | --- | ---
`layerIndex` | Number | 图层索引号

##### Returns:

返回 SceneLayer 图层

#### getTerrainLayer(layerIndex) → TerrainProvider
MapGIS/Layers.js 2139

根据图层索引号，获取 地形图层对象

Name | Type | Description
--- | --- | ---
`layerIndex` | Number | 图层序号

##### Returns:

terrainLayer返回地形对象

#### getVectorLayer(layerIndex) → MapGISVectorLayer
MapGIS/Layers.js 1809

根据图层索引号，获取矢量图层对象

Name | Type | Description
--- | --- | ---
`layerIndex` | Number |

##### Returns:

vectorLayer 返回矢量图层对象

##### Example:

    var layer = viewer.scene.layers.getVectorLayer(layerIndex);

#### removeAllCesium3DTilesetLayers(destroy)
MapGIS/Layers.js 1383

删除全部 Cesium3DTileset 图层

Name | Type | Default | Description
--- | --- | --- | ---
`destroy` | Boolean | `true` | optional 销毁内存

##### Example:

    viewer.scene.removeAllCesium3DTilesetLayers(true);

#### removeAllFeatureLayers(destroy)
MapGIS/Layers.js 1953

移除所有featureLayer矢量图层

Name | Type | Description
--- | --- | ---
`destroy` | Boolean | 是否销毁内存

#### removeAllGeojsonLayers(destroy)
MapGIS/Layers.js 2003

移除所有geojson图层

Name | Type | Description
--- | --- | ---
`destroy` | Boolean | 是否销毁内存

#### removeAllGraphicsLayers()
MapGIS/Layers.js 2252

移除所有标绘图层

#### removeAllImageryLayers(destroy)
MapGIS/Layers.js 1674

移除所有影像图层

Name | Type | Description
--- | --- | ---
`destroy` | Boolean | 是否销毁内存

#### removeAllLayers(destroy)
MapGIS/Layers.js 3423

移除所有图层

Name | Type | Default | Description
--- | --- | --- | ---
`destroy` | Boolean | `true` | optional 是否销毁内存

#### removeAllM3DLayers(destroy)
MapGIS/Layers.js 302

删除全部 M3D 图层

Name | Type | Default | Description
--- | --- | --- | ---
`destroy` | Boolean | `true` | optional 销毁内存

##### Example:

    viewer.scene.removeAllM3DLayers(true);

#### removeAllSceneLayers(destroy)
MapGIS/Layers.js 816

移除全部 SceneLayer 图层

Name | Type | Description
--- | --- | ---
`destroy` | Boolean | 是否清理内存

#### removeAllTerrainLayers()
MapGIS/Layers.js 2163

移除所有地形图层

#### removeAllVectorLayers(destroy)
MapGIS/Layers.js 1837

移除所有矢量图层

Name | Type | Description
--- | --- | ---
`destroy` | Boolean | 是否销毁内存

#### removeCesium3DTilesetLayerByID(layerIndex, destroy)
MapGIS/Layers.js 1359

按照图层号移除 Cesium3DTileset 图层

Name | Type | Default | Description
--- | --- | --- | ---
`layerIndex` | Number |  |
`destroy` | Boolean | `true` | optional 销毁内存

##### Example:

    viewer.scene.layers.removeCesium3DTilesetLayerByID(layerIndex, true);

#### removeFeatureLayerByID(layerIndex, destroy)
MapGIS/Layers.js 1936

移除featureLayer矢量图层

Name | Type | Description
--- | --- | ---
`layerIndex` | Number | 图层序号
`destroy` | Boolean | 是否销毁内存

#### removeGeojsonLayerByID(layerIndex, destroy)
MapGIS/Layers.js 1986

移除geojson图层

Name | Type | Description
--- | --- | ---
`layerIndex` | Number | 图层序号
`destroy` | Boolean | 是否销毁内存

#### removeGraphicsLayerByIndex(layerIndex)
MapGIS/Layers.js 2239

移除标绘图层

Name | Type | Description
--- | --- | ---
`layerIndex` | Number | 图层序号

#### removeImageryLayerByID(layerIndex, destroy)
MapGIS/Layers.js 1657

移除影像图层

Name | Type | Description
--- | --- | ---
`layerIndex` | Number | 图层序号
`destroy` | Boolean | 是否销毁内存

#### removeLayerByID(index, destroy)
MapGIS/Layers.js 3392

按图层索引号删除图层

Name | Type | Default | Description
--- | --- | --- | ---
`index` | Number |  | 图层索引
`destroy` | Boolean | `true` | optional 是否销毁内存

#### removeM3DLayerByID(layerIndex, destroy)
MapGIS/Layers.js 278

按照图层号移除图层

Name | Type | Default | Description
--- | --- | --- | ---
`layerIndex` | Number |  |
`destroy` | Boolean | `true` | optional 销毁内存

##### Example:

    viewer.scene.layers.removeM3DLayerByID(layerIndex, true);

#### removeSceneLayerByID(layerIndex, destroy)
MapGIS/Layers.js 801

按索引号移除 SceneLayer 图层

Name | Type | Description
--- | --- | ---
`layerIndex` | Number | 图层序号
`destroy` | Boolean | 是否销毁内存

#### removeTerrainLayerByID(layerIndex)
MapGIS/Layers.js 2148

移除地形图层

Name | Type | Description
--- | --- | ---
`layerIndex` | Number | 图层序号

#### removeVectorLayerByID(layerIndex, destroy)
MapGIS/Layers.js 1820

移除矢量图层

Name | Type | Description
--- | --- | ---
`layerIndex` | Number | 图层序号
`destroy` | Boolean | 是否销毁内存

#### zoomToImageryLayer(layer, options)
MapGIS/Layers.js 1696

图层跳转

Name | Type | Description
--- | --- | ---
`layer` | ImageryLayer | 影像图层对象
`options` | Object |
Name | Type | Default | Description
--- | --- | --- | ---
`duration` | Number | `0` | optional 跳转时间，以秒为单位
`orientation` | HeadingPitchRange | `new HeadingPitchRange(0.0, -0.5, boundingSphere.radius * 2.5)` | optional 镜头朝向

#### zoomToM3DLayer(layer, options)
MapGIS/Layers.js 324

图层跳转

Name | Type | Description
--- | --- | ---
`layer` | MapGISM3DSet | M3D 图层对象
`options` | Object |
Name | Type | Default | Description
--- | --- | --- | ---
`duration` | Number | `0` | optional 跳转时间，以秒为单位
`orientation` | HeadingPitchRange | `new HeadingPitchRange(0.0, -0.5, boundingSphere.radius * 2.5)` | optional 镜头朝向

#### zoomToSceneLayer(layer, options)
MapGIS/Layers.js 838

图层跳转

Name | Type | Description
--- | --- | ---
`layer` | SceneLayer | G3D 图层对象
`options` | Object |
Name | Type | Default | Description
--- | --- | --- | ---
`duration` | Number | `0` | optional 跳转时间，以秒为单位
`orientation` | HeadingPitchRange | `new HeadingPitchRange(0.0, -0.5, boundingSphere.radius * 2.5)` | optional 镜头朝向

#### zoomToTerrainLayer(layer, options)
MapGIS/Layers.js 2183

图层跳转,地形

Name | Type | Description
--- | --- | ---
`layer` | TerrainProvider | 地形 图层对象
`options` | Object |
Name | Type | Default | Description
--- | --- | --- | ---
`duration` | Number | `0` | optional 跳转时间，以秒为单位
`destination` | Cartesian3 | Rectangle |  | optional 视野跳转位置