Class: RankSymbol

RankSymbol

等级符号专题图图层源。等级符号专题图根据各要素的某个数量特征,按照一定的分类方法用一组等级符号表示在地图上,以呈现要素间该数量特征的相对关系。

new RankSymbol(name, symbolType, opt_options)

Usage
// 浏览器
<script type="text/javascript" src="https://iclient.supermap.io/dist/openlayers/iclient-ol.js"></script>
<script>
  new ol.source.RankSymbol(name, symbolType, opt_options);
  
</script>

// ES6 Import
import { RankSymbol } from '@supermapgis/iclient-ol';

new RankSymbol(name, symbolType, opt_options);

openlayers/overlay/RankSymbol.js, line 7
Name Type Description
name string

专题图层名。

symbolType string

标志类型。

opt_options Object

参数。

Name Type Default Description
map ol.Map

当前 OpenLayers 地图对象。

themeFields string

指定创建专题图字段。

symbolSetting Object

符号 Circle 配置对象 symbolSetting(<SuperMap.Layer.RankSymbol>)。

Name Type Default Description
codomain Array.<number>

图表允许展示的数据值域,长度为 2 的一维数组,第一个元素表示值域下限,第二个元素表示值域上限。

maxR number 可选

圆形的最大半径。

minR number 可选

圆形的最小半径。

fillColor string 可选

圆形的填充色,如:fillColor: "#FFB980"。

circleStyle Object 可选

圆形的基础 style,此参数控制圆形基础样式,优先级低于 circleStyleByFields 和 circleStyleByCodomain。

decimalNumber number 可选

数据值数组 dataValues 元素值小数位数,数据的小数位处理参数,取值范围:[0, 16]。如果不设置此参数,在取数据值时不对数据做小数位处理。

circleHoverStyle Object 可选

圆形 hover 状态时的样式,circleHoverAble 为 true 时有效。

circleHoverAble boolean true 可选

是否允许圆形使用 hover 状态。同时设置 circleHoverAble 和 circleClickAble 为 false,可以直接屏蔽图形对专题图层事件的响应。

circleClickAble boolean true 可选

是否允许圆形被点击。同时设置 circleHoverAble 和 circleClickAble 为 false,可以直接屏蔽图形对专题图层事件的响应。

id string 可选

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

opacity number 1 可选

图层不透明度。

logo string 可选

Logo(OpenLayers 5.0.0 及更高版本不再支持此参数)。

projection ol.proj.Projection 可选

投影信息。

ratio number 1.5 可选

视图比,1 表示画布是地图视口的大小,2 表示地图视口的宽度和高度的两倍,依此类推。必须是 1 或更高。

resolutions Array 可选

分辨率数组。

state ol.source.State 可选

资源状态。

isOverLay boolean true 可选

是否进行压盖处理,如果设为 true,图表绘制过程中将隐藏对已在图层中绘制的图表产生压盖的图表。

attributions string | Object 'Map Data <span>© <a href='http://support.supermap.com.cn/product/iServer.aspx' target='_blank'>SuperMap iServer</a></span> with <span>© <a href='https://iclient.supermap.io' target='_blank'>SuperMap iClient</a></span>' 可选

版权描述信息。

Extends

Methods

inherited addFeatures(features)

openlayers/overlay/Graph.js, line 86

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

Name Type Description
features ServerFeature | ThemeFeature

待添加的要素。

inherited clear()

openlayers/overlay/Graph.js, line 423

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

inherited clearCache()

openlayers/overlay/Graph.js, line 382

清除缓存。

destroy()

openlayers/overlay/RankSymbol.js, line 49

释放资源,将引用资源的属性置空。

inherited destroyFeatures(features)

openlayers/overlay/theme/Theme.js, line 152

销毁要素。

Name Type Description
features Array.<FeatureVector> | FeatureVector

将被销毁的要素。

inherited drawCharts()

openlayers/overlay/Graph.js, line 175

绘制图表。包含压盖处理。

inherited fire(type, event)

openlayers/overlay/theme/Theme.js, line 366

添加专题要素事件监听。

Name Type Description
type string

事件类型。

event string

事件名称。

inherited getFeatureBy(property, value){FeatureVector}

openlayers/overlay/theme/Theme.js, line 287

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

Name Type Description
property string

要素的某个属性名称。

value string

property 所对应的值。

Returns:
Type Description
FeatureVector 第一个匹配属性和值的矢量要素。

inherited getFeatureById(featureId){FeatureVector}

openlayers/overlay/theme/Theme.js, line 307

通过给定一个 ID,返回对应的矢量要素。

Name Type Description
featureId string

矢量要素的属性 ID。

Returns:
Type Description
FeatureVector 对应 ID 的要素,如果不存在则返回 null。

inherited getFeatures(filter){Array.<FeatureVector>}

openlayers/overlay/theme/Theme.js, line 270

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

Name Type Description
filter function 可选

根据条件过滤要素的回调函数。

Returns:
Type Description
Array.<FeatureVector> 用户加入图层的有效数据。

inherited getFeaturesByAttribute(attrName, attrValue){Array.<FeatureVector>}

openlayers/overlay/theme/Theme.js, line 317

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

Name Type Description
attrName string

属性的 key 值。

attrValue string

属性的 value 值。

Returns:
Type Description
Array.<FeatureVector> 一个匹配的要素数组。

inherited getLocalXY(coordinate){Array.<number>}

openlayers/overlay/theme/Theme.js, line 471

地理坐标转为像素坐标。

Name Type Description
coordinate Object

坐标位置。

Returns:
Type Description
Array.<number> 长度为 2 的像素坐标数组,第一个元素表示 x 坐标,第二个元素表示 y 坐标。

inherited getShapesByFeatureID(featureID)

openlayers/overlay/Graph.js, line 284

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

Name Type Description
featureID number

要素 ID。

inherited isChartInMap(mapPxBounds, chartPxBounds)

openlayers/overlay/Graph.js, line 362

判断图表是否在地图里。

Name Type Description
mapPxBounds Bounds

地图像素范围。

chartPxBounds Array.<Object>

图表范围的四边形节点数组。

inherited isPointInPoly(pt, poly)

openlayers/overlay/Graph.js, line 347

判断一个点是否在多边形里面(射线法)。

Name Type Description
pt Object

需要判定的点对象,该对象含有属性 x(横坐标),属性 y(纵坐标)。

poly Array.<Object>

多边形节点数组。

inherited isQuadrilateralOverLap(quadrilateral, quadrilateral2)

openlayers/overlay/Graph.js, line 304

判断两个四边形是否有压盖。

Name Type Description
quadrilateral Array.<Object>

四边形节点数组。

quadrilateral2 Array.<Object>

第二个四边形节点数组。

inherited on(event, callback)

openlayers/overlay/theme/Theme.js, line 53

添加专题要素事件监听。支持的事件包括: click、mousedown、mousemove、mouseout、mouseover、mouseup。

Name Type Description
event string

事件名称。

callback RequestCallback

事件回调函数。

inherited redraw()

openlayers/overlay/Graph.js, line 410

重绘该图层。

inherited redrawThematicFeatures(extent)

openlayers/overlay/Graph.js, line 109

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

Name Type Description
extent Object

重绘的范围。

inherited removeAllFeatures()

openlayers/overlay/Graph.js, line 401

移除所有的要素。

inherited removeFeatures(features)

openlayers/overlay/Graph.js, line 391

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

Name Type Description
features Array.<FeatureVector> | FeatureVector | function

要删除的要素。

inherited rotate(pixelP, rotation, center){Array.<number>}

openlayers/overlay/theme/Theme.js, line 500

获取某像素坐标点 pixelP 绕中心 center 逆时针旋转 rotation 弧度后的像素点坐标。

Name Type Description
pixelP number

像素坐标点位置。

rotation number

旋转角度。

center number

中心位置。

Returns:
Type Description
Array.<number> 旋转后的像素坐标数组。

inherited scale(pixelP, center, scaleRatio){Array.<number>}

openlayers/overlay/theme/Theme.js, line 514

获取某像素坐标点 pixelP 相对于中心 center 进行缩放 scaleRatio 倍后的像素点坐标。

Name Type Description
pixelP Object

像素点。

center Object

中心点。

scaleRatio number

缩放倍数。

Returns:
Type Description
Array.<number> 返回数组型比例。

inherited setChartsType(chartsType)

openlayers/overlay/Graph.js, line 76

设置图表类型,此函数可动态改变图表类型。在调用此函数前请通过 chartsSetting 为新类型的图表做相关配置。

Name Type Description
chartsType string

图表类型。目前可用:"Bar","Bar3D","Line","Point","Pie","Ring"。

inherited setOpacity(opacity)

openlayers/overlay/theme/Theme.js, line 173

设置图层的不透明度,取值范围:[0-1]。

Name Type Description
opacity number

不透明度。

setSymbolType(symbolType)

openlayers/overlay/RankSymbol.js, line 60

设置标志符号。

Name Type Description
symbolType string

符号类型。

inherited deprecated toFeature(features){Array.<FeatureVector>}

openlayers/overlay/theme/Theme.js, line 570

转为 iClient 要素,该方法将被弃用,由 Theme#toiClientFeature 代替。

Name Type Description
features Array.<ThemeFeature> | Array.<GeoJSONObject> | Array.<ol.Feature> | ThemeFeature | GeoJSONObject | ol.Feature

待转要素。

Returns:
Type Description
Array.<FeatureVector> 转换后的 iClient 要素。

inherited toiClientFeature(features){Array.<FeatureVector>}

openlayers/overlay/theme/Theme.js, line 528

转为 iClient 要素。

Name Type Description
features Array.<ThemeFeature> | Array.<GeoJSONObject> | Array.<ol.Feature> | ThemeFeature | GeoJSONObject | ol.Feature

待转要素。

Returns:
Type Description
Array.<FeatureVector> 转换后的 iClient 要素。

inherited un(event, callback)

openlayers/overlay/theme/Theme.js, line 433

移除专题要素事件监听。

Name Type Description
event string

事件名称。

callback RequestCallback

事件回调函数。