Class: Layer

ol.layer.Layer

Abstract base class; normally only used for creating subclasses and not instantiated in apps. A visual representation of raster or vector map data. Layers group together those properties that pertain to how the data is to be displayed, irrespective of the source of that data.

A generic change event is fired when the state of the source changes.

new ol.layer.Layer(options)

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

Layer options.

Name Type Description
brightness number | undefined experimental

Brightness. Default is 0.

contrast number | undefined experimental

Contrast. Default is 1.

hue number | undefined experimental

Hue. Default is 0.

opacity number | undefined

Opacity (0, 1). Default is 1.

saturation number | undefined experimental

Saturation. Default is 1.

source ol.source.Source | undefined

Source for this layer. If not provided to the constructor, the source can be set by calling layer.setSource(source) after construction.

visible boolean | undefined

Visibility. Default is true (visible).

extent ol.Extent | undefined

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

zIndex number | undefined experimental

The z-index for layer rendering. At rendering time, the layers will be ordered, first by Z-index and then by position. The default Z-index is 0.

minResolution number | undefined

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

maxResolution number | undefined

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

Fires:

Subclasses

Extends

Observable Properties

Name Type Settable ol.ObjectEvent type Description
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.

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.

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.

zIndex number yes change:zindex

The Z-index of the layer.

Methods

changed() inherited experimental

src/ol/observable.js, line 51

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

get(key){*} inherited

src/ol/object.js, line 150

Gets a value.

Name Type Description
key string

Key name.

Returns:
Value.

getBrightness(){number} inherited experimental

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

Return the brightness of the layer.

Returns:
The brightness of the layer.

getContrast(){number} inherited experimental

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

Return the contrast of the layer.

Returns:
The contrast of the layer.

getExtent(){ol.Extent|undefined} inherited

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

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

Returns:
The layer extent.

getHue(){number} inherited experimental

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

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 194

Return the maximum resolution of the layer.

Returns:
The maximum resolution of the layer.

getMinResolution(){number} inherited

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

Return the minimum resolution of the layer.

Returns:
The minimum resolution of the layer.

getOpacity(){number} inherited

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

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.

getRevision(){number} inherited experimental

src/ol/observable.js, line 70

Get the version number for this object. Each time the object is modified, its version number will be incremented.

Returns:
Revision.

getSaturation(){number} inherited experimental

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

Return the saturation of the layer.

Returns:
The saturation of the layer.

getSource(){ol.source.Source}

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

Get the layer source.

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

getVisible(){boolean} inherited

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

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

Returns:
The visibility of the layer.

getZIndex(){number} inherited experimental

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

Return the Z-index of the layer, which is used to order layers before rendering. The default Z-index is 0.

Returns:
The Z-index of the layer.

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

src/ol/observable.js, line 83

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 96

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.

setBrightness(brightness) inherited experimental

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

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 299

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 323

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.

setHue(hue) inherited experimental

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

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.

setMap(map) experimental

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

Sets the layer to be rendered on a map. The map will not manage this layer in its layers collection, layer filters in ol.Map#forEachLayerAtPixel will not filter the layer, and it will be rendered on top. This is useful for temporary layers. To remove an unmanaged layer from the map, use #setMap(null).

To add the layer to a map and have it managed by the map, use ol.Map#addLayer instead.

Name Type Description
map ol.Map

Map.

setMaxResolution(maxResolution) inherited

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

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 345

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 356

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.

setSaturation(saturation) inherited experimental

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

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)

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

Set the layer source.

Name Type Description
source ol.source.Source

The layer source.

setVisible(visible) inherited

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

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

Name Type Description
visible boolean

The visibility of the layer.

setZIndex(zindex) inherited experimental

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

Set Z-index of the layer, which is used to order layers before rendering. The default Z-index is 0.

Name Type Description
zindex number

The z-index of the layer.

un(type, listener, opt_this) inherited

src/ol/observable.js, line 109

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 122

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.