# Namespace: source

## olx.source

### Type Definitions

#### olx.source.BingMapsOptions{Object} experimental

  ##### Properties:

  Name | Type | Argument | Description
  --- | --- | --- | ---
  `culture` | string | undefined | <optional> | Culture code. Default is `en-us`.
  `key` | string |  | Bing Maps API key. Get yours at http://bingmapsportal.com/.
  `imagerySet` | string |  | Type of imagery.
  `tileLoadFunction` | ol.TileLoadFunctionType | undefined | <optional> | Optional function to load a tile given a URL.

#### olx.source.FormatVectorOptions{Object} experimental

  ##### Properties:

  Name | Type | Description
  --- | --- | ---
  `attributions` | Array.<ol.Attribution> | undefined | Attributions.
  `extent` | ol.Extent | undefined | Extent.
  `format` | ol.format.Feature | Format.
  `logo` | string | undefined | Logo.
  `projection` | ol.proj.ProjectionLike | Projection.

#### olx.source.GeoJSONOptions{Object} experimental

  ##### Properties:

  Name | Type | Argument | Description
  --- | --- | --- | ---
  `attributions` | Array.<ol.Attribution> | undefined | <optional> | Attributions.
  `defaultProjection` | ol.proj.ProjectionLike |  | Default projection.
  `extent` | ol.Extent | undefined | <optional> | Extent.
  `logo` | string | undefined | <optional> | Logo.
  `object` | GeoJSONObject | undefined | <optional> | Object.
  `projection` | ol.proj.ProjectionLike |  | Destination projection. If provided, features will be transformed to this projection. If not provided, features will not be transformed.
  `text` | string | undefined | <optional> | Text.
  `url` | string | undefined | <optional> | URL.
  `urls` | Array.<string> | undefined | <optional> | URLs.

#### olx.source.GPXOptions{Object} experimental

  ##### Properties:

  Name | Type | Argument | Description
  --- | --- | --- | ---
  `attributions` | Array.<ol.Attribution> | undefined | <optional> | Attributions.
  `doc` | Document | undefined | <optional> | Document.
  `extent` | ol.Extent | undefined | <optional> | Extent.
  `logo` | string | undefined | <optional> | Logo.
  `node` | Node | undefined | <optional> | Node.
  `projection` | ol.proj.ProjectionLike |  | Destination projection. If provided, features will be transformed to this projection. If not provided, features will not be transformed.
  `text` | string | undefined | <optional> | Text.
  `url` | string | undefined | <optional> | URL.
  `urls` | Array.<string> | undefined | <optional> | URLs.

#### olx.source.IGCOptions{Object} experimental

  ##### Properties:

  Name | Type | Argument | Description
  --- | --- | --- | ---
  `altitudeMode` | ol.format.IGCZ | undefined | <optional> | Altitude mode. Possible values are `barometric`, `gps`, and `none`. Default is `none`.
  `projection` | ol.proj.ProjectionLike |  | Destination projection. If provided, features will be transformed to this projection. If not provided, features will not be transformed.
  `text` | string | undefined | <optional> | Text.
  `url` | string | undefined | <optional> | URL.
  `urls` | Array.<string> | undefined | <optional> | URLs.

#### olx.source.ImageCanvasOptions{Object} experimental

  ##### Properties:

  Name | Type | Argument | Description
  --- | --- | --- | ---
  `attributions` | Array.<ol.Attribution> | undefined | <optional> | Attributions.
  `canvasFunction` | ol.CanvasFunctionType |  | Canvas function. The function returning the canvas element used by the source as an image. The arguments passed to the function are: `{ol.Extent}` the image extent, `{number}` the image resolution, `{number}` the device pixel ratio, `{ol.Size}` the image size, and `{ol.proj.Projection}` the image projection. The canvas returned by this function is cached by the source. If the value returned by the function is later changed then `dispatchChangeEvent` should be called on the source for the source to invalidate the current cached image.
  `extent` | ol.Extent | undefined | <optional> | Extent.
  `logo` | string | undefined | <optional> | Logo.
  `projection` | ol.proj.ProjectionLike |  | Projection.
  `ratio` | number | undefined | <optional> | Ratio. 1 means canvases are the size of the map viewport, 2 means twice the size of the map viewport, and so on. Default is `1.5`.
  `resolutions` | Array.<number> | undefined | <optional> | Resolutions. If specified, new canvases will be created for these resolutions only.
  `state` | ol.source.State | string | undefined | <optional> | Source state.

#### olx.source.ImageStaticOptions{Object} experimental

  ##### Properties:

  Name | Type | Argument | Description
  --- | --- | --- | ---
  `attributions` | Array.<ol.Attribution> | undefined | <optional> | Attributions.
  `crossOrigin` | null | string | undefined | <optional> | crossOrigin setting for image requests.
  `extent` | ol.Extent | undefined | <optional> | Extent.
  `imageExtent` | ol.Extent | undefined | <optional> | Extent of the image.
  `imageSize` | ol.Size | undefined | <optional> | Size of the image.
  `logo` | string | undefined | <optional> | Logo.
  `projection` | ol.proj.ProjectionLike |  | Projection.
  `url` | string |  | Url.

#### olx.source.ImageVectorOptions{Object} experimental

  ##### Properties:

  Name | Type | Argument | Description
  --- | --- | --- | ---
  `attributions` | Array.<ol.Attribution> | undefined | <optional> | Attributions.
  `extent` | ol.Extent | undefined | <optional> | Extent.
  `logo` | string | undefined | <optional> | Logo.
  `projection` | ol.proj.ProjectionLike |  | Projection.
  `ratio` | number | undefined | <optional> | Ratio. 1 means canvases are the size of the map viewport, 2 means twice the size of the map viewport, and so on. Default is `1.5`.
  `resolutions` | Array.<number> | undefined | <optional> | Resolutions. If specified, new canvases will be created for these resolutions only.
  `source` | ol.source.Vector |  | The vector source from which the vector features drawn in canvas elements are read.
  `style` | ol.style.Style | Array.<ol.style.Style> | ol.feature.StyleFunction | undefined | <optional> | Style to use when rendering features to the canvas.

#### olx.source.ImageWMSOptions{Object} experimental

  ##### Properties:

  Name | Type | Argument | Description
  --- | --- | --- | ---
  `attributions` | Array.<ol.Attribution> | undefined | <optional> | Attributions.
  `crossOrigin` | null | string | undefined | <optional> | crossOrigin setting for image requests.
  `extent` | ol.Extent | undefined | <optional> | Extent.
  `hidpi` | boolean | undefined | <optional> | Use the `ol.Map#pixelRatio` value when requesting the image from the remote server. Default is `true`.
  `serverType` | ol.source.wms.ServerType | string | undefined | <optional> | The type of the remote WMS server: `mapserver`, `geoserver` or `qgis`. Only needed if `hidpi` is `true`. Default is `undefined`.
  `logo` | string | undefined | <optional> | Logo.
  `params` | Object.<string, *> |  | WMS request parameters. At least a `LAYERS` param is required. `STYLES` is `''` by default. `VERSION` is `1.3.0` by default. `WIDTH`, `HEIGHT`, `BBOX` and `CRS` (`SRS` for WMS version < 1.3.0) will be set dynamically.
  `projection` | ol.proj.ProjectionLike |  | Projection.
  `ratio` | number | undefined | <optional> | Ratio. `1` means image requests are the size of the map viewport, `2` means twice the size of the map viewport, and so on. Default is `1.5`.
  `resolutions` | Array.<number> | undefined | <optional> | Resolutions. If specified, requests will be made for these resolutions only.
  `url` | string | undefined | <optional> | WMS service URL.

#### olx.source.KMLOptions{Object} experimental

  ##### Properties:

  Name | Type | Argument | Description
  --- | --- | --- | ---
  `attributions` | Array.<ol.Attribution> | undefined | <optional> | Attributions.
  `defaultStyle` | Array.<ol.style.Style> | undefined | <optional> | Default style.
  `doc` | Document | undefined | <optional> | Document.
  `extent` | ol.Extent | undefined | <optional> | Extent.
  `logo` | string | undefined | <optional> | Logo.
  `node` | Node | undefined | <optional> | Node.
  `projection` | ol.proj.ProjectionLike |  | Destination projection. If provided, features will be transformed to this projection. If not provided, features will not be transformed.
  `text` | string | undefined | <optional> | Text.
  `url` | string | undefined | <optional> | URL.
  `urls` | Array.<string> | undefined | <optional> | URLs.

#### olx.source.MapGuideOptions{Object} experimental

  ##### Properties:

  Name | Type | Argument | Description
  --- | --- | --- | ---
  `url` | string | undefined | <optional> | The mapagent url.
  `displayDpi` | number | undefined | <optional> | The display resolution. Default is `96`.
  `metersPerUnit` | number | undefined | <optional> | The meters-per-unit value. Default is `1`.
  `extent` | ol.Extent | undefined | <optional> | Extent.
  `hidpi` | boolean | undefined | <optional> | Use the `ol.Map#pixelRatio` value when requesting the image from the remote server. Default is `true`.
  `useOverlay` | boolean | undefined | <optional> | If `true`, will use `GETDYNAMICMAPOVERLAYIMAGE`.
  `projection` | ol.proj.ProjectionLike |  | Projection.
  `ratio` | number | undefined | <optional> | Ratio. `1` means image requests are the size of the map viewport, `2` means twice the size of the map viewport, and so on. Default is `1`.
  `resolutions` | Array.<number> | undefined | <optional> | Resolutions. If specified, requests will be made for these resolutions only.
  `params` | Object | undefined | <optional> | Additional parameters.

#### olx.source.MapQuestOptions{Object} experimental

  ##### Properties:

  Name | Type | Argument | Description
  --- | --- | --- | ---
  `layer` | string |  | Layer. Possible values are `osm`, `sat`, and `hyb`.
  `tileLoadFunction` | ol.TileLoadFunctionType | undefined | <optional> | Optional function to load a tile given a URL.

#### olx.source.OSMOptions{Object} experimental

  ##### Properties:

  Name | Type | Argument | Description
  --- | --- | --- | ---
  `attributions` | Array.<ol.Attribution> | undefined | <optional> | Attributions.
  `crossOrigin` | null | string | undefined | <optional> | crossOrigin setting for image requests. Default is `anonymous`.
  `maxZoom` | number | undefined | <optional> | Max zoom.
  `tileLoadFunction` | ol.TileLoadFunctionType | undefined | <optional> | Optional function to load a tile given a URL.
  `url` | string | undefined | <optional> | URL template. Must include `{x}`, `{y}` or `{-y}`, and `{z}` placeholders. Default is `//{a-c}.tile.openstreetmap.org/{z}/{x}/{y}.png`.

#### olx.source.OSMXMLOptions{Object} experimental

  ##### Properties:

  Name | Type | Argument | Description
  --- | --- | --- | ---
  `attributions` | Array.<ol.Attribution> | undefined | <optional> | Attributions.
  `defaultStyle` | Array.<ol.style.Style> | undefined | <optional> | Default style.
  `doc` | Document | undefined | <optional> | Document.
  `extent` | ol.Extent | undefined | <optional> | Extent.
  `logo` | string | undefined | <optional> | Logo.
  `node` | Node | undefined | <optional> | Node.
  `projection` | ol.proj.ProjectionLike |  | Projection.
  `reprojectTo` | ol.proj.ProjectionLike |  | Re-project to.
  `text` | string | undefined | <optional> | Text.
  `url` | string | undefined | <optional> | URL.
  `urls` | Array.<string> | undefined | <optional> | URLs.

#### olx.source.ServerVectorOptions{Object} experimental

  ##### Properties:

  Name | Type | Argument | Description
  --- | --- | --- | ---
  `attributions` | Array.<ol.Attribution> | undefined | <optional> | Attributions.
  `extent` | ol.Extent | undefined | <optional> | Extent.
  `format` | ol.format.Feature |  | Format.
  `loader` | function |  | Loading function.
  `strategy` | function |  | Loading strategy. An `ol.loadingstrategy` or a custom function. Default is `ol.loadingstrategy.bbox`.
  `logo` | string | undefined | <optional> | Logo.
  `projection` | ol.proj.ProjectionLike |  | Projection.

#### olx.source.StamenOptions{Object} experimental

  ##### Properties:

  Name | Type | Argument | Description
  --- | --- | --- | ---
  `layer` | string |  | Layer.
  `minZoom` | number | undefined | <optional> | Minimum zoom.
  `maxZoom` | number | undefined | <optional> | Maximum zoom.
  `opaque` | boolean | undefined | <optional> | Whether the layer is opaque.
  `tileLoadFunction` | ol.TileLoadFunctionType | undefined | <optional> | Optional function to load a tile given a URL.
  `url` | string | undefined | <optional> | URL template. Must include `{x}`, `{y}` or `{-y}`, and `{z}` placeholders.

#### olx.source.StaticVectorOptions{Object} experimental

  ##### Properties:

  Name | Type | Argument | Description
  --- | --- | --- | ---
  `arrayBuffer` | ArrayBuffer | undefined | <optional> | Array buffer.
  `attributions` | Array.<ol.Attribution> | undefined | <optional> | Attributions.
  `doc` | Document | undefined | <optional> | Document.
  `extent` | ol.Extent | undefined | <optional> | Extent.
  `format` | ol.format.Feature |  | Format.
  `logo` | string | undefined | <optional> | Logo.
  `node` | Node | undefined | <optional> | Node.
  `object` | Object | undefined | <optional> | Object.
  `projection` | ol.proj.ProjectionLike |  | Projection.
  `text` | string | undefined | <optional> | Text.
  `url` | string | undefined | <optional> | URL.
  `urls` | Array.<string> | undefined | <optional> | URLs.

#### olx.source.TileDebugOptions{Object} experimental

  ##### Properties:

  Name | Type | Argument | Description
  --- | --- | --- | ---
  `extent` | ol.Extent | undefined | <optional> | Extent.
  `projection` | ol.proj.ProjectionLike |  | Projection.
  `tileGrid` | ol.tilegrid.TileGrid | undefined | <optional> | Tile grid.

#### olx.source.TileImageOptions{Object} experimental

  ##### Properties:

  Name | Type | Argument | Description
  --- | --- | --- | ---
  `attributions` | Array.<ol.Attribution> | undefined | <optional> | Attributions.
  `crossOrigin` | null | string | undefined | <optional> | crossOrigin setting for image requests. Default is `null`.
  `extent` | ol.Extent | undefined | <optional> | Extent.
  `logo` | string | undefined | <optional> | Logo.
  `opaque` | boolean | undefined | <optional> | Whether the layer is opaque.
  `pixelRatio` | number | undefined | <optional> | Tile size pixel ratio provided by the server.
  `projection` | ol.proj.ProjectionLike |  | Projection.
  `tileClass` | function | undefined | <optional> | tile class
  `tileGrid` | ol.tilegrid.TileGrid | undefined | <optional> | Tile grid.
  `tileLoadFunction` | ol.TileLoadFunctionType | undefined | <optional> | Optional function to load a tile given a URL.
  `tileUrlFunction` | ol.TileUrlFunctionType | undefined | <optional> | Optional function to get tile URL given a tile coordinate and the projection.

#### olx.source.TileJSONOptions{Object} experimental

  ##### Properties:

  Name | Type | Argument | Description
  --- | --- | --- | ---
  `crossOrigin` | null | string | undefined | <optional> | crossOrigin setting for image requests.
  `tileLoadFunction` | ol.TileLoadFunctionType | undefined | <optional> | Optional function to load a tile given a URL.
  `url` | string |  | URL to the TileJSON file.

#### olx.source.TileVectorOptions{Object} experimental

  ##### Properties:

  Name | Type | Argument | Description
  --- | --- | --- | ---
  `attributions` | Array.<ol.Attribution> | undefined | <optional> | Attributions.
  `defaultProjection` | ol.proj.ProjectionLike |  | Default projection.
  `extent` | ol.Extent | undefined | <optional> | Extent.
  `logo` | string | undefined | <optional> | Logo.
  `object` | GeoJSONObject | undefined | <optional> | Object.
  `projection` | ol.proj.ProjectionLike |  | Destination projection. If provided, features will be transformed to this projection. If not provided, features will not be transformed.
  `tileGrid` | ol.tilegrid.TileGrid |  | Tile grid.
  `tileUrlFunction` | ol.TileUrlFunctionType | undefined | <optional> | Optional function to get tile URL given a tile coordinate and the projection. Required if url or urls are not provided.
  `url` | string | undefined | <optional> | URL template. Must include `{x}`, `{y}` or `{-y}`, and `{z}` placeholders.
  `urls` | Array.<string> | undefined | <optional> | An array of URL templates.

#### olx.source.TileWMSOptions{Object} experimental

  ##### Properties:

  Name | Type | Argument | Description
  --- | --- | --- | ---
  `attributions` | Array.<ol.Attribution> | undefined | <optional> | Attributions.
  `params` | Object.<string, *> |  | WMS request parameters. At least a `LAYERS` param is required. `STYLES` is `''` by default. `VERSION` is `1.3.0` by default. `WIDTH`, `HEIGHT`, `BBOX` and `CRS` (`SRS` for WMS version < 1.3.0) will be set dynamically.
  `crossOrigin` | null | string | undefined | <optional> | crossOrigin setting for image requests.
  `extent` | ol.Extent | undefined | <optional> | Extent.
  `gutter` | number | undefined | <optional> | The size in pixels of the gutter around image tiles to ignore. By setting this property to a non-zero value, images will be requested that are wider and taller than the tile size by a value of `2 x gutter`. Defaults to zero. Using a non-zero value allows artifacts of rendering at tile edges to be ignored. If you control the WMS service it is recommended to address "artifacts at tile edges" issues by properly configuring the WMS service. For example, MapServer has a `tile_map_edge_buffer` configuration parameter for this. See http://mapserver.org/output/tile_mode.html.
  `hidpi` | boolean | undefined | <optional> | Use the `ol.Map#pixelRatio` value when requesting the image from the remote server. Default is `true`.
  `logo` | string | undefined | <optional> | Logo.
  `tileGrid` | ol.tilegrid.TileGrid | undefined | <optional> | Tile grid.
  `maxZoom` | number | undefined | <optional> | Maximum zoom.
  `projection` | ol.proj.ProjectionLike |  | Projection.
  `serverType` | ol.source.wms.ServerType | string | undefined | <optional> | The type of the remote WMS server. Currently only used when `hidpi` is `true`. Default is `undefined`.
  `tileLoadFunction` | ol.TileLoadFunctionType | undefined | <optional> | Optional function to load a tile given a URL.
  `url` | string | undefined | <optional> | WMS service URL.
  `urls` | Array.<string> | undefined | <optional> | WMS service urls. Use this instead of `url` when the WMS supports multiple urls for GetMap requests.

#### olx.source.TopoJSONOptions{Object} experimental

  ##### Properties:

  Name | Type | Argument | Description
  --- | --- | --- | ---
  `attributions` | Array.<ol.Attribution> | undefined | <optional> | Attributions.
  `defaultProjection` | ol.proj.ProjectionLike |  | Default projection.
  `extent` | ol.Extent | undefined | <optional> | Extent.
  `logo` | string | undefined | <optional> | Logo.
  `object` | GeoJSONObject | undefined | <optional> | Object.
  `projection` | ol.proj.ProjectionLike |  | Destination projection. If provided, features will be transformed to this projection. If not provided, features will not be transformed.
  `text` | string | undefined | <optional> | Text.
  `url` | string | undefined | <optional> | URL.

#### olx.source.VectorOptions{Object} experimental

  ##### Properties:

  Name | Type | Argument | Description
  --- | --- | --- | ---
  `attributions` | Array.<ol.Attribution> | undefined | <optional> | Attributions.
  `extent` | ol.Extent | undefined | <optional> | Extent.
  `features` | Array.<ol.Feature> | undefined | <optional> | Features.
  `logo` | string | undefined | <optional> | Logo.
  `projection` | ol.proj.ProjectionLike |  | Projection.
  `state` | ol.source.State | string | undefined | <optional> | State.

#### olx.source.WMTSOptions{Object} experimental

  ##### Properties:

  Name | Type | Argument | Description
  --- | --- | --- | ---
  `attributions` | Array.<ol.Attribution> | undefined | <optional> | Attributions.
  `crossOrigin` | string | null | undefined | <optional> | crossOrigin setting for image requests.
  `extent` | ol.Extent | undefined | <optional> | Extent.
  `logo` | string | undefined | <optional> | Logo.
  `pixelRatio` | number | undefined | <optional> | Device pixel ratio supported by the server.
  `tileGrid` | ol.tilegrid.WMTS |  | Tile grid.
  `projection` | ol.proj.ProjectionLike |  | Projection.
  `requestEncoding` | ol.source.WMTSRequestEncoding | undefined | <optional> | Request encoding.
  `layer` | string |  | Layer.
  `style` | string |  | Style.
  `version` | string | undefined | <optional> | WMTS version. Default to `1.0.0`.
  `format` | string | undefined | <optional> | Format.
  `matrixSet` | string |  | Matrix set.
  `dimensions` | Object | undefined | <optional> | Dimensions.
  `url` | string | undefined | <optional> | URL.
  `maxZoom` | number | undefined | <optional> | Maximum zoom.
  `tileLoadFunction` | ol.TileLoadFunctionType | undefined | <optional> | Optional function to load a tile given a URL.
  `urls` | Array.<string> | undefined | <optional> | Urls.

#### olx.source.XYZOptions{Object} experimental

  ##### Properties:

  Name | Type | Argument | Description
  --- | --- | --- | ---
  `attributions` | Array.<ol.Attribution> | undefined | <optional> | Attributions.
  `crossOrigin` | null | string | undefined | <optional> | Cross origin setting for image requests.
  `extent` | ol.Extent | undefined | <optional> | Extent.
  `logo` | string | undefined | <optional> | Logo.
  `projection` | ol.proj.ProjectionLike |  | Projection. Default is `EPSG:3857`.
  `maxZoom` | number | undefined | <optional> | Optional max zoom level. Default is `18`.
  `minZoom` | number | undefined | <optional> | Unsupported (TODO: remove this).
  `tileLoadFunction` | ol.TileLoadFunctionType | undefined | <optional> | Optional function to load a tile given a URL.
  `tileUrlFunction` | ol.TileUrlFunctionType | undefined | <optional> | Optional function to get tile URL given a tile coordinate and the projection. Required if url or urls are not provided.
  `url` | string | undefined | <optional> | URL template. Must include `{x}`, `{y}` or `{-y}`, and `{z}` placeholders.
  `urls` | Array.<string> | undefined | <optional> | An array of URL templates.
  `wrapX` | boolean | undefined | <optional> | Whether to wrap the world horizontally. Default is `true`.

#### olx.source.ZoomifyOptions{Object} experimental

  ##### Properties:

  Name | Type | Argument | Description
  --- | --- | --- | ---
  `attributions` | Array.<ol.Attribution> | undefined | <optional> | Attributions.
  `crossOrigin` | null | string | undefined | <optional> | Cross origin setting for image requests.
  `logo` | string | undefined | <optional> | Logo.
  `url` | string |  | Prefix of URL template.
  `tierSizeCalculation` | string | undefined | <optional> | Tier size calculation method: `default` or `truncated`.
  `size` | ol.Size |  | Size of the image.