OpenLayers v4.0.1 API - Class: Image

# Class: Image

This documentation is for OpenLayers v4.0.1. The latest is v.

## ol.layer.Image

Server-rendered images that are available for arbitrary extents and resolutions. 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.Image(opt_options)

src/ol/layer/image.js, line 24

  Name | Type | Description
  --- | --- | ---

  `options`

  Layer options.

  Name | Type | Description
  --- | --- | ---
  `opacity` | number | undefined | Opacity (0, 1). Default is `1`.
  `source` | ol.source.Image | Source for this layer. Required.
  `map` | ol.Map | undefined | Sets the layer as overlay on a map. The map will not manage this layer in its layers collection, and the layer will be rendered on top. This is useful for temporary layers. The standard way to add a layer to a map and have it managed by the map is to use `ol.Map#addLayer`.
  `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.
  `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:

  - `change` (ol.events.Event) - Generic change event. Triggered when the revision counter is increased.
  - `change:extent` (ol.Object.Event)
  - `change:maxResolution` (ol.Object.Event)
  - `change:minResolution` (ol.Object.Event)
  - `change:opacity` (ol.Object.Event)
  - `change:source` (ol.Object.Event)
  - `change:visible` (ol.Object.Event)
  - `change:zIndex` (ol.Object.Event)
  - `postcompose` (ol.render.Event)
  - `precompose` (ol.render.Event)
  - `propertychange` (ol.Object.Event) - Triggered when a property is changed.
  - `render` (ol.render.Event)

### Extends

- ol.layer.Layer

### Observable Properties

Name | Type | Settable | ol.Object.Event type | Description
--- | --- | --- | --- | ---
`extent` | ol.Extent | undefined | yes | `change:extent` | The layer extent.
`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.
`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

src/ol/observable.js, line 58

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

#### dispatchEvent(event) inherited

src/ol/observable.js, line 75

  Dispatches an event and calls all listeners listening for events of this type. The event parameter can either be a string or an Object with a `type` property.

  Name | Type | Description
  --- | --- | ---
  `event` | Object | ol.events.Event | string | Event object.

#### get(key){*} inherited

src/ol/object.js, line 101

  Gets a value.

  Name | Type | Description
  --- | --- | ---
  `key` | string | Key name.

  ##### Returns:

  Value.

#### getExtent(){ol.Extent|undefined} inherited

src/ol/layer/base.js, line 108

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

  ##### Returns:

  The layer extent.

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

src/ol/object.js, line 115

  Get a list of object property names.

  ##### Returns:

  List of property names.

#### getMaxResolution(){number} inherited

src/ol/layer/base.js, line 120

  Return the maximum resolution of the layer.

  ##### Returns:

  The maximum resolution of the layer.

#### getMinResolution(){number} inherited

src/ol/layer/base.js, line 132

  Return the minimum resolution of the layer.

  ##### Returns:

  The minimum resolution of the layer.

#### getOpacity(){number} inherited

src/ol/layer/base.js, line 144

  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 125

  Get an object of all property names and values.

  ##### Returns:

  Object.

#### getRevision(){number} inherited

src/ol/observable.js, line 84

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

  ##### Returns:

  Revision.

#### getSource(){ol.source.Image}

src/ol/layer/image.js, line 52

  Return the associated `source` of the image layer.

  ##### Returns:

  Source.

#### getVisible(){boolean} inherited

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

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

  ##### Returns:

  The visibility of the layer.

#### getZIndex(){number} inherited

src/ol/layer/base.js, line 174

  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){ol.EventsKey|Array.<ol.EventsKey>} inherited

src/ol/observable.js, line 99

  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. If called with an array of event types as the first argument, the return will be an array of keys.

#### once(type, listener, opt_this){ol.EventsKey|Array.<ol.EventsKey>} inherited

src/ol/observable.js, line 124

  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. If called with an array of event types as the first argument, the return will be an array of keys.

#### set(key, value, opt_silent) inherited

src/ol/object.js, line 150

  Sets a value.

  Name | Type | Description
  --- | --- | ---
  `key` | string | Key name.
  `value` | * | Value.
  `silent` | boolean | Update without triggering an event.

#### setExtent(extent) inherited

src/ol/layer/base.js, line 186

  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.

#### setMap(map) inherited

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

  Sets the layer to be rendered on top of other layers on a map. The map will not manage this layer in its layers collection, and the callback in `ol.Map#forEachLayerAtPixel` will receive `null` as layer. 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/base.js, line 197

  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/base.js, line 208

  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/base.js, line 219

  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, opt_silent) inherited

src/ol/object.js, line 170

  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.
  `silent` | boolean | Update without triggering an event.

#### setSource(source) inherited

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

  Set the layer source.

  Name | Type | Description
  --- | --- | ---
  `source` | ol.source.Source | The layer source.

#### setVisible(visible) inherited

src/ol/layer/base.js, line 230

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

  Name | Type | Description
  --- | --- | ---
  `visible` | boolean | The visibility of the layer.

#### setZIndex(zindex) inherited

src/ol/layer/base.js, line 242

  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 147

  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`.

#### unset(key, opt_silent) inherited

src/ol/object.js, line 184

  Unsets a property.

  Name | Type | Description
  --- | --- | ---
  `key` | string | Key name.
  `silent` | boolean | Unset without triggering an event.