Class: Heatmap

ol.layer.Heatmap

Layer for rendering vector data as a heatmap. Note that any property set in the options is set as a ol.Object property on the layer object; for example, setting title: 'My Title' in the options means that title is observable, and has get/set accessors.

new ol.layer.Heatmap(opt_options) experimental

src/ol/layer/heatmaplayer.js, line 39
Name Type Description
options

Options.

Name Type Description
brightness number | undefined experimental

Brightness.

contrast number | undefined experimental

Contrast.

hue number | undefined experimental

Hue.

gradient Array.<string> | undefined experimental

The color gradient of the heatmap, specified as an array of CSS color strings. Default is ['#00f', '#0ff', '#0f0', '#ff0', '#f00'].

radius number | undefined experimental

Radius size in pixels. Default is 8.

blur number | undefined experimental

Blur size in pixels. Default is 15.

shadow number | undefined experimental

Shadow size in pixels. Default is 250.

weight string | function experimental

The feature attribute to use for the weight or a function that returns a weight from a feature. Weight values should range from 0 to 1 (and values outside will be clamped to that range). Default is weight.

extent ol.Extent | undefined experimental

The bounding extent for layer rendering. The layer will not be rendered outside of this extent.

minResolution number | undefined experimental

The minimum resolution (inclusive) at which this layer will be visible.

maxResolution number | undefined experimental

The maximum resolution (exclusive) below which this layer will be visible.

opacity number | undefined experimental

Opacity. 0-1. Default is 1.

saturation number | undefined experimental

Saturation.

source ol.source.Vector experimental

Source.

visible boolean | undefined experimental

Visibility. Default is true (visible).

Fires:

Extends

Observable Properties

Name Type Settable ol.ObjectEvent type Description
blur number yes change:blur

Blur size in pixels.

brightness number yes change:brightness

The brightness of the layer.

contrast number yes change:contrast

The contrast of the layer.

extent ol.Extent | undefined yes change:extent

The layer extent.

gradient Array.<string> yes change:gradient

Colors.

hue number yes change:hue

The hue of the layer.

maxResolution number yes change:maxresolution

The maximum resolution of the layer.

minResolution number yes change:minresolution

The minimum resolution of the layer.

opacity number yes change:opacity

The opacity of the layer.

radius number yes change:radius

Radius size in pixel.

saturation number yes change:saturation

The saturation of the layer.

source ol.source.Source yes change:source

The layer source (or null if not yet set).

visible boolean yes change:visible

The visibility of the layer.

Methods

changed() inherited experimental

src/ol/observable.js, line 52

Increases the revision counter and dispatches a 'change' event.

Fires:
  • change experimental

get(key){*} inherited

src/ol/object.js, line 150

Gets a value.

Name Type Description
key string

Key name.

Returns:
Value.

getBlur(){number} experimental

src/ol/layer/heatmaplayer.js, line 199

Return the blur size in pixels.

Returns:
Blur size in pixels.

getBrightness(){number} inherited experimental

src/ol/layer/layerbase.js, line 95

Return the brightness of the layer.

Returns:
The brightness of the layer.

getContrast(){number} inherited experimental

src/ol/layer/layerbase.js, line 106

Return the contrast of the layer.

Returns:
The contrast of the layer.

getExtent(){ol.Extent|undefined} inherited

src/ol/layer/layerbase.js, line 175

Return the extent of the layer or undefined if it will be visible regardless of extent.

Returns:
The layer extent.

getGradient(){Array.<string>} experimental

src/ol/layer/heatmaplayer.js, line 210

Return the gradient colors as array of strings.

Returns:
Colors.

getHue(){number} inherited experimental

src/ol/layer/layerbase.js, line 117

Return the hue of the layer.

Returns:
The hue of the layer.

getKeys(){Array.<string>} inherited

src/ol/object.js, line 164

Get a list of object property names.

Returns:
List of property names.

getMaxResolution(){number} inherited

src/ol/layer/layerbase.js, line 187

Return the maximum resolution of the layer.

Returns:
The maximum resolution of the layer.

getMinResolution(){number} inherited

src/ol/layer/layerbase.js, line 199

Return the minimum resolution of the layer.

Returns:
The minimum resolution of the layer.

getOpacity(){number} inherited

src/ol/layer/layerbase.js, line 211

Return the opacity of the layer (between 0 and 1).

Returns:
The opacity of the layer.

getProperties(){Object.<string, *>} inherited

src/ol/object.js, line 174

Get an object of all property names and values.

Returns:
Object.

getRadius(){number} experimental

src/ol/layer/heatmaplayer.js, line 222

Return the size of the radius in pixels.

Returns:
Radius size in pixel.

getRevision(){number} inherited experimental

src/ol/observable.js, line 62
Returns:
Revision.

getSaturation(){number} inherited experimental

src/ol/layer/layerbase.js, line 222

Return the saturation of the layer.

Returns:
The saturation of the layer.

getSource(){ol.source.Vector} inherited

src/ol/layer/vectorlayer.js, line 114

Return the associated vectorsource of the layer.

Returns:
Source.

getStyle(){ol.style.Style|Array.<ol.style.Style>|ol.style.StyleFunction} inherited

src/ol/layer/vectorlayer.js, line 124

Get the style for features. This returns whatever was passed to the style option at construction or to the setStyle method.

Returns:
Layer style.

getStyleFunction(){ol.style.StyleFunction|undefined} inherited

src/ol/layer/vectorlayer.js, line 134

Get the style function.

Returns:
Layer style function.

getVisible(){boolean} inherited

src/ol/layer/layerbase.js, line 239

Return the visibility of the layer (true or false).

Returns:
The visibility of the layer.

on(type, listener, opt_this){goog.events.Key} inherited

src/ol/observable.js, line 75

Listen for a certain type of event.

Name Type Description
type string | Array.<string>

The event type or array of event types.

listener function

The listener function.

this Object

The object to use as this in listener.

Returns:
Unique key for the listener.

once(type, listener, opt_this){goog.events.Key} inherited

src/ol/observable.js, line 88

Listen once for a certain type of event.

Name Type Description
type string | Array.<string>

The event type or array of event types.

listener function

The listener function.

this Object

The object to use as this in listener.

Returns:
Unique key for the listener.

set(key, value) inherited

src/ol/object.js, line 203

Sets a value.

Name Type Description
key string

Key name.

value *

Value.

setBlur(blur) experimental

src/ol/layer/heatmaplayer.js, line 277

Set the blur size in pixels.

Name Type Description
blur number

Blur size in pixels.

setBrightness(brightness) inherited experimental

src/ol/layer/layerbase.js, line 266

Adjust the layer brightness. A value of -1 will render the layer completely black. A value of 0 will leave the brightness unchanged. A value of 1 will render the layer completely white. Other values are linear multipliers on the effect (values are clamped between -1 and 1).

The filter effects draft [1] says the brightness function is supposed to render 0 black, 1 unchanged, and all other values as a linear multiplier.

The current WebKit implementation clamps values between -1 (black) and 1 (white) [2]. There is a bug open to change the filter effect spec [3].

TODO: revisit this if the spec is still unmodified before we release

[1] https://dvcs.w3.org/hg/FXTF/raw-file/tip/filters/index.html [2] https://github.com/WebKit/webkit/commit/8f4765e569 [3] https://www.w3.org/Bugs/Public/show_bug.cgi?id=15647

Name Type Description
brightness number

The brightness of the layer.

setContrast(contrast) inherited experimental

src/ol/layer/layerbase.js, line 280

Adjust the layer contrast. A value of 0 will render the layer completely grey. A value of 1 will leave the contrast unchanged. Other values are linear multipliers on the effect (and values over 1 are permitted).

Name Type Description
contrast number

The contrast of the layer.

setExtent(extent) inherited

src/ol/layer/layerbase.js, line 304

Set the extent at which the layer is visible. If undefined, the layer will be visible at all extents.

Name Type Description
extent ol.Extent | undefined

The extent of the layer.

setGradient(colors) experimental

src/ol/layer/heatmaplayer.js, line 288

Set the gradient colors as array of strings.

Name Type Description
colors Array.<string>

Gradient.

setHue(hue) inherited experimental

src/ol/layer/layerbase.js, line 292

Apply a hue-rotation to the layer. A value of 0 will leave the hue unchanged. Other values are radians around the color circle.

Name Type Description
hue number

The hue of the layer.

setMaxResolution(maxResolution) inherited

src/ol/layer/layerbase.js, line 315

Set the maximum resolution at which the layer is visible.

Name Type Description
maxResolution number

The maximum resolution of the layer.

setMinResolution(minResolution) inherited

src/ol/layer/layerbase.js, line 326

Set the minimum resolution at which the layer is visible.

Name Type Description
minResolution number

The minimum resolution of the layer.

setOpacity(opacity) inherited

src/ol/layer/layerbase.js, line 337

Set the opacity of the layer, allowed values range from 0 to 1.

Name Type Description
opacity number

The opacity of the layer.

setProperties(values) inherited

src/ol/object.js, line 216

Sets a collection of key-value pairs. Note that this changes any existing properties and adds new ones (it does not remove any existing properties).

Name Type Description
values Object.<string, *>

Values.

setRadius(radius) experimental

src/ol/layer/heatmaplayer.js, line 299

Set the size of the radius in pixels.

Name Type Description
radius number

Radius size in pixel.

setSaturation(saturation) inherited experimental

src/ol/layer/layerbase.js, line 352

Adjust layer saturation. A value of 0 will render the layer completely unsaturated. A value of 1 will leave the saturation unchanged. Other values are linear multipliers of the effect (and values over 1 are permitted).

Name Type Description
saturation number

The saturation of the layer.

setSource(source) inherited

src/ol/layer/layer.js, line 138

Set the layer source.

Name Type Description
source ol.source.Source

The layer source.

setStyle(style) inherited

src/ol/layer/vectorlayer.js, line 181

Set the style for features. This can be a single style object, an array of styles, or a function that takes a feature and resolution and returns an array of styles. If it is undefined the default style is used. If it is null the layer has no style (a null style), so only features that have their own styles will be rendered in the layer. See ol.style for information on the default style.

Name Type Description
style ol.style.Style | Array.<ol.style.Style> | ol.style.StyleFunction | undefined

Layer style.

setVisible(visible) inherited

src/ol/layer/layerbase.js, line 363

Set the visibility of the layer (true or false).

Name Type Description
visible boolean

The visibility of the layer.

un(type, listener, opt_this) inherited

src/ol/observable.js, line 101

Unlisten for a certain type of event.

Name Type Description
type string | Array.<string>

The event type or array of event types.

listener function

The listener function.

this Object

The object which was used as this by the listener.

unByKey(key) inherited

src/ol/observable.js, line 114

Removes an event listener using the key returned by on() or once(). Note that using the ol.Observable.unByKey static function is to be preferred.

Name Type Description
key goog.events.Key

The key returned by on() or once().

unset(key) inherited

src/ol/object.js, line 229

Unsets a property.

Name Type Description
key string

Key name.