#### # new IGSVectorTileLayer(options)

IGS矢量瓦片图层 支持IGS1.0和2.0两个服务版本，目前二维和三维上支持4326(包括4490，4214以及4610)，3857，会自动读取元信息上的坐标系，不需要用户指定，
[ES5引入方式]：
Zondy.Layer.IGSVectorTileLayer()
[ES6引入方式]：
import { IGSVectorTileLayer } from "@mapgis/webclient-common"
针对图层的操作请在图层加载完毕事件中进行
Layer.on('layerview-created', function (result) {
console.log("加载完毕:", result.layer)
});
如果不想在该事件中放入业务代码，则请确认图层资源以加载完毕后再进行操作
if(layer.loadStatus === 'loaded') {
// 你的业务逻辑
}
注意:三维上,不支持简单Marker样式设定;二维上,简单Marker的颜色,外边线样式,旋转角度无法在图层初始化和初始化后修改,须在制作数据时进行指定

#### 参数:

名称 | 类型 | 默认值 | 描述
--- | --- | --- | ---
`options` | Object |  | 构造参数
`url` | String |  | 服务基地址, IGS1.0的服务为：http://{ip}:6163/igs/rest/mrms/tiles/{serviceName}，需要注意由于igs1.0版本不再新增功能，无法解析矢量瓦片Lod信息以及坐标系信息，目前需要在矢量瓦片图层接口上显式设置坐标系信息，默认坐标系3857，可选4326或3857，参考示例：[IGS1.0的矢量瓦片示例] IGS2.0的服务为：http://{ip}:{port}/igs/rest/services/VectorTile/{serviceName}/VectorTileServer，参考示例：[IGS2.0的矢量瓦片示例] 删除图层方法：[删除图层]
`minScale` | Number | null | 最小比例尺，只有当地图视图的比例尺大于最小比例尺时显示矢量瓦片图层
`maxScale` | Number | null | 最大比例尺，只有当地图视图的比例尺小于最大比例尺时显示矢量瓦片图层
`opacity` | Number | 1 | 图层透明度，0到1之间的值，0为完全透明，1为不透明，参考示例：[设置图层透明度]
`tokenKey` | String | 'token' | token名
`tokenValue` | String |  | token值，只有当tokenValue存在时，才会绑定token
`visible` | Boolean | true | 图层显示或隐藏，true则显示，false则隐藏，参考示例：[设置图层显隐]
`sublayers` | Array.<IGSVectorTileSubLayer> | [] | 子图层信息。指定的和服务器端获取图层的交集, 默认不设置,加载全部图层。可设置子图层的可见性，以及专题图参数。
`option.labelsRenderMode` | String | 'off-screen' | 指定矢量瓦片注记的渲染模式,仅在三维上有效。on-screen表示使用三维接口实时渲染注记；off-screen表示通过先将注记渲染到图片上，再通过三维接口渲染到屏幕。
`options.clippingArea` | Polygon | Extent | Circle | null | null | 图层空间裁剪范围，仅支持多边形裁剪、矩形裁剪、圆形裁剪 专题图参数仅支持IGS2.0服务，目前子图层支持的专题图如下： `1、单值专题图` `2、分段专题图` `3、统一专题图` 参考示例： [1、显示所有子图层] [2、根据id显示子图层] [3、通过修改子图参数，设置子图层显隐] [4、设置子图层专题图-单值专题图] [5、设置子图层专题图-分段专题图] [6、设置子图层专题图-统一专题图] [7、通过修改子图参数，设置子图层专题图]

查看源代码 common/document/layer/igserver/IGSVectorTileLayer.js, line 13

绑定事件:

- Layer#event:图层加载完毕事件
- Layer#event:图层销毁完毕事件
- Layer#event:图层更新完毕事件
- Layer#event:图层显隐更新完毕事件
- Layer#event:图层透明度更新完毕事件

##### 支持如下方法：

[1、根据子图层id查询图层]
[2、获取矢量瓦片样式]
[3、通过传入的json构造并返回一个新的几何对象]
`4、导出为json对象`
`5、克隆几何对象` [6、获取图层布局属性]
[7、设置图层布局属性]
[8、获取图层绘制属性]
[9、设置图层绘制属性]
[10、获取图层]
[11、设置图层属性对象]
[12、删除图层]
[13、设置图层可见性]
[14、获取图层可见性]
[15、获取属性过滤条件]
[16、属性过滤]
[17、获取图层最小、最大层级]
[18、设置图层最小、最大层级]

##### 示例

IGS1.0的矢量瓦片示例

    //初始化地图管理容器
    // ES5引入方式
    const { IGSVectorTileLayer } = Zondy.Layer
    const { Map,MapView,SpatialReference } = Zondy
    // ES6引入方式
    import { IGSVectorTileLayer,Map,MapView } from "@mapgis/webclient-common"
    const map = new Map();
    //初始化地图引擎
    const mapView = new MapView({
      //指定视图id
      viewId: "viewer-id",
      //绑定地图管理容器
      map: map
    });
    //添加矢量瓦片图层
    const igsVectorTileLayer = new IGSVectorTileLayer({
      url: 'http://{ip}:6163/igs/rest/mrms/tiles/{serviceName}'，
      spatialReference:new SpatialReference('EPSG:4326')
    });
    map.add(igsVectorTileLayer);

IGS2.0的矢量瓦片示例

     // ES5引入方式
    const { IGSVectorTileLayer } = Zondy.Layer
    const { Map,MapView } = Zondy
    // ES6引入方式
    import { IGSVectorTileLayer } from "@mapgis/webclient-common"
    //初始化地图管理容器
    const map = new Map();
    //初始化地图引擎
    const mapView = new MapView({
      //指定视图id
      viewId: "viewer-id",
      //绑定地图管理容器
      map: map
    });
    //添加矢量瓦片图层
    const igsVectorTileLayer = new IGSVectorTileLayer({
      url: 'http://{ip}:{port}/igs/rest/services/VectorTile/{serviceName}/VectorTileServer'
    });
    map.add(igsVectorTileLayer);

设置图层透明度

    igsVectorTileLayer.opacity = 0.5

显示或隐藏图层

    igsVectorTileLayer.visible = !igsVectorTileLayer.visible

删除图层

    map.remove(igsVectorTileLayer)

显示所有子图层

     // ES5引入方式
    const { IGSVectorTileLayer } = Zondy.Layer
    // ES6引入方式
    import { IGSVectorTileLayer } from "@mapgis/webclient-common"
    // 添加图层
    const igsVectorTileLayer = new IGSVectorTileLayer({
      // 服务基地址
      url: 'http://{ip}:{port}/igs/rest/services/VectorTile/{serviceName}/VectorTileServer',
      //默认不设置sublayers,加载全部图层
    });
    map.add(igsVectorTileLayer);

根据id显示子图层

    // ES5引入方式
    const { IGSVectorTileLayer } = Zondy.Layer
    // ES6引入方式
    import { IGSVectorTileLayer } from "@mapgis/webclient-common"
    // 添加图层
    const igsVectorTileLayer = new IGSVectorTileLayer({
      // 服务基地址
      url: 'http://{ip}:{port}/igs/rest/services/VectorTile/{serviceName}/VectorTileServer',
      // 根据id显示子图层
      sublayers: [
         {
           // 子图层id
           id: '子图层id',
           // 显示子图层
           visible: true
         }
       ]
    });
    map.add(igsVectorTileLayer);

通过修改子图参数，设置子图层显隐

    // ES5引入方式
    const { IGSVectorTileLayer } = Zondy.Layer
    // ES6引入方式
    import { IGSVectorTileLayer } from "@mapgis/webclient-common"
    // 添加图层
    const igsVectorTileLayer = new IGSVectorTileLayer({
      // 服务基地址
      url: 'http://{ip}:{port}/igs/rest/services/VectorTile/{serviceName}/VectorTileServer'
    });
    map.add(igsVectorTileLayer);
    igsVectorTileLayer.on('layerview-created', function (result) {
      console.log("加载完毕:", result.layer)
      // 根据id获取子图层
      const subLayer = igsVectorTileLayer.findSublayerById('图层id')
      // 设置子图层显隐
      subLayer.visible = false
      // 视点跳转
      sceneView.flyTo({
        extent: result.layer.extent
      })
    })

设置子图层专题图-单值专题图

    // ES5引入方式
    const { IGSVectorTileLayer } = Zondy.Layer
    const { UniqueValueRenderer } = Zondy.Renderer
    const { SimpleFillSymbol,SimpleLineSymbol } = Zondy.Symbol
    const { Color } = Zondy
    // ES6引入方式
    import { IGSVectorTileLayer,UniqueValueRenderer ,SimpleFillSymbol,SimpleLineSymbol,Color} from "@mapgis/webclient-common"
    const igsVectorTileLayer = new IGSVectorTileLayer({
      // 服务基地址,当不指定图层名称时,默认查询第一个子图层
      url: 'http://{ip}:{port}/igs/rest/services/VectorTile/{serviceName}/VectorTileServer',
      // 设置子图层专题图
      sublayers: [
         {
           // 子图层id
           id: '子图层id',
           // 设置渲染样式-单值专题图
           renderer: new UniqueValueRenderer({
             //专题图过滤字段名
             field: '你的字段名',
             // 默认样式,当没有匹配到指定值时,会使用默认样式
             //因为该数据的几何类型为区,因此设置区样式
             defaultSymbol: new SimpleFillSymbol({
               // 填充颜色
               color: 'rgba(1,1,252,0)',
               // 外边线样式
               outline: new SimpleLineSymbol({
                 //线颜色
                 color: new Color(255, 1, 0, 1),
                 //线宽
                 width: 1
               })
             }),
             //单值专题图过滤调条件数组
             uniqueValueInfos: [{
               //指定字段值
               value: "指定的值",
               //匹配到该值后的样式
               //因为该数据的几何类型为区,因此设置区样式
               symbol: new SimpleFillSymbol({
                 // 填充颜色
                 color: 'rgba(1,1,252,1)',
                 // 外边线样式
                 outline: new SimpleLineSymbol({
                   //线符号颜色
                   color: new Color(255, 1, 0, 11),
                   //线宽
                   width: 1
                   })
                 })
               },{
                 //指定字段值
                 value: "指定的值",
                 //匹配到该值后的样式
                 //因为该数据的几何类型为区,因此设置区样式
                 symbol: new SimpleFillSymbol({
                   // 填充颜色
                   color: new Color(211, 111, 11, 1)
                 })
               }]
           })
         }
      ]
    });
    map.add(igsVectorTileLayer);

设置子图层专题图-分段专题图

    // ES5引入方式
    const { IGSVectorTileLayer } = Zondy.Layer
    const { ClassBreakRenderer } = Zondy.Renderer
    const { SimpleFillSymbol,SimpleLineSymbol } = Zondy.Symbol
    const { Color } = Zondy
    // ES6引入方式
    import { IGSVectorTileLayer,ClassBreakRenderer ,SimpleFillSymbol,SimpleLineSymbol,Color} from "@mapgis/webclient-commo
    const igsVectorTileLayer = new IGSVectorTileLayer({
      // 服务基地址,当不指定图层名称时,默认查询第一个子图层
      url: 'http://{ip}:{port}/igs/rest/services/VectorTile/{serviceName}/VectorTileServer',
      // 设置子图层专题图
      sublayers: [
        {
         // 子图层id
         id: '子图层id',
         // 设置渲染样式-分段专题图
         renderer: new ClassBreakRenderer({
           //专题图过滤字段名
           field: '你的字段名',
           // 默认样式,当没有匹配到指定值时,会使用默认样式
           // 因为该数据的几何类型为区,因此设置区样式
           defaultSymbol:  new SimpleFillSymbol({
             // 填充颜色
             color: 'rgba(222,1,252,1)',
             // 线符号样式
             outline: new SimpleLineSymbol({
               //线符号颜色
               color: new Color(255, 1, 0, 1),
               //线宽
               width: 1
             })
           }),
           //分段专题图过滤条件数组
           classBreakInfos: [{
             // 最大过滤范围,field对应的值小于maxValue
             maxValue: "最大范围",
             // 最小过滤范围,field对应的值大于等于minValue
             minValue: "最小范围",
             // 匹配到该值后的样式
             // 因为该数据的几何类型为区,因此设置区样式
             symbol:  new SimpleFillSymbol({
               // 填充颜色
               color: 'rgba(1,1,252,1)',
               // 线符号样式
               outline: new SimpleLineSymbol({
                 //线符号颜色
                 color: new Color(255, 1, 0, 1),
                 //线宽
                 width: 1
               })
             })
           }]
         })
       }
     ]
    });
    map.add(igsVectorTileLayer);

通过修改子图参数，设置子图层专题图

    // ES5引入方式
    const { IGSVectorTileLayer } = Zondy.Layer
    const { ClassBreakRenderer } = Zondy.Renderer
    const { SimpleFillSymbol,SimpleLineSymbol } = Zondy.Symbol
    const { Color } = Zondy
    // ES6引入方式
    import { IGSVectorTileLayer,ClassBreakRenderer ,SimpleFillSymbol,SimpleLineSymbol,Color} from "@mapgis/webclient-commo
    const igsVectorTileLayer = new IGSVectorTileLayer({
      // 服务基地址
      url: 'http://{ip}:{port}/igs/rest/services/VectorTile/{serviceName}/VectorTileServer'
    });
    map.add(igsVectorTileLayer);
    // 根据id获取子图层
    const subLayer = igsVectorTileLayer.findSublayerById('子图层id')
    // 设置渲染样式-分段专题图
    subLayer.renderer = new ClassBreakRenderer({
        // 专题图过滤字段名
        field: '你的字段名',
        // 默认样式,当没有匹配到指定值时,会使用默认样式
        // 因为该数据的几何类型为区,因此设置区样式
        defaultSymbol:  new SimpleFillSymbol({
          // 填充颜色
          color: 'rgba(222,1,252,1)',
          // 线符号样式
          outline: new SimpleLineSymbol({
            //线符号颜色
            color: new Color(255, 1, 0, 1),
            //线宽
            width: 1
          })
        }),
        //分段专题图过滤条件数组
        classBreakInfos: [{
          // 最大过滤范围,field对应的值小于maxValue
          maxValue: "最大范围",
          // 最小过滤范围,field对应的值大于等于minValue
          minValue: "最小范围",
          // 匹配到该值后的样式
          // 因为该数据的几何类型为区,因此设置区样式
          symbol:  new SimpleFillSymbol({
            // 填充颜色
            color: 'rgba(1,1,252,1)',
            // 线符号样式
            outline: new SimpleLineSymbol({
              //线符号颜色
              color: new Color(255, 1, 0, 1),
              //线宽
              width: 1
            })
          })
        }]
      })

统一专题图

    // ES5引入方式
    const { IGSVectorTileLayer } = Zondy.Layer
    const { SimpleRenderer } = Zondy.Renderer
    const { SimpleFillSymbol,SimpleLineSymbol } = Zondy.Symbol
    const { Color } = Zondy
    // ES6引入方式
    import { IGSVectorTileLayer,SimpleRenderer ,SimpleFillSymbol,SimpleLineSymbol,Color} from "@mapgis/webclient-commo
    const igsVectorTileLayer = new IGSVectorTileLayer({
      // 服务基地址，当不指定图层名称时，默认查询第一个子图层
      url: 'http://{ip}:{port}/igs/rest/services/VectorTile/{serviceName}/VectorTileServer',
      // 设置渲染样式-统一专题图
      renderer: new SimpleRenderer({
        // 因为该数据的几何类型为区，因此设置区样式
        symbol: new SimpleFillSymbol({
          // 填充颜色
          color: new Zondy.Color(255, 0, 0),
          // 外边线样式
          outline: new SimpleLineSymbol({
            // 线颜色
            color: new Color(0, 0, 0),
            // 线宽度
            width: 1
          })
        })
      })
    })

### 继承关系

- VectorTileLayer

### 成员变量

类型: Array.<String>

#### # capabilities

服务支持的能力

查看源代码 common/document/layer/igserver/IGSVectorTileLayer.js, line 421

类型: Polygon | Extent | Circle | null

#### # clippingArea

空间裁剪范围

查看源代码 common/document/layer/igserver/IGSVectorTileLayer.js, line 1034

类型: String

#### # labelsRenderMode

指定矢量瓦片注记的渲染模式(目前仅支持三维上矢量瓦片注记的渲染)

查看源代码 common/document/layer/igserver/IGSVectorTileLayer.js, line 435

类型: Number

#### # maxScale

最大层级

Inherited From:
  - VectorTileLayer#maxScale

查看源代码 common/document/layer/baseLayer/VectorTileLayer.js, line 27

类型: Number

#### # minScale

最小层级

Inherited From:
  - VectorTileLayer#minScale

查看源代码 common/document/layer/baseLayer/VectorTileLayer.js, line 22

类型: Array.<IGSVectorTileSubLayer>

#### # sublayers

矢量瓦片子图层

查看源代码 common/document/layer/igserver/IGSVectorTileLayer.js, line 416

类型: TileInfo | undefined

#### # readonly tileInfo

图层信息

Inherited From:
  - VectorTileLayer#tileInfo

查看源代码 common/document/layer/baseLayer/VectorTileLayer.js, line 42

类型: String

#### # tokenKey

token名

Inherited From:
  - VectorTileLayer#tokenKey

查看源代码 common/document/layer/baseLayer/VectorTileLayer.js, line 32

类型: String

#### # tokenValue

token值

Inherited From:
  - VectorTileLayer#tokenValue

查看源代码 common/document/layer/baseLayer/VectorTileLayer.js, line 37

类型: String

#### # url

矢量瓦片服务地址

查看源代码 common/document/layer/igserver/IGSVectorTileLayer.js, line 411

### 方法

#### # static fromJSON(jsonopt)

通过传入的json构造并返回一个新的几何对象

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`json` | Object | JSON对象

查看源代码 common/document/layer/igserver/IGSVectorTileLayer.js, line 1007

##### 示例

通过传入的json构造并返回一个新的几何对象

    // ES5引入方式
    const { IGSVectorTileLayer } = Zondy.Layer
    // ES6引入方式
    import { IGSVectorTileLayer } from "@mapgis/webclient-common"
    const json = {
      // 服务基地址
      url: 'http://{ip}:{port}/igs/rest/services/Tile/{serviceName}/TileServer'
    }
    const igsVectorTileLayer = new IGSVectorTileLayer.fromJSON(json)

#### # clone()

克隆方法

Inherited From:
  - VectorTileLayer#clone

查看源代码 common/document/layer/baseLayer/VectorTileLayer.js, line 69

返回值:

图层

类型: Layer

#### # deleteStyleLayer(layerId)

删除图层

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`layerId` | String | 图层id

查看源代码 common/document/layer/igserver/IGSVectorTileLayer.js, line 847

#### # findSublayerById(sublayerID)

根据子图层id查询图层

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`sublayerID` | String | 图层ID

查看源代码 common/document/layer/igserver/IGSVectorTileLayer.js, line 690

返回值:

子图层

类型: IGSVectorTileSubLayer

##### 示例

根据子图层id查询图层

    // ES5引入方式
    const { IGSVectorTileLayer } = Zondy.Layer
    // ES6引入方式
    import { IGSVectorTileLayer} from "@mapgis/webclient-common"
    const igsVectorTileLayer = new IGSVectorTileLayer({
      // 服务基地址
      url: 'http://{ip}:{port}/igs/rest/services/VectorTile/{serviceName}/VectorTileServer'
    });
    map.add(igsVectorTileLayer);
    // 根据id获取子图层
    const subLayer = igsVectorTileLayer.findSublayerById('子图层id')

#### # getLayoutProperties(layerId)

获取图层布局属性

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`layerId` | String | 图层id

查看源代码 common/document/layer/igserver/IGSVectorTileLayer.js, line 725

返回值:

返回图层布局属性

类型: Object | null

#### # getPaintProperties(layerId)

获取图层绘制属性

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`layerId` | String | 图层id

查看源代码 common/document/layer/igserver/IGSVectorTileLayer.js, line 764

返回值:

返回图层绘制属性

类型: Object | null

#### # getStyleLayer(layerId)

获取图层

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`layerId` | String | 图层id

查看源代码 common/document/layer/igserver/IGSVectorTileLayer.js, line 803

返回值:

图层对象。可以查看矢量瓦片json中layers属性对图层的定义或者查看mvt style文件标准。

类型: Object | null

#### # getStyleLayerFilter(layerId)

获取属性过滤条件

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`layerId` | String | 图层ID

查看源代码 common/document/layer/igserver/IGSVectorTileLayer.js, line 899

返回值:

filter 属性过滤条件数组

类型: Array.<String>

#### # getStyleLayerVisible(layerId)

获取图层可见性

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`layerId` | String | 图层id

查看源代码 common/document/layer/igserver/IGSVectorTileLayer.js, line 885

返回值:

图层可见性状态

类型: Boolean

#### # getStyleLayerZoomRange(layerId)

获取图层最小、最大层级

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`layerId` | String | 图层id

查看源代码 common/document/layer/igserver/IGSVectorTileLayer.js, line 935

返回值:
类型: Array.<Number>

#### # loadStyle()

获取矢量瓦片样式

查看源代码 common/document/layer/igserver/IGSVectorTileLayer.js, line 989

返回值:

返回mvtStyle

类型: Promise.<Object>

##### 示例

获取矢量瓦片样式

    // ES5引入方式
    const { IGSVectorTileLayer } = Zondy.Layer
    // ES6引入方式
    import { IGSVectorTileLayer} from "@mapgis/webclient-common"
    const igsVectorTileLayer = new IGSVectorTileLayer.({
      // 服务基地址
      url: 'http://{ip}:{port}/igs/rest/services/VectorTile/{serviceName}/VectorTileServer'
    });
    const style=igsVectorTileLayer.loadStyle()

#### # setLayoutProperties(layerId, layout)

设置图层布局属性

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`layerId` | String | 图层id
`layout` | Object | 布局属性

查看源代码 common/document/layer/igserver/IGSVectorTileLayer.js, line 740

#### # setPaintProperties(layerId, paint)

设置图层绘制属性

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`layerId` | String | 图层id
`paint` | Object | 绘制属性

查看源代码 common/document/layer/igserver/IGSVectorTileLayer.js, line 779

#### # setStyleLayer(layer, index)

设置图层属性对象，可以对图层进行修改、重新排序等。布局属性和绘制属性推荐用setLayoutProperties和setPaintProperties实现。

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`layer` | Object | 图层对象
`index` | String | 图层顺序

查看源代码 common/document/layer/igserver/IGSVectorTileLayer.js, line 817

#### # setStyleLayerFilter(layerId, filter)

属性过滤

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`layerId` | String | 图层ID
`filter` | Array.<String> | 过滤条件数组

查看源代码 common/document/layer/igserver/IGSVectorTileLayer.js, line 913

#### # setStyleLayerVisible(layerId, visible)

设置图层可见性，visible为true，显示图层，为false，隐藏图层

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`layerId` | String | 图层id
`visible` | Boolean | 可见性

查看源代码 common/document/layer/igserver/IGSVectorTileLayer.js, line 872

#### # setStyleLayerZoomRange(layerId, minZoom, maxZoom)

设置图层最小、最大层级

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`layerId` | String | 图层id
`minZoom` | Number | 最小层级
`maxZoom` | Number | 最大层级

查看源代码 common/document/layer/igserver/IGSVectorTileLayer.js, line 951

#### # toJSON()

转换为json对象

Overrides:
  - VectorTileLayer#toJSON

查看源代码 common/document/layer/igserver/IGSVectorTileLayer.js, line 1019

返回值:

json对象

类型: Object