rangeThemeLayer Class

rangeThemeLayer(name, options)

范围分段专题图。

Fx构造函数

# new rangeThemeLayer(name, options)

范围分段专题图对数据(<Zondy.Feature.Vector>)属性字段(attributes)的属性值进行分段,使用不同的颜色或符号(线型、填充)渲染不同范围段的属性值。 分段专题图一般用来反映连续分布现象的数量或程度特征,如降水量的分布,土壤侵蚀强度的分布等。

参数:
名称 类型 属性 默认值 描述
name string

图层名

options Object

图层参数。

id string <optional>

专题图层 ID。默认使用 CommonUtil.createUniqueID("themeLayer_") 创建专题图层 ID。

opacity number <optional>
1

图层透明度。

nodesClipPixel number <optional>
2

节点抽稀像素距离。

isHoverAble boolean <optional>
false

图形是否在 hover 时高亮。

isMultiHover boolean <optional>
false

是否多图形同时高亮,用于高亮同一个数据对应的所有图形(如:多面)。

isClickAble boolean <optional>
true

图形是否可点击。

isAllowFeatureStyle boolean <optional>
false

是否允许 feature 样式(style) 中的有效属性应用到专题图层。禁止对专题要素使用数据(feature)的 style。此属性可强制将数据 feature 的 style 中有效属性应用到专题要素上,且拥有比图层 style 和 styleGroups 更高的优先级,使专题要素的样式脱离专题图层的控制。可以通过此方式实现对特殊数据(feature) 对应专题要素赋予独立 style。

查看源代码 leaflet/theme/RangeThemeLayer.js, line 6

继承关系

成员变量

Object

# style

专题图样式。

查看源代码 leaflet/theme/RangeThemeLayer.js, line 27

Array

# styleGroups

使用此属性需要设置 themeField 属性。 1.没有同时设置 themeField 和 styleGroups,则所有专题要素都使用本图层的 style 进行渲染; 2.同时设置 themeField 和 styleGroups,则按照 themeField 指定的字段名称获取用户数据(feature)attributes 中对应的属性值; a.如果属性值等于 styleGroups 数组里某个元素定义的 value 值,则此专题要素取 styleGroups 数组中该元素定义的 style 进行渲染。 b.如果属性值不等于 styleGroups 数组里任何元素定义的 value 值,则此专题要素按照本图层的 style 进行渲染。 此数组每个元素对象必须有两个属性:value : 与字段 themeField 相对应的属性值;style:专题要素 style。

查看源代码 leaflet/theme/RangeThemeLayer.js, line 39

String

# themeField

用于指定专题要素样式的属性字段名称。此属性字段是要用户数据(feature) attributes 中包含的字段,且字段对应的值的类型必须是数值型。使用标签分组显示还需要设置 styleGroups 属性。

查看源代码 leaflet/theme/RangeThemeLayer.js, line 33

方法

# addFeatures(features)

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

参数:
名称 类型 描述
features Object

待填加的要素。

Inherited From:

查看源代码 leaflet/theme/GeoFeatureThemeLayer.js, line 61

# clear()

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

Inherited From:

查看源代码 leaflet/theme/GeoFeatureThemeLayer.js, line 246

# createThematicFeature(feature)

创建专题要素。

参数:
名称 类型 描述
feature Object

要创建的要素。

Inherited From:

查看源代码 leaflet/theme/GeoFeatureThemeLayer.js, line 199

# destroyFeatures(features)

销毁要素。

参数:
名称 类型 描述
features Array.<Zondy.Feature.Vector>

将被销毁的要素。

Inherited From:

查看源代码 leaflet/theme/ThemeLayer.js, line 121

# getCacheCount() → {number}

获取当前缓存数量。

Inherited From:

查看源代码 leaflet/theme/GeoFeatureThemeLayer.js, line 258

返回当前缓存数量。

number

# getEvents() → {Object}

获取图层事件。

Inherited From:

查看源代码 leaflet/theme/ThemeLayer.js, line 35

返回图层支持的事件。

Object

# getFeatureBy(property, value)

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

参数:
名称 类型 描述
property string

要的某个属性名。

value string

对应属性名得值。

Inherited From:

查看源代码 leaflet/theme/ThemeLayer.js, line 232

# getFeatureById(featureId)

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

参数:
名称 类型 描述
featureId number

要素 ID。

Inherited From:

查看源代码 leaflet/theme/ThemeLayer.js, line 251

# getFeatures() → {Array}

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

Inherited From:

查看源代码 leaflet/theme/ThemeLayer.js, line 217

返回图层中的有效数据。

Array

# getFeaturesByAttribute(attrName, attrValue) → {Array}

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

参数:
名称 类型 描述
attrName string

key 值。

attrValue string

value 值。

Inherited From:

查看源代码 leaflet/theme/ThemeLayer.js, line 260

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

Array

# getLocalXY(coordinate)

地理坐标转为像素坐标。

参数:
名称 类型 描述
coordinate Array
Inherited From:

查看源代码 leaflet/theme/ThemeLayer.js, line 405

# getShapesByFeatureID(featureID)

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

参数:
名称 类型 描述
featureID number

要素 ID。

Inherited From:

查看源代码 leaflet/theme/GeoFeatureThemeLayer.js, line 280

# getStyleByData(feat) → {Array.<Zondy.Map.ThemeStyle>}

根据用户数据(feature)设置专题要素的 Style

参数:
名称 类型 描述
feat Zondy.Feature.Vector

矢量要素对象

查看源代码 leaflet/theme/RangeThemeLayer.js, line 51

专题要素的 Style

Array.<Zondy.Map.ThemeStyle>

# initialize(name, options)

初始化。

参数:
名称 类型 描述
name string

专题图名。

options Object

需要设置的参数对象。

Inherited From:

查看源代码 leaflet/theme/GeoFeatureThemeLayer.js, line 45

# off(event, callback, context)

移除专题要素事件监听。

参数:
名称 类型 描述
event Event

监听事件。

callback function

回调函数。

context string

信息。

Inherited From:

查看源代码 leaflet/theme/ThemeLayer.js, line 366

# on(event, callback, context)

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

参数:
名称 类型 描述
event Event

监听事件。

callback function

回调函数。

context string

信息。

Inherited From:

查看源代码 leaflet/theme/ThemeLayer.js, line 350

# onRemove(map)

删除某个地图。

参数:
名称 类型 描述
map L.Map

要删除的地图。

Inherited From:

查看源代码 leaflet/theme/ThemeLayer.js, line 53

# redrawThematicFeatures(bounds)

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

参数:
名称 类型 描述
bounds L.bounds

重绘的范围。

Inherited From:

查看源代码 leaflet/theme/GeoFeatureThemeLayer.js, line 128

# removeAllFeatures()

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

Inherited From:

查看源代码 leaflet/theme/GeoFeatureThemeLayer.js, line 119

# removeFeatures(features)

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

参数:
名称 类型 描述
features Object

要删除的要素。

Inherited From:

查看源代码 leaflet/theme/GeoFeatureThemeLayer.js, line 109

# setMaxCacheCount(cacheCount)

设置最大缓存数量。

参数:
名称 类型 描述
cacheCount number

最大缓存量。

Inherited From:

查看源代码 leaflet/theme/GeoFeatureThemeLayer.js, line 267

# setOpacity(opacity)

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

参数:
名称 类型 描述
opacity number

不透明度。

Inherited From:

查看源代码 leaflet/theme/ThemeLayer.js, line 315

# update(bounds)

更新图层。

参数:
名称 类型 描述
bounds L.bounds

图层范围。

Inherited From:

查看源代码 leaflet/theme/ThemeLayer.js, line 280

事件

# beforefeaturesadded

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

属性:
Name Type Description
features Object

事件对象。

Inherited From:

查看源代码 leaflet/theme/GeoFeatureThemeLayer.js, line 69

# changelayer

图层属性改变之后触发。

属性:
Name Type Description
layer Object

图层。

property string

图层属性。

Inherited From:

查看源代码 leaflet/theme/ThemeLayer.js, line 459

# featuresremoved

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

属性:
Name Type Description
features Array.<Zondy.Feature.Vector>

事件对象。

succeed boolean

要输是否删除成功,true 为删除成功,false 为删除失败。

Inherited From:

查看源代码 leaflet/theme/ThemeLayer.js, line 189