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

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
brightness number | undefined yes change:brightness

The brightness of the layer.

contrast number | undefined 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 | undefined yes change:hue

The hue of the layer.

maxResolution number | undefined yes change:maxresolution

The maximum resolution of the layer.

minResolution number | undefined yes change:minresolution

The minimum resolution of the layer.

opacity number | undefined yes change:opacity

The opacity of the layer.

saturation number | undefined yes change:saturation

The saturation of the layer.

visible boolean | undefined yes change:visible

The visiblity of the layer.

Methods

bindTo(key, target, opt_targetKey){ol.ObjectAccessor} inherited experimental

The bindTo method allows you to set up a two-way binding between a source and target object. The method returns an object with a transform method that you can use to provide from and to functions to transform values on the way from the source to the target and on the way back.

For example, if you had two map views (sourceView and targetView) and you wanted the target view to have double the resolution of the source view, you could transform the resolution on the way to and from the target with the following:

sourceView.bindTo('resolution', targetView)
  .transform(
    function(sourceResolution) {
      // from sourceView.resolution to targetView.resolution
      return 2 * sourceResolution;
    },
    function(targetResolution) {
      // from targetView.resolution to sourceView.resolution
      return targetResolution / 2;
    }
  );
Name Type Description
key string

Key name.

target ol.Object

Target.

targetKey string

Target key.

dispatchChangeEvent() inherited experimental

Dispatches a change event.

Fires:
  • change experimental

get(key){*} inherited experimental

Gets a value.

Name Type Description
key string

Key name.

Returns:
Value.

getBrightness(){number|undefined} inherited experimental

Returns:
The brightness of the layer.

getContrast(){number|undefined} inherited experimental

Returns:
The contrast of the layer.
Returns:
The layer extent.

getGradient(){Array.<string>} experimental

Returns:
Colors.

getHue(){number|undefined} inherited experimental

Returns:
The hue of the layer.

getKeys(){Array.<string>} inherited experimental

Get a list of object property names.

Returns:
List of property names.

getMaxResolution(){number|undefined} inherited

Returns:
The maximum resolution of the layer.

getMinResolution(){number|undefined} inherited

Returns:
The minimum resolution of the layer.

getOpacity(){number|undefined} inherited

Returns:
The opacity of the layer.

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

Get an object of all property names and values.

Returns:
Object.

getRevision(){number} inherited experimental

Returns:
Revision.

getSaturation(){number|undefined} inherited experimental

Returns:
The saturation of the layer.
Returns:
Source.

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

Returns:
Layer style.

Get the style function.

Returns:
Layer style function.

getVisible(){boolean|undefined} inherited

Returns:
The visiblity of the layer.

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

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

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 experimental

Sets a value.

Name Type Description
key string

Key name.

value *

Value.

setBrightness(brightness) inherited experimental

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 | undefined

The brightness of the layer.

setContrast(contrast) inherited experimental

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 | undefined

The contrast of the layer.

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

Name Type Description
colors Array.<string>

Gradient.

setHue(hue) inherited experimental

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 | undefined

The hue of the layer.

setMaxResolution(maxResolution) inherited

Name Type Description
maxResolution number | undefined

The maximum resolution of the layer.

setMinResolution(minResolution) inherited

Name Type Description
minResolution number | undefined

The minimum resolution of the layer.

Name Type Description
opacity number | undefined

The opacity of the layer.

setProperties(values) inherited experimental

Sets a collection of key-value pairs.

Name Type Description
values Object.<string, *>

Values.

setSaturation(saturation) inherited experimental

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 | undefined

The saturation of the layer.

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.

Name Type Description
visible boolean | undefined

The visiblity of the layer.

un(type, listener, opt_this) inherited

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.

unbind(key) inherited experimental

Removes a binding. Unbinding will set the unbound property to the current value. The object will not be notified, as the value has not changed.

Name Type Description
key string

Key name.

unbindAll() inherited experimental

Removes all bindings.

Removes an event listener using the key returned by on() or once().

Name Type Description
key goog.events.Key

Key.