#### # new GeoFeatureThemeLayer(name, options)

地理几何专题要素型专题图层基类。此类型专题图的专题要素形状就是由 feature.geometry 决定。此类不建议直接实例化调用。

#### 参数:

名称 | 类型 | 默认值 | 描述
--- | --- | --- | ---
`name` | string |  | 专题图名。
`options` | Object |  | 需要设置的参数对象。
`id` | string |  | 专题图层 ID。默认使用 CommonUtil.createUniqueID("themeLayer_") 创建专题图层 ID。
`opacity` | number | 1 | 图层透明度。
`nodesClipPixel` | number | 2 | 节点抽稀像素距离。
`isHoverAble` | boolean | false | 图形是否在 hover 时高亮。
`isMultiHover` | boolean | false | 是否多图形同时高亮，用于高亮同一个数据对应的所有图形（如：多面）。
`isClickAble` | boolean | true | 图形是否可点击。
`isAllowFeatureStyle` | boolean | false | 是否允许 feature 样式（style） 中的有效属性应用到专题图层。禁止对专题要素使用数据（feature）的 style。此属性可强制将数据 feature 的 style 中有效属性应用到专题要素上，且拥有比图层 style 和 styleGroups 更高的优先级，使专题要素的样式脱离专题图层的控制。可以通过此方式实现对特殊数据（feature） 对应专题要素赋予独立 style。

绑定事件:

- zondy.themelayer.GeoFeatureThemeLayer#event:beforefeaturesadded

### 继承关系

- zondy.themelayer.ThemeLayer

### 方法

#### # addFeatures(features)

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

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`features` | Object | 待填加的要素。

Overrides:
  - zondy.themelayer.ThemeLayer#addFeatures

#### # clear()

清除的内容包括数据（features） 、专题要素、缓存。

#### # clearCache()

清除缓存数据。

#### # createThematicFeature(feature)

创建专题要素。

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`feature` | Object | 要创建的要素。

#### # destroyFeatures(features)

销毁要素。

#### 参数:

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

Inherited From:
  - zondy.themelayer.ThemeLayer#destroyFeatures

#### # getCacheCount()

获取当前缓存数量。

返回值:

返回当前缓存数量。

类型: number

#### # getEvents()

获取图层事件。

Inherited From:
  - zondy.themelayer.ThemeLayer#getEvents

返回值:

返回图层支持的事件。

类型: Object

#### # getFeatureBy(property, value)

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

#### 参数:

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

Inherited From:
  - zondy.themelayer.ThemeLayer#getFeatureBy

#### # getFeatureById(featureId)

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

#### 参数:

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

Inherited From:
  - zondy.themelayer.ThemeLayer#getFeatureById

#### # getFeatures()

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

Inherited From:
  - zondy.themelayer.ThemeLayer#getFeatures

返回值:

返回图层中的有效数据。

类型: Array

#### # getFeaturesByAttribute(attrName, attrValue)

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

#### 参数:

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

Inherited From:
  - zondy.themelayer.ThemeLayer#getFeaturesByAttribute

返回值:

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

类型: Array

#### # getLocalXY(coordinate)

地理坐标转为像素坐标。

#### 参数:

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

Inherited From:
  - zondy.themelayer.ThemeLayer#getLocalXY

#### # getShapesByFeatureID(featureID)

通过 FeatureID 获取 feature 关联的所有图形。如果不传入此参数，函数将返回所有图形。

#### 参数:

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

#### # initialize(name, options)

初始化。

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`name` | string | 专题图名。
`options` | Object | 需要设置的参数对象。

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

移除专题要素事件监听。

#### 参数:

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

Inherited From:
  - zondy.themelayer.ThemeLayer#off

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

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

#### 参数:

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

Inherited From:
  - zondy.themelayer.ThemeLayer#on

#### # onRemove(map)

删除某个地图。

#### 参数:

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

Inherited From:
  - zondy.themelayer.ThemeLayer#onRemove

#### # redraw()

重绘该图层。

Overrides:
  - zondy.themelayer.ThemeLayer#redraw

#### # redrawThematicFeatures(bounds)

重绘所有专题要素。 此方法包含绘制专题要素的所有步骤，包含用户数据到专题要素的转换，抽稀，缓存等步骤。 地图漫游时调用此方法进行图层刷新。

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`bounds` | L.bounds | 重绘的范围。

Overrides:
  - zondy.themelayer.ThemeLayer#redrawThematicFeatures

#### # removeAllFeatures()

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

Overrides:
  - zondy.themelayer.ThemeLayer#removeAllFeatures

#### # removeFeatures(features)

从专题图中删除 feature。这个函数删除所有传递进来的矢量要素。参数中的 features 数组中的每一项，必须是已经添加到当前图层中的 feature。

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`features` | Object | 要删除的要素。

Overrides:
  - zondy.themelayer.ThemeLayer#removeFeatures

#### # setMaxCacheCount(cacheCount)

设置最大缓存数量。

#### 参数:

名称 | 类型 | 描述
--- | --- | ---
`cacheCount` | number | 最大缓存量。

#### # setOpacity(opacity)

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

#### 参数:

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

Inherited From:
  - zondy.themelayer.ThemeLayer#setOpacity

#### # update(bounds)

更新图层。

#### 参数:

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

Inherited From:
  - zondy.themelayer.ThemeLayer#update

### 事件

#### # beforefeaturesadded

向专题图图层中添加数据之前触发。

##### 属性:

Name | Type | Description
--- | --- | ---
`features` | Object | 事件对象。

#### # changelayer

图层属性改变之后触发。

##### 属性:

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

Inherited From:
  - zondy.themelayer.ThemeLayer#event:changelayer

#### # featuresremoved

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

##### 属性:

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

Inherited From:
  - zondy.themelayer.ThemeLayer#event:featuresremoved