1136 lines
52 KiB
Plaintext
1136 lines
52 KiB
Plaintext
/**
|
||
* @typedef {Object} olx.AttributionOptions
|
||
* @property {string} html HTML markup for this attribution.
|
||
* @property {Object.<string, Array.<ol.TileRange>>|undefined} tileRanges
|
||
* Tile ranges (FOR INTERNAL USE ONLY).
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.DeviceOptions
|
||
* @property {boolean|undefined} loadTilesWhileAnimating When set to false,
|
||
* no tiles will be loaded while animating, which improves responsiveness
|
||
* on devices with slow memory. Default is `true`.
|
||
* @property {boolean|undefined} loadTilesWhileInteracting When set to false,
|
||
* no tiles will be loaded while interacting, which improves responsiveness
|
||
* on devices with slow memory. Default is `true`.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.DeviceOrientationOptions
|
||
* @property {boolean|undefined} tracking Start tracking. Default is `false`.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.GeolocationOptions
|
||
* @property {boolean|undefined} tracking Start Tracking. Default is `false`.
|
||
* @property {GeolocationPositionOptions|undefined} trackingOptions Tracking options.
|
||
* @property {ol.proj.ProjectionLike} projection Projection.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* Object literal with config options for the map.
|
||
* @typedef {Object} olx.MapOptions
|
||
* @property {ol.Collection|Array.<ol.control.Control>|undefined} controls
|
||
* Controls initially added to the map.
|
||
* @property {olx.DeviceOptions|undefined} deviceOptions
|
||
* Device options for the map.
|
||
* @property {number|undefined} pixelRatio The ratio between physical
|
||
* pixels and device-independent pixels (dips) on the device. If `undefined`
|
||
* then it gets set by using `window.devicePixelRatio`.
|
||
* @property {ol.Collection|Array.<ol.interaction.Interaction>|undefined} interactions
|
||
* Interactions that are initially added to the map.
|
||
* @property {Element|Document|string|undefined} keyboardEventTarget
|
||
* The element to listen to keyboard events on.
|
||
* This determines when the `KeyboardPan` and `KeyboardZoom` interactions trigger. For example, if
|
||
* this option is set to `document` the keyboard interactions will always trigger. If this option
|
||
* is not specified, the element the library listens to keyboard events on is the map target (i.e.
|
||
* the user-provided div for the map). If this is not `document` the target element needs to be
|
||
* focused for key events to be emitted, requiring that the target element has a `tabindex`
|
||
* attribute.
|
||
* @property {Array.<ol.layer.Base>|ol.Collection|undefined} layers Layers.
|
||
* @property {boolean|undefined} ol3Logo Show ol3 logo. Default is `true`.
|
||
* @property {ol.Collection|Array.<ol.Overlay>|undefined} overlays
|
||
* Overlays initially added to the map.
|
||
* @property {ol.RendererHint|Array.<ol.RendererHint|string>|string|undefined} renderer Renderer.
|
||
* @property {Element|string|undefined} target The container for the map.
|
||
* @property {ol.IView|undefined} view The map's view. Currently
|
||
* {@link ol.View2D} is available as view.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* Object literal with config options for the overlay.
|
||
* @typedef {Object} olx.OverlayOptions
|
||
* @property {Element|undefined} element The overlay element.
|
||
* @property {ol.Coordinate|undefined} position The overlay position in map
|
||
* projection.
|
||
* @property {ol.OverlayPositioning|string|undefined} positioning Positioning.
|
||
* @property {boolean|undefined} stopEvent Whether event propagation to the map
|
||
* viewport should be stopped. Default is `true`. If `true` the overlay is
|
||
* placed in the same container as that of the controls
|
||
* (`ol-overlaycontainer-stopevent`).
|
||
* @property {boolean|undefined} insertFirst Whether the overlay is inserted
|
||
* first in the overlay container, or appended. Default is `true`. If the
|
||
* overlay is placed in the same container as that of the controls (see
|
||
* the `stopEvent` option) you will probably set `insertFirst` to `true`
|
||
* so the overlay is displayed below the controls.
|
||
* @property {number|undefined} offsetX Horizontal offset in pixels.
|
||
* A positive will shift the overlay right. Default is `0`.
|
||
* @property {number|undefined} offsetY Vertical offset in pixels.
|
||
* A positive will shift the overlay down. Default is `0`.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* Object literal with config options for the Proj4js projection.
|
||
* @typedef {Object} olx.Proj4jsProjectionOptions
|
||
* @property {string} code The SRS identifier code, e.g. `EPSG:31256`.
|
||
* @property {ol.Extent|undefined} extent The validity extent for the SRS.
|
||
* @property {boolean|undefined} global Whether the projection is valid for the
|
||
* whole globe. Default is `false`.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* Object literal with config options for the projection.
|
||
* @typedef {Object} olx.ProjectionOptions
|
||
* @property {string} code The SRS identifier code, e.g. `EPSG:4326`.
|
||
* @property {ol.proj.Units|string} units Units.
|
||
* @property {ol.Extent|undefined} extent The validity extent for the SRS.
|
||
* @property {string|undefined} axisOrientation The axis orientation as
|
||
* specified in Proj4. The default is `enu`.
|
||
* @property {boolean|undefined} global Whether the projection is valid for the
|
||
* whole globe. Default is `false`.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* Object literal with config options for the view.
|
||
* @typedef {Object} olx.View2DOptions
|
||
* @property {ol.Coordinate|undefined} center The initial center for the view.
|
||
* The coordinate system for the center is specified with the `projection`
|
||
* option. Default is `undefined`, and layer sources will not be fetched if
|
||
* this is not set.
|
||
* @property {boolean|number|undefined} constrainRotation Rotation constraint.
|
||
* `false` means no constraint. `true` means no constraint, but snap to
|
||
* zero near zero. A number constraints the rotation to that number of
|
||
* values. For example, `4` will constrain the rotation to 0, 90, 180, and
|
||
* 270 degrees. The default is `true`.
|
||
* @property {boolean|undefined} enableRotation Enable rotation. Default is
|
||
* `true`.
|
||
* @property {ol.Extent|undefined} extent The extent that constrains the center,
|
||
* in other words, center cannot be set outside this extent.
|
||
* Default is `undefined`.
|
||
* @property {number|undefined} maxResolution The maximum resolution used to
|
||
* determine the resolution constraint. It is used together with `maxZoom`
|
||
* and `zoomFactor`. If unspecified it is calculated in such a way that the
|
||
* projection's validity extent fits in a 256x256 px tile. If the projection
|
||
* is Spherical Mercator (the default) then `maxResolution` defaults to
|
||
* `40075016.68557849 / 256 = 156543.03392804097`.
|
||
* @property {number|undefined} maxZoom The maximum zoom level used to determine
|
||
* the resolution constraint. It is used together with `maxResolution` and
|
||
* `zoomFactor`. Default is `28`.
|
||
* @property {ol.proj.ProjectionLike} projection The projection. Default is
|
||
* `EPSG:3857` (Spherical Mercator).
|
||
* @property {number|undefined} resolution The initial resolution for the view.
|
||
* The units are `projection` units per pixel (e.g. meters per pixel).
|
||
* An alternative to setting this is to set `zoom`. Default is `undefined`,
|
||
* and layer sources will not be fetched if neither this nor `zoom` are
|
||
* defined.
|
||
* @property {Array.<number>|undefined} resolutions Resolutions to determine the
|
||
* resolution constraint. If set the `maxResolution`, `maxZoom` and
|
||
* `zoomFactor` options are ignored.
|
||
* @property {number|undefined} rotation The initial rotation for the view
|
||
* in radians (positive rotation clockwise). Default is `0`.
|
||
* @property {number|undefined} zoom Only used if `resolution` is not defined.
|
||
* Zoom level used to calculate the initial resolution for the view.
|
||
* The initial resolution is determined using the
|
||
* `ol.View2D#constrainResolution` method.
|
||
* @property {number|undefined} zoomFactor The zoom factor used to determine the
|
||
* resolution constraint. Used together with `maxResolution` and `maxZoom`.
|
||
* Default is `2`.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.animation.BounceOptions
|
||
* @property {number} resolution The resolution to start the bounce from, typically `map.getView().getResolution()`.
|
||
* @property {number|undefined} start The start time of the animation. Default is immediately.
|
||
* @property {number|undefined} duration The duration of the animation in milliseconds. Default is `1000`.
|
||
* @property {function(number):number|undefined} easing The easing function to use. Default is `ol.easing.upAndDown`
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.animation.PanOptions
|
||
* @property {ol.Coordinate} source The location to start panning from, typically `map.getView().getCenter()`.
|
||
* @property {number|undefined} start The start time of the animation. Default is immediately.
|
||
* @property {number|undefined} duration The duration of the animation in milliseconds. Default is `1000`.
|
||
* @property {function(number):number|undefined} easing The easing function to use. Default is `ol.easing.inAndOut`
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.animation.RotateOptions
|
||
* @property {number} rotation The rotation to apply, in radians.
|
||
* @property {number|undefined} start The start time of the animation. Default is immediately.
|
||
* @property {number|undefined} duration The duration of the animation in milliseconds. Default is `1000`.
|
||
* @property {function(number):number|undefined} easing The easing function to use. Default is `ol.easing.inAndOut`
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.animation.ZoomOptions
|
||
* @property {number} resolution number The resolution to begin zooming from, typically `map.getView().getResolution()`.
|
||
* @property {number|undefined} start The start time of the animation. Default is immediately.
|
||
* @property {number|undefined} duration The duration of the animation in milliseconds. Default is `1000`.
|
||
* @property {function(number):number|undefined} easing Easing function.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.control.AttributionOptions
|
||
* @property {string|undefined} className CSS class name. Default is `ol-attribution`.
|
||
* @property {Element|undefined} target Target.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.control.ControlOptions
|
||
* @property {Element|undefined} element The element is the control's container
|
||
* element. This only needs to be specified if you're developing a custom
|
||
* control.
|
||
* @property {Element|string|undefined} target Specify a target if you want the
|
||
* control to be rendered outside of the map's viewport.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.control.DefaultsOptions
|
||
* @property {boolean|undefined} attribution Attribution. Default is `true`.
|
||
* @property {olx.control.AttributionOptions|undefined} attributionOptions
|
||
* Attribution options.
|
||
* @property {boolean|undefined} logo Logo. Default is `true`.
|
||
* @property {olx.control.LogoOptions|undefined} logoOptions Logo options.
|
||
* @property {boolean|undefined} zoom Zoom. Default is `true`.
|
||
* @property {olx.control.ZoomOptions|undefined} zoomOptions Zoom options.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.control.FullScreenOptions
|
||
* @property {string|undefined} className CSS class name. Default is `ol-full-screen`.
|
||
* @property {string|undefined} tipLabel Text label to use for the button tip. Default is `Toggle full-screen`
|
||
* @property {boolean|undefined} keys Full keyboard access.
|
||
* @property {Element|undefined} target Target.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.control.LogoOptions
|
||
* @property {string|undefined} className CSS class name. Default is `ol-logo`.
|
||
* @property {Element|undefined} target Target.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.control.MousePositionOptions
|
||
* @property {string|undefined} className CSS class name. Default is `ol-mouse-position`.
|
||
* @property {ol.CoordinateFormatType|undefined} coordinateFormat Coordinate
|
||
* format.
|
||
* @property {ol.proj.ProjectionLike} projection Projection.
|
||
* @property {Element|undefined} target Target.
|
||
* @property {string|undefined} undefinedHTML Markup for undefined coordinates.
|
||
* Default is `` (empty string).
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.control.ScaleLineOptions
|
||
* @property {string|undefined} className CSS Class name. Default is `ol-scale-line`.
|
||
* @property {number|undefined} minWidth Minimum width in pixels. Default is `64`.
|
||
* @property {Element|undefined} target Target.
|
||
* @property {ol.control.ScaleLineUnits|string|undefined} units Units.
|
||
* Default is `metric`.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.control.ZoomOptions
|
||
* @property {number|undefined} duration Animation duration in milliseconds. Default is `250`.
|
||
* @property {string|undefined} className CSS class name. Default is `ol-zoom`.
|
||
* @property {string|undefined} zoomInLabel Text label to use for the zoom-in button. Default is `+`
|
||
* @property {string|undefined} zoomOutLabel Text label to use for the zoom-out button. Default is `-`
|
||
* @property {string|undefined} zoomInTipLabel Text label to use for the button tip. Default is `Zoom in`
|
||
* @property {string|undefined} zoomOutTipLabel Text label to use for the button tip. Default is `Zoom out`
|
||
* @property {number|undefined} delta The zoom delta applied on each click.
|
||
* @property {Element|undefined} target Target.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.control.ZoomSliderOptions
|
||
* @property {string|undefined} className CSS class name.
|
||
* @property {number|undefined} maxResolution Maximum resolution.
|
||
* @property {number|undefined} minResolution Minimum resolution.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.control.ZoomToExtentOptions
|
||
* @property {string|undefined} className Class name. Default is `ol-zoom-extent`.
|
||
* @property {Element|undefined} target Target.
|
||
* @property {string|undefined} tipLabel Text label to use for the button tip. Default is `Zoom to extent`
|
||
* @property {ol.Extent|undefined} extent The extent to zoom to. If
|
||
* undefined the validity extent of the view projection is used.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.format.GeoJSONOptions
|
||
* @property {ol.proj.ProjectionLike} defaultProjection Default projection.
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.format.TopoJSONOptions
|
||
* @property {ol.proj.ProjectionLike} defaultProjection Default projection.
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.format.IGCOptions
|
||
* @property {ol.format.IGCZ|undefined} altitudeMode Altitude mode.
|
||
* Possible values are `barometric`, `gps`, and `none`. Default is `none`.
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.format.KMLOptions
|
||
* @property {Array.<ol.style.Style>|undefined} defaultStyle Default style. The default
|
||
* default style is the same as Google Earth.
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.format.GMLOptions
|
||
* @property {string} featureNS Feature namespace.
|
||
* @property {string} featureType Feature type to parse.
|
||
* @property {string} srsName srsName to use when writing geometries.
|
||
* @property {boolean|undefined} surface Write gml:Surface instead of
|
||
* gml:Polygon elements. This also affects the elements in multi-part
|
||
* geometries. Default is `false´.
|
||
* @property {boolean|undefined} curve Write gml:Curve instead of
|
||
* gml:LineString elements. This also affects the elements in multi-part
|
||
* geometries. Default is `false´.
|
||
* @property {boolean|undefined} multiCurve Write gml:MultiCurve instead of
|
||
* gml:MultiLineString. Since the latter is deprecated in GML 3, the
|
||
* default is `true´.
|
||
* @property {boolean|undefined} multiSurface Write gml:multiSurface instead
|
||
* of gml:MultiPolygon. Since the latter is deprecated in GML 3, the
|
||
* default is `true´.
|
||
* @property {string|undefined} schemaLocation Optional schemaLocation to use
|
||
* when writing out the GML, this will override the default provided.
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.format.WFSOptions
|
||
* @property {string} featureNS The namespace URI used for features.
|
||
* @property {string} featureType The feature type to parse. Only used for
|
||
* read operations.
|
||
* @property {string|undefined} schemaLocation Optional schemaLocation to use
|
||
* for serialization, this will override the default.
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.format.WFSWriteGetFeatureOptions
|
||
* @property {string} featureNS The namespace URI used for features.
|
||
* @property {string} featurePrefix The prefix for the feature namespace.
|
||
* @property {Array.<string>} featureTypes The feature type names.
|
||
* @property {string|undefined} srsName SRS name. No srsName attribute will be
|
||
* set on geometries when this is not provided.
|
||
* @property {string|undefined} handle Handle.
|
||
* @property {string|undefined} outputFormat Output format.
|
||
* @property {number|undefined} maxFeatures Maximum number of features to fetch.
|
||
* @property {string|undefined} geometryName Geometry name to use in a BBOX
|
||
* filter.
|
||
* @property {ol.Extent|undefined} bbox Extent to use for the BBOX filter.
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.format.WFSWriteTransactionOptions
|
||
* @property {string} featureNS The namespace URI used for features.
|
||
* @property {string} featurePrefix The prefix for the feature namespace.
|
||
* @property {string} featureType The feature type name.
|
||
* @property {string|undefined} srsName SRS name. No srsName attribute will be
|
||
* set on geometries when this is not provided.
|
||
* @property {string|undefined} handle Handle.
|
||
* @property {Array.<Object>} nativeElements Native elements. Currently not
|
||
* supported.
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.interaction.DoubleClickZoomOptions
|
||
* @property {number|undefined} duration Animation duration in milliseconds. Default is `250`.
|
||
* @property {number|undefined} delta The zoom delta applied on each double
|
||
* click, default is `1`.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.interaction.DragAndDropOptions
|
||
* @property {Array.<function(new: ol.format.Feature)>|undefined} formatConstructors
|
||
* Format constructors.
|
||
* @property {ol.proj.ProjectionLike} reprojectTo Target projection. By
|
||
* default, the map's view's projection is used.
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.interaction.DragPanOptions
|
||
* @property {ol.Kinetic|undefined} kinetic Kinetic inertia to apply to the pan.
|
||
* @property {ol.events.ConditionType|undefined} condition A conditional
|
||
* modifier (i.e. Shift key) that determines if the interaction is active
|
||
* or not, default is no modifiers.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.interaction.DragRotateOptions
|
||
* @property {ol.events.ConditionType|undefined} condition A conditional
|
||
* modifier (i.e. Shift key) that determines if the interaction is active
|
||
* or not, default is both shift and alt keys.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.interaction.DragRotateAndZoomOptions
|
||
* @property {ol.events.ConditionType|undefined} condition A conditional
|
||
* modifier (i.e. Shift key) that determines if the interaction is active
|
||
* or not, default is shify key.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.interaction.DragBoxOptions
|
||
* @property {ol.events.ConditionType|undefined} condition A conditional
|
||
* modifier (i.e. Shift key) that determines if the interaction is active
|
||
* or not, default is always.
|
||
* @property {ol.style.Style} style Style for the box.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.interaction.DragZoomOptions
|
||
* @property {ol.events.ConditionType|undefined} condition A conditional
|
||
* modifier (i.e. Shift key) that determines if the interaction is active
|
||
* or not, default is shift key.
|
||
* @property {ol.style.Style} style Style for the box.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* Interactions for the map. Default is `true` for all options.
|
||
* @typedef {Object} olx.interaction.DefaultsOptions
|
||
* @property {boolean|undefined} altShiftDragRotate Whether Alt-Shift-drag
|
||
* rotate is desired. Default is `true`.
|
||
* @property {boolean|undefined} doubleClickZoom Whether double click zoom is
|
||
* desired. Default is `true`.
|
||
* @property {boolean|undefined} dragPan Whether drag-pan is desired. Default is `true`.
|
||
* @property {boolean|undefined} keyboard Whether keyboard interaction is
|
||
* desired. Default is `true`.
|
||
* @property {boolean|undefined} mouseWheelZoom Whether mousewheel zoom is
|
||
* desired. Default is `true`.
|
||
* @property {boolean|undefined} shiftDragZoom Whether Shift-drag zoom is
|
||
* desired. Default is `true`.
|
||
* @property {boolean|undefined} pan Whether pan is
|
||
* desired. Default is `true`.
|
||
* @property {boolean|undefined} rotate Whether rotate is desired. Default is `true`.
|
||
* @property {boolean|undefined} zoom Whether zoom is desired. Default is `true`.
|
||
* @property {number|undefined} zoomDelta Zoom delta.
|
||
* @property {number|undefined} zoomDuration Zoom duration.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.interaction.DrawOptions
|
||
* @property {ol.Collection|undefined} features Destination collection for the drawn features.
|
||
* @property {ol.source.Vector|undefined} source Destination source for the drawn features.
|
||
* @property {number|undefined} snapTolerance Pixel distance for snapping to the
|
||
* drawing finish (default is 12).
|
||
* @property {ol.geom.GeometryType} type Drawing type ('Point', 'LineString',
|
||
* 'Polygon', 'MultiPoint', 'MultiLineString', or 'MultiPolygon').
|
||
* @property {number|undefined} minPointsPerRing The number of points that must
|
||
* be drawn before a polygon ring can be finished (default is 3).
|
||
* @property {ol.style.Style|Array.<ol.style.Style>|ol.feature.StyleFunction|undefined} style
|
||
* Style for sketch features.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.interaction.KeyboardPanOptions
|
||
* @property {ol.events.ConditionType|undefined} condition A conditional
|
||
* modifier (i.e. Shift key) that determines if the interaction is active
|
||
* or not, default is no modifiers.
|
||
* @property {number|undefined} pixelDelta Pixel The amount to pan on each key
|
||
* press. Default is `128` pixels.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.interaction.KeyboardZoomOptions
|
||
* @property {number|undefined} duration Animation duration in milliseconds. Default is `100`.
|
||
* @property {ol.events.ConditionType|undefined} condition A conditional
|
||
* modifier (i.e. Shift key) that determines if the interaction is active
|
||
* or not, default is no modifiers.
|
||
* @property {number|undefined} delta The amount to zoom on each key press. Default is `1`.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.interaction.MouseWheelZoomOptions
|
||
* @property {number|undefined} duration Animation duration in milliseconds. Default is `250`.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.interaction.SelectOptions
|
||
* @property {ol.events.ConditionType|undefined} addCondition A conditional
|
||
* modifier (e.g. shift key) that determines if the selection is added to
|
||
* the current selection. By default, a shift-click adds to the current
|
||
* selection.
|
||
* @property {ol.events.ConditionType|undefined} condition A conditional
|
||
* modifier (e.g. shift key) that determines if the interaction is active
|
||
* (i.e. selection occurs) or not. By default, a click with no modifier keys
|
||
* toggles the selection.
|
||
* @property {function(ol.layer.Layer): boolean|undefined} layerFilter Filter
|
||
* function to restrict selection to a subset of layers.
|
||
* @property {ol.layer.Layer|undefined} layer Layer. The single layer from which
|
||
* features should be selected.
|
||
* @property {Array.<ol.layer.Layer>|undefined} layers Layers. Zero or more
|
||
* layers from which features should be selected.
|
||
* @property {ol.style.Style|Array.<ol.style.Style>|ol.feature.StyleFunction|undefined} style FeatureOverlay style.
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.interaction.PanOptions
|
||
* @property {ol.Kinetic|undefined} kinetic Kinetic inertia to apply to the
|
||
* pan.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.interaction.ModifyOptions
|
||
* @property {number|undefined} pixelTolerance Pixel tolerance for considering
|
||
* the pointer close enough to a vertex for editing. Default is 20 pixels.
|
||
* @property {ol.style.Style|Array.<ol.style.Style>|ol.feature.StyleFunction|undefined} style FeatureOverlay style.
|
||
* @property {ol.Collection} features The features the interaction works on.
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.interaction.RotateOptions
|
||
* @property {number|undefined} threshold Minimal angle in radians to start a rotation.
|
||
* Default is `0.3`.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.interaction.ZoomOptions
|
||
* @property {number|undefined} duration Animation duration in milliseconds. Default is `400`.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.layer.BaseOptions
|
||
* @property {number|undefined} brightness Brightness. Default is `0`.
|
||
* @property {number|undefined} contrast Contrast. Default is `1`.
|
||
* @property {number|undefined} hue Hue. Default is `0`.
|
||
* @property {number|undefined} opacity Opacity (0, 1). Default is `1`.
|
||
* @property {number|undefined} saturation Saturation. Default is `1`.
|
||
* @property {boolean|undefined} visible Visibility. Default is `true`.
|
||
* @property {number|undefined} minResolution The minimum resolution
|
||
* (inclusive) at which this layer will be visible.
|
||
* @property {number|undefined} maxResolution The maximum resolution
|
||
* (exclusive) below which this layer will be visible.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.layer.LayerOptions
|
||
* @property {number|undefined} brightness Brightness. Default is `0`.
|
||
* @property {number|undefined} contrast Contrast. Default is `1`.
|
||
* @property {number|undefined} hue Hue. Default is `0`.
|
||
* @property {number|undefined} opacity Opacity (0, 1). Default is `1`.
|
||
* @property {number|undefined} saturation Saturation. Default is `1`.
|
||
* @property {ol.source.Source} source Source for this layer.
|
||
* @property {boolean|undefined} visible Visibility. Default is `true` (visible).
|
||
* @property {number|undefined} minResolution The minimum resolution
|
||
* (inclusive) at which this layer will be visible.
|
||
* @property {number|undefined} maxResolution The maximum resolution
|
||
* (exclusive) below which this layer will be visible.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.layer.GroupOptions
|
||
* @property {number|undefined} brightness Brightness. Default is `0`.
|
||
* @property {number|undefined} contrast Contrast. Default is `1`.
|
||
* @property {number|undefined} hue Hue. Default is `0`.
|
||
* @property {number|undefined} opacity Opacity (0, 1). Default is `1`.
|
||
* @property {number|undefined} saturation Saturation. Default is `1`.
|
||
* @property {boolean|undefined} visible Visibility. Default is `true`.
|
||
* @property {number|undefined} minResolution The minimum resolution
|
||
* (inclusive) at which this layer will be visible.
|
||
* @property {number|undefined} maxResolution The maximum resolution
|
||
* (exclusive) below which this layer will be visible.
|
||
* @property {Array.<ol.layer.Base>|ol.Collection|undefined} layers Child layers.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.layer.HeatmapOptions
|
||
* @property {number|undefined} brightness Brightness.
|
||
* @property {number|undefined} contrast Contrast.
|
||
* @property {number|undefined} hue Hue.
|
||
* @property {Array.<string>|undefined} gradient The color gradient of the heatmap,
|
||
* specified as an array of CSS color strings. Default is `['#00f', '#0ff', '#0f0', '#ff0', '#f00']`.
|
||
* @property {number|undefined} radius Radius size in pixels. Default is `8`.
|
||
* @property {number|undefined} blur Blur size in pixels. Default is `15`.
|
||
* @property {number|undefined} shadow Shadow size in pixels. Default is `250`.
|
||
* @property {number|undefined} minResolution The minimum resolution
|
||
* (inclusive) at which this layer will be visible.
|
||
* @property {number|undefined} maxResolution The maximum resolution
|
||
* (exclusive) below which this layer will be visible.
|
||
* @property {number|undefined} opacity Opacity. 0-1. Default is `1`.
|
||
* @property {number|undefined} saturation Saturation.
|
||
* @property {ol.source.Vector} source Source.
|
||
* @property {boolean|undefined} visible Visibility. Default is `true` (visible).
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
|
||
/**
|
||
* @typedef {Object} olx.layer.TileOptions
|
||
* @property {number|undefined} brightness Brightness. Default is `0`.
|
||
* @property {number|undefined} contrast Contrast. Default is `1`.
|
||
* @property {number|undefined} hue Hue. Default is `0`.
|
||
* @property {number|undefined} opacity Opacity (0, 1). Default is `1`.
|
||
* @property {number|undefined} preload Preload.
|
||
* @property {number|undefined} saturation Saturation. Default is `1`.
|
||
* @property {ol.source.Source} source Source for this layer.
|
||
* @property {boolean|undefined} visible Visibility. Default is `true` (visible).
|
||
* @property {number|undefined} minResolution The minimum resolution
|
||
* (inclusive) at which this layer will be visible.
|
||
* @property {number|undefined} maxResolution The maximum resolution
|
||
* (exclusive) below which this layer will be visible.
|
||
* @property {boolean|undefined} useInterimTilesOnError Use interim tiles on
|
||
* error. Default is `true`.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.layer.VectorOptions
|
||
* @property {number|undefined} brightness Brightness.
|
||
* @property {number|undefined} contrast Contrast.
|
||
* @property {number|undefined} hue Hue.
|
||
* @property {number|undefined} minResolution The minimum resolution
|
||
* (inclusive) at which this layer will be visible.
|
||
* @property {number|undefined} maxResolution The maximum resolution
|
||
* (exclusive) below which this layer will be visible.
|
||
* @property {number|undefined} opacity Opacity. 0-1. Default is `1`.
|
||
* @property {number|undefined} saturation Saturation.
|
||
* @property {ol.source.Vector} source Source.
|
||
* @property {ol.style.Style|Array.<ol.style.Style>|ol.feature.StyleFunction|undefined} style Layer style.
|
||
* @property {boolean|undefined} visible Visibility. Default is `true` (visible).
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.FeatureOverlayOptions
|
||
* @property {Array.<ol.Feature>|ol.Collection|undefined} features Features.
|
||
* @property {ol.Map|undefined} map Map.
|
||
* @property {ol.style.Style|Array.<ol.style.Style>|ol.feature.StyleFunction|undefined} style Feature style.
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.source.BingMapsOptions
|
||
* @property {string|undefined} culture Culture code. Default is `en-us`.
|
||
* @property {string} key Bing Maps API key. Get yours at
|
||
* http://bingmapsportal.com/.
|
||
* @property {string} imagerySet Type of imagery.
|
||
* @property {ol.TileLoadFunctionType|undefined} tileLoadFunction Optional
|
||
* function to load a tile given a URL.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.source.GeoJSONOptions
|
||
* @property {Array.<ol.Attribution>|undefined} attributions Attributions.
|
||
* @property {ol.proj.ProjectionLike} defaultProjection Default projection.
|
||
* @property {ol.Extent|undefined} extent Extent.
|
||
* @property {string|undefined} logo Logo.
|
||
* @property {GeoJSONObject|undefined} object Object.
|
||
* @property {ol.proj.ProjectionLike} projection Destination projection. If
|
||
* provided, features will be transformed to this projection. If not
|
||
* provided, features will not be transformed.
|
||
* @property {string|undefined} text Text.
|
||
* @property {string|undefined} url URL.
|
||
* @property {Array.<string>|undefined} urls URLs.
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.source.GPXOptions
|
||
* @property {Array.<ol.Attribution>|undefined} attributions Attributions.
|
||
* @property {Document|undefined} doc Document.
|
||
* @property {ol.Extent|undefined} extent Extent.
|
||
* @property {string|undefined} logo Logo.
|
||
* @property {Node|undefined} node Node.
|
||
* @property {ol.proj.ProjectionLike} projection Destination projection. If
|
||
* provided, features will be transformed to this projection. If not
|
||
* provided, features will not be transformed.
|
||
* @property {string|undefined} text Text.
|
||
* @property {string|undefined} url URL.
|
||
* @property {Array.<string>|undefined} urls URLs.
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.source.TopoJSONOptions
|
||
* @property {Array.<ol.Attribution>|undefined} attributions Attributions.
|
||
* @property {ol.proj.ProjectionLike} defaultProjection Default projection.
|
||
* @property {ol.Extent|undefined} extent Extent.
|
||
* @property {string|undefined} logo Logo.
|
||
* @property {GeoJSONObject|undefined} object Object.
|
||
* @property {ol.proj.ProjectionLike} projection Destination projection. If
|
||
* provided, features will be transformed to this projection. If not
|
||
* provided, features will not be transformed.
|
||
* @property {string|undefined} text Text.
|
||
* @property {string|undefined} url URL.
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.source.IGCOptions
|
||
* @property {ol.format.IGCZ|undefined} altitudeMode Altitude mode.
|
||
* Possible values are `barometric`, `gps`, and `none`. Default is `none`.
|
||
* @property {ol.proj.ProjectionLike} projection Destination projection. If
|
||
* provided, features will be transformed to this projection. If not
|
||
* provided, features will not be transformed.
|
||
* @property {string|undefined} text Text.
|
||
* @property {string|undefined} url URL.
|
||
* @property {Array.<string>|undefined} urls URLs.
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.source.MapGuideOptions
|
||
* @property {string|undefined} url The mapagent url.
|
||
* @property {number|undefined} displayDpi The display resolution. Default is `96`.
|
||
* @property {number|undefined} metersPerUnit The meters-per-unit value. Default is `1`.
|
||
* @property {ol.Extent|undefined} extent Extent.
|
||
* @property {boolean|undefined} hidpi Use the `ol.Map#pixelRatio` value when
|
||
* requesting the image from the remote server. Default is `true`.
|
||
* @property {boolean|undefined} useOverlay If `true`, will use
|
||
* `GETDYNAMICMAPOVERLAYIMAGE`.
|
||
* @property {ol.proj.ProjectionLike} projection Projection.
|
||
* @property {number|undefined} ratio 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`.
|
||
* @property {Array.<number>|undefined} resolutions Resolutions. If specified,
|
||
* requests will be made for these resolutions only.
|
||
* @property {Object|undefined} params Additional parameters.
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.source.KMLOptions
|
||
* @property {Array.<ol.Attribution>|undefined} attributions Attributions.
|
||
* @property {Array.<ol.style.Style>|undefined} defaultStyle Default style.
|
||
* @property {Document|undefined} doc Document.
|
||
* @property {ol.Extent|undefined} extent Extent.
|
||
* @property {string|undefined} logo Logo.
|
||
* @property {Node|undefined} node Node.
|
||
* @property {ol.proj.ProjectionLike} projection Destination projection. If
|
||
* provided, features will be transformed to this projection. If not
|
||
* provided, features will not be transformed.
|
||
* @property {string|undefined} text Text.
|
||
* @property {string|undefined} url URL.
|
||
* @property {Array.<string>|undefined} urls URLs.
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.source.MapQuestOptions
|
||
* @property {string} layer Layer. Possible values are `osm`, `sat`, and `hyb`.
|
||
* @property {ol.TileLoadFunctionType|undefined} tileLoadFunction Optional
|
||
* function to load a tile given a URL.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.source.TileDebugOptions
|
||
* @property {ol.Extent|undefined} extent Extent.
|
||
* @property {ol.proj.ProjectionLike} projection Projection.
|
||
* @property {ol.tilegrid.TileGrid|undefined} tileGrid Tile grid.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.source.OSMOptions
|
||
* @property {Array.<ol.Attribution>|undefined} attributions Attributions.
|
||
* @property {null|string|undefined} crossOrigin crossOrigin setting for image
|
||
* requests. Default is `anonymous`.
|
||
* @property {number|undefined} maxZoom Max zoom.
|
||
* @property {ol.TileLoadFunctionType|undefined} tileLoadFunction Optional
|
||
* function to load a tile given a URL.
|
||
* @property {string|undefined} url URL template. Must include `{x}`, `{y}`,
|
||
* and `{z}` placeholders. Default is
|
||
* `//{a-c}.tile.openstreetmap.org/{z}/{x}/{y}.png`.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.source.OSMXMLOptions
|
||
* @property {Array.<ol.Attribution>|undefined} attributions Attributions.
|
||
* @property {Array.<ol.style.Style>|undefined} defaultStyle Default style.
|
||
* @property {Document|undefined} doc Document.
|
||
* @property {ol.Extent|undefined} extent Extent.
|
||
* @property {string|undefined} logo Logo.
|
||
* @property {Node|undefined| node Node.
|
||
* @property {ol.proj.ProjectionLike} projection Projection.
|
||
* @property {ol.proj.ProjectionLike} reprojectTo Re-project to.
|
||
* @property {string|undefined} text Text.
|
||
* @property {string|undefined} url URL.
|
||
* @property {Array.<string>|undefined} urls URLs.
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.source.ImageCanvasOptions
|
||
* @property {Array.<ol.Attribution>|undefined} attributions Attributions.
|
||
* @property {ol.CanvasFunctionType} canvasFunction 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.
|
||
* @property {ol.Extent|undefined} extent Extent.
|
||
* @property {string|undefined} logo Logo.
|
||
* @property {ol.proj.ProjectionLike} projection Projection.
|
||
* @property {number|undefined} ratio 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`.
|
||
* @property {Array.<number>|undefined} resolutions Resolutions. If specified,
|
||
* new canvases will be created for these resolutions only.
|
||
* @property {ol.source.State|string|undefined} state Source state.
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.source.ImageVectorOptions
|
||
* @property {Array.<ol.Attribution>|undefined} attributions Attributions.
|
||
* @property {ol.Extent|undefined} extent Extent.
|
||
* @property {string|undefined} logo Logo.
|
||
* @property {ol.proj.ProjectionLike} projection Projection.
|
||
* @property {number|undefined} ratio 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`.
|
||
* @property {Array.<number>|undefined} resolutions Resolutions. If specified,
|
||
* new canvases will be created for these resolutions only.
|
||
* @property {ol.source.Vector} source The vector source from which the vector
|
||
* features drawn in canvas elements are read.
|
||
* @property {ol.style.Style|Array.<ol.style.Style>|ol.feature.StyleFunction|undefined} style
|
||
* Style to use when rendering features to the canvas.
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.source.ImageWMSOptions
|
||
* @property {Array.<ol.Attribution>|undefined} attributions Attributions.
|
||
* @property {null|string|undefined} crossOrigin crossOrigin setting for image
|
||
* requests.
|
||
* @property {ol.Extent|undefined} extent Extent.
|
||
* @property {boolean|undefined} hidpi Use the `ol.Map#pixelRatio` value when
|
||
* requesting the image from the remote server. Default is `true`.
|
||
* @property {ol.source.wms.ServerType|string|undefined} serverType The type of the remote WMS
|
||
* server: `mapserver`, `geoserver` or `qgis`. Only needed if `hidpi` is `true`.
|
||
* Default is `undefined`.
|
||
* @property {string|undefined} logo Logo.
|
||
* @property {Object.<string,*>} params 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.
|
||
* @property {ol.proj.ProjectionLike} projection Projection.
|
||
* @property {number|undefined} ratio 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`.
|
||
* @property {Array.<number>|undefined} resolutions Resolutions. If specified,
|
||
* requests will be made for these resolutions only.
|
||
* @property {string|undefined} url WMS service URL.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.source.StamenOptions
|
||
* @property {string} layer Layer.
|
||
* @property {number|undefined} minZoom Minimum zoom.
|
||
* @property {number|undefined} maxZoom Maximum zoom.
|
||
* @property {boolean|undefined} opaque Whether the layer is opaque.
|
||
* @property {ol.TileLoadFunctionType|undefined} tileLoadFunction Optional
|
||
* function to load a tile given a URL.
|
||
* @property {string|undefined} url URL template. Must include `{x}`, `{y}`,
|
||
* and `{z}` placeholders.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.source.ImageStaticOptions
|
||
* @property {Array.<ol.Attribution>|undefined} attributions Attributions.
|
||
* @property {null|string|undefined} crossOrigin crossOrigin setting for image
|
||
* requests.
|
||
* @property {ol.Extent|undefined} extent Extent.
|
||
* @property {ol.Extent|undefined} imageExtent Extent of the image.
|
||
* @property {ol.Size|undefined} imageSize Size of the image.
|
||
* @property {string|undefined} logo Logo.
|
||
* @property {ol.proj.ProjectionLike} projection Projection.
|
||
* @property {string} url Url.
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.source.TileJSONOptions
|
||
* @property {null|string|undefined} crossOrigin crossOrigin setting for image
|
||
* requests.
|
||
* @property {ol.TileLoadFunctionType|undefined} tileLoadFunction Optional
|
||
* function to load a tile given a URL.
|
||
* @property {string} url URL to the TileJSON file.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.source.TileWMSOptions
|
||
* @property {Array.<ol.Attribution>|undefined} attributions Attributions.
|
||
* @property {Object.<string,*>} params 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.
|
||
* @property {null|string|undefined} crossOrigin crossOrigin setting for image
|
||
* requests.
|
||
* @property {ol.Extent|undefined} extent Extent.
|
||
* @property {number|undefined} gutter 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.
|
||
* @property {boolean|undefined} hidpi Use the `ol.Map#pixelRatio` value when
|
||
* requesting the image from the remote server. Default is `true`.
|
||
* @property {string|undefined} logo Logo.
|
||
* @property {ol.tilegrid.TileGrid|undefined} tileGrid Tile grid.
|
||
* @property {number|undefined} maxZoom Maximum zoom.
|
||
* @property {ol.proj.ProjectionLike} projection Projection.
|
||
* @property {ol.source.wms.ServerType|string|undefined} serverType The type of the remote WMS
|
||
* server: `mapserver`, `geoserver` or `qgis`. Only needed if `hidpi` is `true`.
|
||
* Default is `undefined`.
|
||
* @property {ol.TileLoadFunctionType|undefined} tileLoadFunction Optional
|
||
* function to load a tile given a URL.
|
||
* @property {string|undefined} url WMS service URL.
|
||
* @property {Array.<string>|undefined} urls WMS service urls. Use this instead
|
||
* of `url` when the WMS supports multiple urls for GetMap requests.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.source.VectorOptions
|
||
* @property {Array.<ol.Attribution>|undefined} attributions Attributions.
|
||
* @property {ol.Extent|undefined} extent Extent.
|
||
* @property {Array.<ol.Feature>|undefined} features Features.
|
||
* @property {string|undefined} logo Logo.
|
||
* @property {ol.proj.ProjectionLike} projection Projection.
|
||
* @property {ol.source.State|string|undefined} state State.
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.source.VectorFileOptions
|
||
* @property {ArrayBuffer|undefined} arrayBuffer Array buffer.
|
||
* @property {Array.<ol.Attribution>|undefined} attributions Attributions.
|
||
* @property {Document|undefined} doc Document.
|
||
* @property {ol.Extent|undefined} extent Extent.
|
||
* @property {ol.format.Feature} format Format.
|
||
* @property {string|undefined} logo Logo.
|
||
* @property {Node|undefined} node Node.
|
||
* @property {Object|undefined} object Object.
|
||
* @property {ol.proj.ProjectionLike} projection Projection.
|
||
* @property {string|undefined} text Text.
|
||
* @property {string|undefined} url URL.
|
||
* @property {Array.<string>|undefined} urls URLs.
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.source.WMTSOptions
|
||
* @property {Array.<ol.Attribution>|undefined} attributions Attributions.
|
||
* @property {string|null|undefined} crossOrigin crossOrigin setting for image
|
||
* requests.
|
||
* @property {ol.Extent|undefined} extent Extent.
|
||
* @property {string|undefined} logo Logo.
|
||
* @property {ol.tilegrid.WMTS} tileGrid Tile grid.
|
||
* @property {ol.proj.ProjectionLike} projection Projection.
|
||
* @property {ol.source.WMTSRequestEncoding|undefined} requestEncoding Request
|
||
* encoding.
|
||
* @property {string} layer Layer.
|
||
* @property {string} style Style.
|
||
* @property {string|undefined} version WMTS version. Default to `1.0.0`.
|
||
* @property {string|undefined} format Format.
|
||
* @property {string} matrixSet Matrix set.
|
||
* @property {Object|undefined} dimensions Dimensions.
|
||
* @property {string|undefined} url URL.
|
||
* @property {number|undefined} maxZoom Maximum zoom.
|
||
* @property {ol.TileLoadFunctionType|undefined} tileLoadFunction Optional
|
||
* function to load a tile given a URL.
|
||
* @property {Array.<string>|undefined} urls Urls.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.source.XYZOptions
|
||
* @property {Array.<ol.Attribution>|undefined} attributions Attributions.
|
||
* @property {null|string|undefined} crossOrigin Cross origin setting for image
|
||
* requests.
|
||
* @property {ol.Extent|undefined} extent Extent.
|
||
* @property {string|undefined} logo Logo.
|
||
* @property {ol.proj.ProjectionLike} projection Projection. Default is `EPSG:3857`.
|
||
* @property {number|undefined} maxZoom Optional max zoom level. Default is `18`.
|
||
* @property {number|undefined} minZoom Unsupported (TODO: remove this).
|
||
* @property {ol.TileLoadFunctionType|undefined} tileLoadFunction Optional
|
||
* function to load a tile given a URL.
|
||
* @property {ol.TileUrlFunctionType|undefined} tileUrlFunction Optional
|
||
* function to get tile URL given a tile coordinate and the projection.
|
||
* Required if url or urls are not provided.
|
||
* @property {string|undefined} url URL template. Must include `{x}`, `{y}`,
|
||
* and `{z}` placeholders.
|
||
* @property {Array.<string>|undefined} urls An array of URL templates.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.source.ZoomifyOptions
|
||
* @property {Array.<ol.Attribution>|undefined} attributions Attributions.
|
||
* @property {null|string|undefined} crossOrigin Cross origin setting for image
|
||
* requests.
|
||
* @property {string|undefined} logo Logo.
|
||
* @property {!string} url Prefix of URL template.
|
||
* @property {string|undefined} tierSizeCalculation Tier size calculation method: `default` or `truncated`.
|
||
* @property {ol.Size} size Size of the image.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.style.CircleOptions
|
||
* @property {ol.style.Fill|undefined} fill Fill style.
|
||
* @property {number} radius Circle radius.
|
||
* @property {ol.style.Stroke|undefined} stroke Stroke style.
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.style.FillOptions
|
||
* @property {ol.Color|string|undefined} color Color.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.style.IconOptions
|
||
* @property {Array.<number>|undefined} anchor Anchor. Default value is `[0.5, 0.5]`
|
||
* (icon center).
|
||
* @property {ol.style.IconAnchorOrigin|undefined} anchorOrigin Origin of the anchor: `bottom-left`, `bottom-right`, `top-left` or `top-right`. Default is `top-left`.
|
||
* @property {ol.style.IconAnchorUnits|undefined} anchorXUnits Units in which the anchor x value is specified.
|
||
* A value of `'fraction'` indicates the x value is a fraction of the icon.
|
||
* A value of `'pixels'` indicates the x value in pixels. Default is
|
||
* `'fraction'`.
|
||
* @property {ol.style.IconAnchorUnits|undefined} anchorYUnits Units in which the anchor y value is specified.
|
||
* A value of `'fraction'` indicates the y value is a fraction of the icon.
|
||
* A value of `'pixels'` indicates the y value in pixels. Default is
|
||
* `'fraction'`.
|
||
* @property {null|string|undefined} crossOrigin crossOrigin setting for image.
|
||
* @property {number|undefined} scale Scale.
|
||
* @property {boolean|undefined} rotateWithView Whether to rotate the icon with the view. Default is `false`.
|
||
* @property {number|undefined} rotation Rotation.
|
||
* @property {ol.Size|undefined} size Icon size in pixel.
|
||
* @property {string} src Image source URI.
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.style.StrokeOptions
|
||
* @property {ol.Color|string|undefined} color Color.
|
||
* @property {string|undefined} lineCap Line cap style: `butt`, `round`, or `square`. Default is `round`.
|
||
* @property {string|undefined} lineJoin Line join style: `bevel`, `round`, or `miter`. Default is `round`.
|
||
* @property {Array.<number>|undefined} lineDash Line dash pattern. Default is `undefined` (no dash).
|
||
* @property {number|undefined} miterLimit Miter limit. Default is `10`.
|
||
* @property {number|undefined} width Width.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.style.TextOptions
|
||
* @property {string|undefined} font Font.
|
||
* @property {number|undefined} offsetX Horizontal text offset in pixels.
|
||
* A positive will shift the text right. Default is `0`.
|
||
* @property {number|undefined} offsetY Vertical text offset in pixels.
|
||
* A positive will shift the text down. Default is `0`.
|
||
* @property {number|undefined} scale Scale.
|
||
* @property {number|undefined} rotation Rotation.
|
||
* @property {string|undefined} text Text.
|
||
* @property {string|undefined} textAlign Text alignment.
|
||
* @property {string|undefined} textBaseline Text base line.
|
||
* @property {ol.style.Fill|undefined} fill Fill style.
|
||
* @property {ol.style.Stroke|undefined} stroke Stroke style.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.style.StyleOptions
|
||
* @property {ol.style.Fill|undefined} fill Fill style.
|
||
* @property {ol.style.Image|undefined} image Image style.
|
||
* @property {ol.style.Stroke|undefined} stroke Stroke style.
|
||
* @property {ol.style.Text|undefined} text Text style.
|
||
* @property {number|undefined} zIndex Z index.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.tilegrid.TileGridOptions
|
||
* @property {number|undefined} minZoom Minimum zoom.
|
||
* @property {ol.Coordinate|undefined} origin Origin.
|
||
* @property {Array.<ol.Coordinate>|undefined} origins Origins.
|
||
* @property {!Array.<number>} resolutions Resolutions.
|
||
* @property {number|undefined} tileSize Tile size.
|
||
* @property {Array.<number>|undefined} tileSizes Tile sizes.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.tilegrid.WMTSOptions
|
||
* @property {ol.Coordinate|undefined} origin Origin.
|
||
* @property {Array.<ol.Coordinate>|undefined} origins Origins.
|
||
* @property {!Array.<number>} resolutions Resolutions.
|
||
* @property {!Array.<string>} matrixIds matrix IDs.
|
||
* @property {number|undefined} tileSize Tile size.
|
||
* @property {Array.<number>|undefined} tileSizes Tile sizes.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.tilegrid.XYZOptions
|
||
* @property {number} maxZoom Maximum zoom.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.tilegrid.ZoomifyOptions
|
||
* @property {!Array.<number>} resolutions Resolutions.
|
||
* @todo stability experimental
|
||
*/
|
||
|
||
/**
|
||
* @typedef {Object} olx.View2D.fitGeometryOptions
|
||
* @property {!Array.<number>} padding Padding (in pixels) to be cleared inside the view. Values in the array are top, right, bottom and left padding. Default is `[0, 0, 0, 0]`.
|
||
* @property {boolean|undefined} constrainResolution Constrain the resolution. Default is `true`.
|
||
* @property {boolean|undefined} nearest Get the nearest extent. Default is `false`.
|
||
* @property {number|undefined} minResolution Minimum resolution that we zoom to. Default is `0`.
|
||
* @todo stability experimental
|
||
*/
|