#### # new ThemeLayer(name, options)

专题图层基类，调用建议使用其子类实现类。

#### 参数:

名称 | 类型 | 默认值 | 描述
--- | --- | --- | ---
`name` | string |  | 专题图图层名称。
`options` | Object |  | 可选参数。
`id` | string |  | 专题图层 ID。默认使用 CommonUtil.createUniqueID("themeLayer_") 创建专题图层 ID。
`opacity` | number | 1 | 图层透明度。

绑定事件:

- zondy.themelayer.ThemeLayer#event:featuresremoved

### 继承关系

- L.Layer

### 方法

#### # addFeatures(features)

向专题图图层中添加数据。

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`features` | Object | 待转要素。

#### # destroyFeatures(features)

销毁要素。

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`features` | Array.<zondy.Feature.Vector> | 将被销毁的要素。

#### # getEvents()

获取图层事件。

返回值:

返回图层支持的事件。

类型: Object

#### # getFeatureBy(property, value)

在专题图的要素数组 features 里面遍历每一个 feature，当 feature[property] === value 时，返回此 feature（并且只返回第一个）。

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`property` | string | 要的某个属性名。
`value` | string | 对应属性名得值。

#### # getFeatureById(featureId)

通过给定一个 ID，返回对应的矢量要素,如果不存在则返回 null。

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`featureId` | number | 要素 ID。

#### # getFeatures()

查看当前图层中的有效数据。

返回值:

返回图层中的有效数据。

类型: Array

#### # getFeaturesByAttribute(attrName, attrValue)

通过给定一个属性的 key 值和 value 值，返回所有匹配的要素数组。

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`attrName` | string | key 值。
`attrValue` | string | value 值。

返回值:

返回所有匹配的要素数组。

类型: Array

#### # getLocalXY(coordinate)

地理坐标转为像素坐标。

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`coordinate` | Array |

#### # off(event, callback, context)

移除专题要素事件监听。

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`event` | Event | 监听事件。
`callback` | function | 回调函数。
`context` | string | 信息。

#### # on(event, callback, context)

添加专题要素事件监听。添加专题要素事件监听。

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`event` | Event | 监听事件。
`callback` | function | 回调函数。
`context` | string | 信息。

#### # onRemove(map)

删除某个地图。

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`map` | L.Map | 要删除的地图。

#### # redraw()

重绘该图层。

返回值:

返回是否重绘成功。

类型: boolean

#### # redrawThematicFeatures(bounds)

抽象方法，可实例化子类必须实现此方法。

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`bounds` | L.bounds | 重绘专题要素范围。

#### # removeAllFeatures()

清除当前图层所有的矢量要素。

#### # removeFeatures(features)

从专题图中删除 feature。这个函数删除所有传递进来的矢量要素。

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`features` | Array.<zondy.Feature.Vector> | 将被删除的要素。

#### # setOpacity(opacity)

设置图层的不透明度,取值 [0-1] 之间。

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`opacity` | number | 不透明度。

#### # update(bounds)

更新图层。

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`bounds` | L.bounds | 图层范围。

### 事件

#### # changelayer

图层属性改变之后触发。

##### 属性:

Name | Type | Description
--- | --- | ---
`layer` | Object | 图层。
`property` | string | 图层属性。

#### # featuresremoved

删除的要素成功之后触发。

##### 属性:

Name | Type | Description
--- | --- | ---
`features` | Array.<zondy.Feature.Vector> | 事件对象。
`succeed` | boolean | 要输是否删除成功，true 为删除成功，false 为删除失败。