#### # new ArcGISMapImageLayer(options)

ArcGIS地图图片图层，
目前二维上支持4326(包括4490，4214以及4610)，3857以及EPSG支持的自定义坐标系，三维上仅支持4326(包括4490，4214以及4610)以及3857坐标系，会自动读取元信息上的坐标系，不需要用户指定
[ES5引入方式]：
Zondy.Layer.ArcGISMapImageLayer()
[ES6引入方式]：
import { ArcGISMapImageLayer } from "@mapgis/webclient-common"
针对图层的操作请在图层加载完毕事件中进行
Layer.on('layerview-created', function (result) {
console.log("加载完毕:", result.layer)
});
如果不想在该事件中放入业务代码，则请确认图层资源已加载完毕后再进行操作
if(layer.loadStatus === 'loaded') {
// 你的业务逻辑
}

#### 参数:

名称 | 类型 | 默认值 | 描述
--- | --- | --- | ---
`options` | Object |  | 构造参数
`url` | String |  | 服务基地址， https://{ip}:{port}/arcgis/rest/services/{serviceName}/MapServer，参考示例：[ArcGIS的地图图片图层示例] 删除图层方法：[删除图层]
`id` | String |  | 图层id，不给则给一个随机的id
`opacity` | Number | 1 | 图层透明度，0到1之间的值，0为完全透明，1为不透明，参考示例：[设置图层透明度]
`visible` | Boolean | true | 图层显示或隐藏，true则显示，false则隐藏，参考示例：[设置图层显示或隐藏]
`spatialReference` | SpatialReference |  | 图层坐标系，支持4326(包含4490，4214以及4610)、3857以及EPSG上的自定义坐标系，坐标系默认从元信息中获取，也可指定坐标系， 参考示例：[指定图层的坐标系示例]
`imageWidth` | Number | 256 | 图片宽度，单位px，参考示例：[设置图片大小]
`imageHeight` | Number | 256 | 图片高度，单位px，参考示例：[设置图片大小]
`minScale` | Number | 0 | 最小缩放级数，仅会请求级数大于等于minScale的图片
`maxScale` | Number | 19 | 最大缩放级数，仅会请求级数小于等于maxScale的图片
`tokenKey` | String | 'token' | token名
`tokenValue` | String |  | token值，只有当tokenValue存在时，才会绑定token
`imageTransparency` | Boolean | true | 图片中没有数据的地方是否透明，默认为true，即透明

查看源代码 common/document/layer/arcgis/ArcGISMapImageLayer.js, line 10

绑定事件:

- Layer#event:图层加载完毕事件
- Layer#event:图层销毁完毕事件
- Layer#event:图层更新完毕事件

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

[1、加载图层资源]
[2、根据子图层id查询子图层]
[3、刷新图层]
[4、根据范围和大小获取image标签]
[5、创建一个该服务的子图层克隆对象]
[6、根据参数获取图片的url]
[7、更新子图层]
[8、通过传入的json构造并返回一个新的几何对象]
`9、导出为json对象`
`10、克隆几何对象`

##### 示例

ArcGIS的地图图片图层示例

    // 初始化图层管理容器
    // ES5引入方式
    const { Map,MapView } = Zondy
    const { ArcGISMapImageLayer } = Zondy.Layer
    // ES6引入方式
    import { Map,MapView,ArcGISMapImageLayer } from "@mapgis/webclient-common"
    const map = new Map();
    // 初始化地图视图对象
    const mapView = new MapView({
      // 视图id
      viewId: "viewer-id",
      // 图层管理容器
      map: map
    });
    // 添加图层
    const arcGISMapImageLayer = new ArcGISMapImageLayer({
      // 服务基地址
      url: 'http://{ip}:{port}/arcgis/rest/services/{serviceName}/MapServer'
    });
    map.add(arcGISMapImageLayer);

指定图层的坐标系示例

    // ES5引入方式
    const { ArcGISMapImageLayer } = Zondy.Layer
    const { SpatialReference } = Zondy
    // ES6引入方式
    import { ArcGISMapImageLayer,SpatialReference } from "@mapgis/webclient-common"
    // 添加图层
    const arcGISMapImageLayer = new ArcGISMapImageLayer({
      // 服务基地址
      url: 'http://{ip}:{port}/arcgis/rest/services/{serviceName}/MapServer',
      // 自定义坐标新
      spatialReference: new SpatialReference({
        // 指定的wkid号，可在https://epsg.io/网站查询
        wkid: '指定的wkid号'
      })
    });
    map.add(arcGISMapImageLayer);

地图图层示例 - 设置图片大小

    // ES5引入方式
    const { Map,MapView } = Zondy
    const { ArcGISMapImageLayer } = Zondy.Layer
    // ES6引入方式
    import { Map,MapView,ArcGISMapImageLayer } from "@mapgis/webclient-common"
    // 初始化图层管理容器
    const map = new Map();
    // 初始化地图视图对象
    const mapView = new MapView({
      // 视图id
      viewId: "viewer-id",
      // 图层管理容器
      map: map
    });
    // 添加图层
    const arcGISMapImageLayer = new ArcGISMapImageLayer({
      // 服务基地址
      url: 'http://{ip}:{port}/arcgis/rest/services/{serviceName}/MapServer',
      // 瓦片宽度
      imageWidth: 512,
      // 瓦片高度
      imageHeight: 512
    });
    map.add(arcGISMapImageLayer);

设置图层透明度

    // ES5引入方式
    const { ArcGISMapImageLayer } = Zondy.Layer
    // ES6引入方式
    import { ArcGISMapImageLayer } from "@mapgis/webclient-common"
    // 初始化时设置
    const arcGISMapImageLayer = new ArcGISMapImageLayer({
      // 服务基地址
      url: 'http://{ip}:{port}/arcgis/rest/services/{serviceName}/MapServer',
      // 设置透明度
      opacity: 1.0
    });
    map.add(arcGISMapImageLayer);
    // 加载完成后设置
    arcGISMapImageLayer.on('layerview-created', function (result) {
      console.log("加载完毕:", result.layer)
      // 视点跳转
      ArcGISMapImageLayer.opacity = 0.5
    })

显示或隐藏图层

     // ES5引入方式
    const { ArcGISMapImageLayer } = Zondy.Layer
    // ES6引入方式
    import { ArcGISMapImageLayer } from "@mapgis/webclient-common"
    // 初始化时设置
    const arcGISMapImageLayer = new ArcGISMapImageLayer({
      // 服务基地址
      url: 'http://{ip}:{port}/arcgis/rest/services/{serviceName}/MapServer',
      // 显示或隐藏图层
      visible: true
    });
    map.add(arcGISMapImageLayer);
    // 加载完成后设置
    arcGISMapImageLayer.on('layerview-created', function (result) {
      console.log("加载完毕:", result.layer)
      // 显示或隐藏图层
      arcGISMapImageLayer.visible = !ArcGISMapImageLayer.visible
    })

删除图层

    map.remove(arcGISMapImageLayer)

图层顺序

    // 加载完毕后，更改图层顺序
    map.reorder(arcGISMapImageLayer, '要移动到的index');

### 继承关系

- MapImageLayer

### 成员变量

类型: Collection

#### # allSublayers

所有子图层信息

Inherited From:
  - MapImageLayer#allSublayers

查看源代码 common/document/layer/baseLayer/MapImageLayer.js, line 77

类型: String

#### # readonly capabilities

可提供的服务

Inherited From:
  - MapImageLayer#capabilities

查看源代码 common/document/layer/baseLayer/MapImageLayer.js, line 46

类型: String

#### # readonly documentInfo

地图文档信息

Inherited From:
  - MapImageLayer#documentInfo

查看源代码 common/document/layer/baseLayer/MapImageLayer.js, line 40

类型: Boolean

#### # dynamicProjectionEnabled

是否开启动态投影

查看源代码 common/document/layer/baseLayer/MapImageLayer.js, line 83

类型: String

#### # readonly extent

图层范围，从服务中读取，仅会请求在该范围内的瓦片

Overrides:
  - MapImageLayer#extent

查看源代码 common/document/layer/baseLayer/MapImageLayer.js, line 154

类型: String

#### # imageFormat

图片格式

Inherited From:
  - MapImageLayer#imageFormat

查看源代码 common/document/layer/baseLayer/MapImageLayer.js, line 67

类型: Number

#### # imageHeight

瓦片化显示时，瓦片高度

Inherited From:
  - MapImageLayer#imageHeight

查看源代码 common/document/layer/baseLayer/MapImageLayer.js, line 62

类型: Boolean

#### # imageTransparency

图片中没有数据的地方是否透明

Inherited From:
  - MapImageLayer#imageTransparency

查看源代码 common/document/layer/baseLayer/MapImageLayer.js, line 72

类型: Number

#### # imageWidth

瓦片化显示时，瓦片宽度

Inherited From:
  - MapImageLayer#imageWidth

查看源代码 common/document/layer/baseLayer/MapImageLayer.js, line 57

类型: String

#### # readonly mapName

地图名称

Inherited From:
  - MapImageLayer#mapName

查看源代码 common/document/layer/baseLayer/MapImageLayer.js, line 33

类型: String

#### # renderMode

渲染模式，分为瓦片渲染'tile'和图像渲染'image'

Inherited From:
  - MapImageLayer#renderMode

查看源代码 common/document/layer/baseLayer/MapImageLayer.js, line 52

类型: Array

#### # sublayers

子图层对象

查看源代码 common/document/layer/arcgis/ArcGISMapImageLayer.js, line 453

类型: String

#### # readonly type

图层类型

查看源代码 common/document/layer/arcgis/ArcGISMapImageLayer.js, line 179

类型: String

#### # readonly url

服务基地址

Inherited From:
  - MapImageLayer#url

查看源代码 common/document/layer/baseLayer/MapImageLayer.js, line 26

### 方法

#### # static fromJSON(jsonopt)

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

#### 参数:

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

查看源代码 common/document/layer/arcgis/ArcGISMapImageLayer.js, line 410

##### 示例

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

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

#### # clone()

克隆方法

Inherited From:
  - MapImageLayer#clone

查看源代码 common/document/layer/baseLayer/MapImageLayer.js, line 148

返回值:

图层

类型: FeatureLayer

#### # createServiceSublayers()

创建一个该服务的子图层克隆对象，注意不是本地的子图层对象

查看源代码 common/document/layer/arcgis/ArcGISMapImageLayer.js, line 367

返回值:

服务上的子图层对象

类型: Array

#### # fetchImage(extent, widthopt, heightopt)

根据范围和大小获取image标签

#### 参数:

名称 | 类型 | 默认值 | 描述
--- | --- | --- | ---
`extent` | Extent |  |
`width` | Number | 256 | 图片宽度，单位px
`height` | Number | 256 | 图片高度，单位px

查看源代码 common/document/layer/arcgis/ArcGISMapImageLayer.js, line 345

##### 示例

根据范围和大小获取image标签

     // ES5引入方式
    const { Extent } = Zondy.Geometry
    // ES6引入方式
    import { Extent } from "@mapgis/webclient-common"
    arcGISMapImageLayer.fetchImage({
      // 你的范围
      extent: new Extent(),
      // 图片宽度
      width: 256,
      // 图片高度
      height: 256
    }).then((image) => {
      // 这里返回一个html的image标签
    })

#### # findSublayerById(id)

根据子图层id查询子图层

#### 参数:

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

查看源代码 common/document/layer/arcgis/ArcGISMapImageLayer.js, line 296

返回值:

Object 子图层信息

#### # getImageUrl(options)

根据参数获取图片的url

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`options` |  |
`extent` | Extent | 图片范围
`width` | Number | 图片宽度
`height` | Number | 图片高度

查看源代码 common/document/layer/arcgis/ArcGISMapImageLayer.js, line 392

返回值:

String 图片的url

##### 示例

根据参数获取图片的url

     // ES5引入方式
    const { Extent } = Zondy.Geometry
    // ES6引入方式
    import { Extent } from "@mapgis/webclient-common"
    const url = arcGISMapImageLayer.getImageUrl({
      // 你的范围
      extent: new Extent(),
      // 图片宽度
      width: 256,
      // 图片高度
      height: 256
    })

#### # load()

加载图层资源

查看源代码 common/document/layer/arcgis/ArcGISMapImageLayer.js, line 210

##### 示例

不加载图层，仅获取图层信息

    // ES5引入方式
    const { ArcGISMapImageLayer } = Zondy.Layer
    // ES6引入方式
    import { ArcGISMapImageLayer } from "@mapgis/webclient-common"
    // 初始化图层
    const arcGISMapImageLayer = new ArcGISMapImageLayer({
      // 服务基地址
      url: 'http://{ip}:{port}/arcgis/rest/services/{serviceName}/MapServer',
    });
    arcGISMapImageLayer.load().then((result) => {
      // 获取完图层信息
      console.log(result)
    })

#### # refresh()

刷新图层

查看源代码 common/document/layer/arcgis/ArcGISMapImageLayer.js, line 313

#### # setSubLayer(ArcGISMapImageSubLayer)

更新子图层

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`ArcGISMapImageSubLayer` | ArcGISMapImageSubLayer | 要更新的子图层

查看源代码 common/document/layer/arcgis/ArcGISMapImageLayer.js, line 419

#### # toJSON()

转换为json对象

Inherited From:
  - MapImageLayer#toJSON

查看源代码 common/document/layer/baseLayer/MapImageLayer.js, line 113

返回值:

json对象

类型: Object