Class: HeatMap

ol.source.HeatMap

热力图层类。

new ol.source.HeatMap(name, options)

openlayers/overlay/HeatMap.js, line 16
Name Type Description
name string

图层名称

options Object

构造参数。

Name Type Default Description
map ol.Map

openlayers 的 map 对象。

id string 可选

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

featureWeight string 可选

对应 feature 属性中的热点权重字段名称,权重值类型为 float。

radius number 50 可选

热点渲染的最大半径(热点像素半径),单位为 px,当 useGeoUnit 参数 为 true 时,单位使用当前图层地理坐标单位。热点显示的时候以精确点为中心点开始往四周辐射衰减,其衰减半径和权重值成比列。

loadWhileAnimating boolean true 可选

是否实时重绘。(当绘制大数据量要素的情况下会出现卡顿,建议把该参数设为 false)。

opacity number 1 可选

图层透明度。

colors Array.<string> ['blue','cyan','lime','yellow','red'] 可选

颜色线性渐变数组,颜色值必须为 canvas 所支持的。

useGeoUnit boolean false 可选

使用地理单位,false 表示默认热点半径默认使用像素单位。当设置为 true 时,热点半径和图层地理坐标保持一致。

Extends

Methods

addFeatures(features)

openlayers/overlay/HeatMap.js, line 99

添加热点信息。

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

待添加的要素数组。

Example
var geojson = {
     "type": "FeatureCollection",
     "features": [
         {
             "type": "feature",
             "geometry": {
                 "type": "Point",  //只支持point类型
                 "coordinates": [0, 0]
             },
             "properties": {
                 "height": Math.random()*9,
             }
         }
     ]
  };
var heatMapSource = new ol.source.HeatMap("heatMap",{"map": map});
heatMapSource.addFeatures(geojson);
map.addLayer(new ol.layer.Image({
      source: heatMapSource
  }));

getLocalXY(coordinate)

openlayers/overlay/HeatMap.js, line 314

获取坐标系统。

Name Type Description
coordinate Object

坐标位置。

removeFeatures(features)

openlayers/overlay/HeatMap.js, line 369

移除指定的热点信息。

Name Type Description
features Array.<SuperMap.Feature.Vector>

热点信息数组。

rotate(pixelP, rotation, center)

openlayers/overlay/HeatMap.js, line 342

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

Name Type Description
pixelP number

像素坐标点位置。

rotation number

旋转角度。

center number

中心位置。

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

openlayers/overlay/HeatMap.js, line 355

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

Name Type Description
pixelP Object

像素点。

center Object

中心点。

scaleRatio number

缩放倍数。

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

setOpacity(opacity)

openlayers/overlay/HeatMap.js, line 131

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

Name Type Description
opacity number

不透明度。

toiClientFeature(features){SuperMap.Feature.Vector}

openlayers/overlay/HeatMap.js, line 411

转为 iClient 要素。

https://geojson.org
Name TypeDescription
features GeoJSONObject | Array.<ol.Feature>

待添加的要素数组。

Returns:
Type Description
SuperMap.Feature.Vector 转换后的 iClient 要素