Merge remote-tracking branch 'upstream/master' into vector-api

Conflicts:
	src/objectliterals.jsdoc
	src/ol/attribution.js
	src/ol/geom/geometry.js
	src/ol/geom/geometrycollection.js
	src/ol/geom/linestring.js
	src/ol/layer/vectorlayer.exports
	src/ol/layer/vectorlayer.js
	src/ol/map.js
	src/ol/proj/proj.js
	src/ol/renderer/canvas/canvasvectorlayerrenderer.js
	src/ol/source/imagewmssource.js
	src/ol/source/tilewmssource.js
	src/ol/source/vectorsource.exports
	src/ol/source/vectorsource.js
	src/ol/source/wmssource.js
	src/ol/style/style.js
	src/ol/tilegrid/tilegrid.js
	src/ol/tilegrid/wmtstilegrid.js
	src/ol/tilegrid/xyztilegrid.js
This commit is contained in:
Éric Lemoine
2013-12-13 12:46:55 +01:00
167 changed files with 678 additions and 505 deletions

View File

@@ -1,5 +1,5 @@
/**
* @typedef {Object} ol.AttributionOptions
* @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).
@@ -7,13 +7,13 @@
*/
/**
* @typedef {Object} ol.DeviceOrientationOptions
* @typedef {Object} olx.DeviceOrientationOptions
* @property {boolean|undefined} tracking Start tracking. Default is `false`.
* @todo stability experimental
*/
/**
* @typedef {Object} ol.GeolocationOptions
* @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.
@@ -22,7 +22,7 @@
/**
* Object literal with config options for the map.
* @typedef {Object} ol.MapOptions
* @typedef {Object} olx.MapOptions
* @property {ol.Collection|Array.<ol.control.Control>|undefined} controls
* Controls initially added to the map.
* @property {ol.Collection|Array.<ol.interaction.Interaction>|undefined} interactions
@@ -40,7 +40,7 @@
/**
* Object literal with config options for the overlay.
* @typedef {Object} ol.OverlayOptions
* @typedef {Object} olx.OverlayOptions
* @property {Element|undefined} element The overlay element.
* @property {ol.Coordinate|undefined} position The overlay position in map
* projection.
@@ -59,7 +59,7 @@
/**
* Object literal with config options for the Proj4js projection.
* @typedef {Object} ol.Proj4jsProjectionOptions
* @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
@@ -69,7 +69,7 @@
/**
* Object literal with config options for the projection.
* @typedef {Object} ol.ProjectionOptions
* @typedef {Object} olx.ProjectionOptions
* @property {string} code The SRS identifier code, e.g. `EPSG:4326`.
* @property {ol.proj.Units} units Units.
* @property {ol.Extent|undefined} extent The validity extent for the SRS.
@@ -82,7 +82,7 @@
/**
* Object literal with config options for the view.
* @typedef {Object} ol.View2DOptions
* @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
@@ -122,7 +122,7 @@
*/
/**
* @typedef {Object} ol.animation.BounceOptions
* @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`.
@@ -131,7 +131,7 @@
*/
/**
* @typedef {Object} ol.animation.PanOptions
* @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`.
@@ -140,7 +140,7 @@
*/
/**
* @typedef {Object} ol.animation.RotateOptions
* @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`.
@@ -149,7 +149,7 @@
*/
/**
* @typedef {Object} ol.animation.ZoomOptions
* @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`.
@@ -158,33 +158,33 @@
*/
/**
* @typedef {Object} ol.control.AttributionOptions
* @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} ol.control.ControlOptions
* @typedef {Object} olx.control.ControlOptions
* @property {Element|undefined} element Element.
* @property {Element|undefined} target Target.
* @todo stability experimental
*/
/**
* @typedef {Object} ol.control.DefaultsOptions
* @typedef {Object} olx.control.DefaultsOptions
* @property {boolean|undefined} attribution Attribution.
* @property {ol.control.AttributionOptions|undefined} attributionOptions
* @property {olx.control.AttributionOptions|undefined} attributionOptions
* Attribution options.
* @property {boolean|undefined} logo Logo.
* @property {ol.control.LogoOptions|undefined} logoOptions Logo options.
* @property {olx.control.LogoOptions|undefined} logoOptions Logo options.
* @property {boolean|undefined} zoom Zoom.
* @property {ol.control.ZoomOptions|undefined} zoomOptions Zoom options.
* @property {olx.control.ZoomOptions|undefined} zoomOptions Zoom options.
* @todo stability experimental
*/
/**
* @typedef {Object} ol.control.FullScreenOptions
* @typedef {Object} olx.control.FullScreenOptions
* @property {string|undefined} className CSS class name. Default is `ol-full-screen`.
* @property {boolean|undefined} keys Full keyboard access.
* @property {Element|undefined} target Target.
@@ -192,14 +192,14 @@
*/
/**
* @typedef {Object} ol.control.LogoOptions
* @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} ol.control.MousePositionOptions
* @typedef {Object} olx.control.MousePositionOptions
* @property {string|undefined} className CSS class name. Default is `ol-mouse-position`.
* @property {ol.CoordinateFormatType|undefined} coordinateFormat Coordinate
* format.
@@ -211,7 +211,7 @@
*/
/**
* @typedef {Object} ol.control.ScaleLineOptions
* @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.
* @property {Element|undefined} target Target.
@@ -220,7 +220,7 @@
*/
/**
* @typedef {Object} ol.control.ZoomOptions
* @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 {number|undefined} delta The zoom delta applied on each click.
@@ -229,7 +229,7 @@
*/
/**
* @typedef {Object} ol.control.ZoomSliderOptions
* @typedef {Object} olx.control.ZoomSliderOptions
* @property {string|undefined} className CSS class name.
* @property {number|undefined} maxResolution Maximum resolution.
* @property {number|undefined} minResolution Minimum resolution.
@@ -237,7 +237,7 @@
*/
/**
* @typedef {Object} ol.control.ZoomToExtentOptions
* @typedef {Object} olx.control.ZoomToExtentOptions
* @property {string|undefined} className Class name. Default is `ol-zoom-extent`.
* @property {Element|undefined} target Target.
* @property {ol.Extent|undefined} extent The extent to zoom to. If
@@ -246,12 +246,12 @@
*/
/**
* @typedef {Object} ol.format.GeoJSONOptions
* @typedef {Object} olx.format.GeoJSONOptions
* @property {ol.proj.ProjectionLike} defaultProjection Default projection.
*/
/**
* @typedef {Object} ol.interaction.DoubleClickZoomOptions
* @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`.
@@ -259,7 +259,7 @@
*/
/**
* @typedef {Object} ol.interaction.DragPanOptions
* @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
@@ -268,7 +268,7 @@
*/
/**
* @typedef {Object} ol.interaction.DragRotateOptions
* @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.
@@ -276,7 +276,7 @@
*/
/**
* @typedef {Object} ol.interaction.DragRotateAndZoomOptions
* @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.
@@ -284,7 +284,7 @@
*/
/**
* @typedef {Object} ol.interaction.DragZoomOptions
* @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.
@@ -293,7 +293,7 @@
/**
* Interactions for the map. Default is `true` for all options.
* @typedef {Object} ol.interaction.DefaultsOptions
* @typedef {Object} olx.interaction.DefaultsOptions
* @property {boolean|undefined} altShiftDragRotate Whether Alt-Shift-drag
* rotate is desired.
* @property {boolean|undefined} doubleClickZoom Whether double click zoom is
@@ -315,7 +315,7 @@
*/
/**
* @typedef {Object} ol.interaction.KeyboardPanOptions
* @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.
@@ -325,7 +325,7 @@
*/
/**
* @typedef {Object} ol.interaction.KeyboardZoomOptions
* @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
@@ -335,33 +335,33 @@
*/
/**
* @typedef {Object} ol.interaction.MouseWheelZoomOptions
* @typedef {Object} olx.interaction.MouseWheelZoomOptions
* @property {number|undefined} duration Animation duration in milliseconds. Default is `250`.
* @todo stability experimental
*/
/**
* @typedef {Object} ol.interaction.TouchPanOptions
* @typedef {Object} olx.interaction.TouchPanOptions
* @property {ol.Kinetic|undefined} kinetic Kinetic inertia to apply to the
* pan.
* @todo stability experimental
*/
/**
* @typedef {Object} ol.interaction.TouchRotateOptions
* @typedef {Object} olx.interaction.TouchRotateOptions
* @property {number|undefined} threshold Minimal angle in radians to start a rotation.
* Default is `0.3`.
* @todo stability experimental
*/
/**
* @typedef {Object} ol.interaction.TouchZoomOptions
* @typedef {Object} olx.interaction.TouchZoomOptions
* @property {number|undefined} duration Animation duration in milliseconds. Default is `400`.
* @todo stability experimental
*/
/**
* @typedef {Object} ol.layer.BaseOptions
* @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`.
@@ -376,7 +376,7 @@
*/
/**
* @typedef {Object} ol.layer.LayerOptions
* @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`.
@@ -392,7 +392,7 @@
*/
/**
* @typedef {Object} ol.layer.GroupOptions
* @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`.
@@ -408,7 +408,7 @@
*/
/**
* @typedef {Object} ol.layer.TileOptions
* @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`.
@@ -425,7 +425,7 @@
*/
/**
* @typedef {Object} ol.layer.VectorOptions
* @typedef {Object} olx.layer.VectorOptions
* @property {number|undefined} brightness Brightness.
* @property {number|undefined} contrast Contrast.
* @property {number|undefined} hue Hue.
@@ -438,10 +438,11 @@
* @property {ol.source.Vector} source Source.
* @property {ol.style.StyleFunction|undefined} styleFunction Style function.
* @property {boolean|undefined} visible Visibility. Default is `true` (visible).
* @todo stability experimental
*/
/**
* @typedef {Object} ol.parser.WFSWriteGetFeatureOptions
* @typedef {Object} olx.parser.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.
@@ -454,7 +455,7 @@
*/
/**
* @typedef {Object} ol.parser.WFSWriteTransactionOptions
* @typedef {Object} olx.parser.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.
@@ -466,7 +467,7 @@
*/
/**
* @typedef {Object} ol.source.BingMapsOptions
* @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/.
@@ -477,7 +478,7 @@
*/
/**
* @typedef {Object} ol.source.GeoJSONOptions
* @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.
@@ -490,7 +491,7 @@
*/
/**
* @typedef {Object} ol.source.MapGuideOptions
* @typedef {Object} olx.source.MapGuideOptions
* @property {string|undefined} url The mapagent url.
* @property {number|undefined} metersPerUnit The meters-per-unit value.
* @property {ol.Extent|undefined} extent Extent..
@@ -506,14 +507,14 @@
*/
/**
* @typedef {Object} ol.source.MapQuestOptions
* @typedef {Object} olx.source.MapQuestOptions
* @property {ol.TileLoadFunctionType|undefined} tileLoadFunction Optional
* function to load a tile given a URL.
* @todo stability experimental
*/
/**
* @typedef {Object} ol.source.TileDebugOptions
* @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.
@@ -521,7 +522,7 @@
*/
/**
* @typedef {Object} ol.source.OSMOptions
* @typedef {Object} olx.source.OSMOptions
* @property {Array.<ol.Attribution>|undefined} attributions Attributions.
* @property {number|undefined} maxZoom Max zoom.
* @property {ol.TileLoadFunctionType|undefined} tileLoadFunction Optional
@@ -533,7 +534,7 @@
*/
/**
* @typedef {Object} ol.source.ImageWMSOptions
* @typedef {Object} olx.source.ImageWMSOptions
* @property {Array.<ol.Attribution>|undefined} attributions Attributions.
* @property {null|string|undefined} crossOrigin crossOrigin setting for image
* requests.
@@ -553,7 +554,7 @@
*/
/**
* @typedef {Object} ol.source.StamenOptions
* @typedef {Object} olx.source.StamenOptions
* @property {string} layer Layer.
* @property {number|undefined} minZoom Minimum zoom.
* @property {number|undefined} maxZoom Maximum zoom.
@@ -566,7 +567,7 @@
*/
/**
* @typedef {Object} ol.source.ImageStaticOptions
* @typedef {Object} olx.source.ImageStaticOptions
* @property {Array.<ol.Attribution>|undefined} attributions Attributions.
* @property {null|string|undefined} crossOrigin crossOrigin setting for image
* requests.
@@ -579,7 +580,7 @@
*/
/**
* @typedef {Object} ol.source.TileJSONOptions
* @typedef {Object} olx.source.TileJSONOptions
* @property {null|string|undefined} crossOrigin crossOrigin setting for image
* requests.
* @property {ol.TileLoadFunctionType|undefined} tileLoadFunction Optional
@@ -589,7 +590,7 @@
*/
/**
* @typedef {Object} ol.source.TileWMSOptions
* @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
@@ -598,6 +599,15 @@
* @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 {string|undefined} logo Logo.
* @property {ol.tilegrid.TileGrid|undefined} tileGrid Tile grid.
* @property {number|undefined} maxZoom Maximum zoom.
@@ -611,7 +621,7 @@
*/
/**
* @typedef {Object} ol.source.VectorOptions
* @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.
@@ -621,7 +631,7 @@
*/
/**
* @typedef {Object} ol.source.VectorFileOptions
* @typedef {Object} olx.source.VectorFileOptions
* @property {Array.<ol.Attribution>|undefined} attributions Attributions.
* @property {Document|undefined} doc Document.
* @property {ol.Extent|undefined} extent Extent.
@@ -635,7 +645,7 @@
*/
/**
* @typedef {Object} ol.source.WMTSOptions
* @typedef {Object} olx.source.WMTSOptions
* @property {Array.<ol.Attribution>|undefined} attributions Attributions.
* @property {string|null|undefined} crossOrigin crossOrigin setting for image
* requests.
@@ -660,7 +670,7 @@
*/
/**
* @typedef {Object} ol.source.XYZOptions
* @typedef {Object} olx.source.XYZOptions
* @property {Array.<ol.Attribution>|undefined} attributions Attributions.
* @property {null|string|undefined} crossOrigin Cross origin setting for image
* requests.
@@ -681,13 +691,13 @@
*/
/**
* @typedef {Object} ol.style.FillOptions
* @typedef {Object} olx.style.FillOptions
* @property {ol.Color|string|undefined} color Color.
* @todo stability experimental
*/
/**
* @typedef {Object} ol.style.ImageOptions
* @typedef {Object} olx.style.ImageOptions
* @property {ol.Pixel} anchor Anchor.
* @property {null|string|undefined} crossOrigin crossOrigin setting for image.
* @property {HTMLCanvasElement|HTMLVideoElement|Image|undefined} image Image.
@@ -702,7 +712,7 @@
*/
/**
* @typedef {Object} ol.style.StrokeOptions
* @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 `butt`.
* @property {string|undefined} lineJoin Line join style: `bevel`, `round`, or `miter`. Default is `miter`.
@@ -713,7 +723,7 @@
*/
/**
* @typedef {Object} ol.style.TextOptions
* @typedef {Object} olx.style.TextOptions
* @property {string|undefined} font Font.
* @property {number|undefined} rotation Rotation.
* @property {string|undefined} text Text.
@@ -725,7 +735,7 @@
*/
/**
* @typedef {Object} ol.style.StyleOptions
* @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.
@@ -735,7 +745,7 @@
*/
/**
* @typedef {Object} ol.tilegrid.TileGridOptions
* @typedef {Object} olx.tilegrid.TileGridOptions
* @property {number|undefined} minZoom Minimum zoom.
* @property {ol.Coordinate|undefined} origin Origin.
* @property {Array.<ol.Coordinate>|undefined} origins Origins.
@@ -746,7 +756,7 @@
*/
/**
* @typedef {Object} ol.tilegrid.WMTSOptions
* @typedef {Object} olx.tilegrid.WMTSOptions
* @property {ol.Coordinate|undefined} origin Origin.
* @property {Array.<ol.Coordinate>|undefined} origins Origins.
* @property {!Array.<number>} resolutions Resolutions.
@@ -757,7 +767,7 @@
*/
/**
* @typedef {Object} ol.tilegrid.XYZOptions
* @typedef {Object} olx.tilegrid.XYZOptions
* @property {number} maxZoom Maximum zoom.
* @todo stability experimental
*/

View File

@@ -1,4 +1,4 @@
@exportFunction ol.animation.bounce ol.animation.BounceOptions ol.PreRenderFunction
@exportFunction ol.animation.pan ol.animation.PanOptions ol.PreRenderFunction
@exportFunction ol.animation.rotate ol.animation.RotateOptions ol.PreRenderFunction
@exportFunction ol.animation.zoom ol.animation.ZoomOptions ol.PreRenderFunction
@exportSymbol ol.animation.bounce ol.animation.bounce
@exportSymbol ol.animation.pan ol.animation.pan
@exportSymbol ol.animation.rotate ol.animation.rotate
@exportSymbol ol.animation.zoom ol.animation.zoom

View File

@@ -8,7 +8,7 @@ goog.require('ol.easing');
/**
* @param {ol.animation.BounceOptions} options Bounce options.
* @param {olx.animation.BounceOptions} options Bounce options.
* @return {ol.PreRenderFunction} Pre-render function.
* @todo stability experimental
*/
@@ -43,7 +43,7 @@ ol.animation.bounce = function(options) {
/**
* @param {ol.animation.PanOptions} options Pan options.
* @param {olx.animation.PanOptions} options Pan options.
* @return {ol.PreRenderFunction} Pre-render function.
* @todo stability experimental
*/
@@ -82,7 +82,7 @@ ol.animation.pan = function(options) {
/**
* @param {ol.animation.RotateOptions} options Rotate options.
* @param {olx.animation.RotateOptions} options Rotate options.
* @return {ol.PreRenderFunction} Pre-render function.
* @todo stability experimental
*/
@@ -119,7 +119,7 @@ ol.animation.rotate = function(options) {
/**
* @param {ol.animation.ZoomOptions} options Zoom options.
* @param {olx.animation.ZoomOptions} options Zoom options.
* @return {ol.PreRenderFunction} Pre-render function.
* @todo stability experimental
*/

View File

@@ -1 +1 @@
@exportClass ol.Attribution ol.AttributionOptions
@exportSymbol ol.Attribution

View File

@@ -20,7 +20,7 @@ goog.require('ol.TileRange');
* ..
*
* @constructor
* @param {ol.AttributionOptions} options Attribution options.
* @param {olx.AttributionOptions} options Attribution options.
* @struct
* @todo stability experimental
*/

View File

@@ -1,2 +1,2 @@
@exportClass ol.control.Attribution ol.control.AttributionOptions
@exportSymbol ol.control.Attribution
@exportProperty ol.control.Attribution.prototype.setMap

View File

@@ -21,7 +21,7 @@ goog.require('ol.css');
* be changed by using a css selector for `.ol-attribution`.
* @constructor
* @extends {ol.control.Control}
* @param {ol.control.AttributionOptions=} opt_options Attribution options.
* @param {olx.control.AttributionOptions=} opt_options Attribution options.
* @todo stability experimental
*/
ol.control.Attribution = function(opt_options) {

View File

@@ -1,3 +1,3 @@
@exportClass ol.control.Control ol.control.ControlOptions
@exportSymbol ol.control.Control
@exportProperty ol.control.Control.prototype.getMap
@exportProperty ol.control.Control.prototype.setMap

View File

@@ -15,7 +15,7 @@ goog.require('ol.Object');
* @constructor
* @extends {ol.Object}
* @implements {oli.control.Control}
* @param {ol.control.ControlOptions} options Control options.
* @param {olx.control.ControlOptions} options Control options.
* @todo stability experimental
*/
ol.control.Control = function(options) {

View File

@@ -1 +1 @@
@exportFunction ol.control.defaults ol.control.DefaultsOptions ol.Collection
@exportSymbol ol.control.defaults ol.control.defaults

View File

@@ -7,7 +7,7 @@ goog.require('ol.control.Zoom');
/**
* @param {ol.control.DefaultsOptions=} opt_options Defaults options.
* @param {olx.control.DefaultsOptions=} opt_options Defaults options.
* @return {ol.Collection} Controls.
* @todo stability experimental
*/

View File

@@ -1 +1 @@
@exportClass ol.control.FullScreen ol.control.FullScreenOptions
@exportSymbol ol.control.FullScreen

View File

@@ -22,7 +22,7 @@ goog.require('ol.css');
*
* @constructor
* @extends {ol.control.Control}
* @param {ol.control.FullScreenOptions=} opt_options Options.
* @param {olx.control.FullScreenOptions=} opt_options Options.
* @todo stability experimental
*/
ol.control.FullScreen = function(opt_options) {

View File

@@ -1,2 +1,2 @@
@exportClass ol.control.Logo ol.control.LogoOptions
@exportSymbol ol.control.Logo
@exportProperty ol.control.Logo.prototype.setMap

View File

@@ -17,7 +17,7 @@ goog.require('ol.css');
* be styled by using a css selector for `.ol-logo`.
* @constructor
* @extends {ol.control.Control}
* @param {ol.control.LogoOptions=} opt_options Logo options.
* @param {olx.control.LogoOptions=} opt_options Logo options.
* @todo stability experimental
*/
ol.control.Logo = function(opt_options) {

View File

@@ -1,2 +1,2 @@
@exportClass ol.control.MousePosition ol.control.MousePositionOptions
@exportSymbol ol.control.MousePosition
@exportProperty ol.control.MousePosition.prototype.setMap

View File

@@ -36,7 +36,8 @@ ol.control.MousePositionProperty = {
*
* @constructor
* @extends {ol.control.Control}
* @param {ol.control.MousePositionOptions=} opt_options Mouse position options.
* @param {olx.control.MousePositionOptions=} opt_options Mouse position
* options.
* @todo stability experimental
* @todo observable projection {ol.proj.Projection} the projection to report
* mouse position in

View File

@@ -1,4 +1,4 @@
@exportClass ol.control.ScaleLine ol.control.ScaleLineOptions
@exportSymbol ol.control.ScaleLine
@exportProperty ol.control.ScaleLine.prototype.setMap
@exportSymbol ol.control.ScaleLineUnits

View File

@@ -49,7 +49,7 @@ ol.control.ScaleLineUnits = {
*
* @constructor
* @extends {ol.control.Control}
* @param {ol.control.ScaleLineOptions=} opt_options Scale line options.
* @param {olx.control.ScaleLineOptions=} opt_options Scale line options.
* @todo stability experimental
* @todo observable units {ol.control.ScaleLineUnits} the units to use in the
* scale line

View File

@@ -1,2 +1,2 @@
@exportClass ol.control.Zoom ol.control.ZoomOptions
@exportSymbol ol.control.Zoom
@exportProperty ol.control.Zoom.prototype.setMap

View File

@@ -19,7 +19,7 @@ goog.require('ol.easing');
* use css selectors `.ol-zoom-in` and `.ol-zoom-out`.
* @constructor
* @extends {ol.control.Control}
* @param {ol.control.ZoomOptions=} opt_options Zoom options.
* @param {olx.control.ZoomOptions=} opt_options Zoom options.
* @todo stability experimental
*/
ol.control.Zoom = function(opt_options) {

View File

@@ -1 +1 @@
@exportClass ol.control.ZoomSlider ol.control.ZoomSliderOptions
@exportSymbol ol.control.ZoomSlider

View File

@@ -37,7 +37,7 @@ ol.control.ZOOMSLIDER_ANIMATION_DURATION = 200;
*
* @constructor
* @extends {ol.control.Control}
* @param {ol.control.ZoomSliderOptions=} opt_options Zoom slider options.
* @param {olx.control.ZoomSliderOptions=} opt_options Zoom slider options.
* @todo stability experimental
*/
ol.control.ZoomSlider = function(opt_options) {

View File

@@ -1 +1 @@
@exportClass ol.control.ZoomToExtent ol.control.ZoomToExtentOptions
@exportSymbol ol.control.ZoomToExtent

View File

@@ -17,7 +17,7 @@ goog.require('ol.css');
* css selector `.ol-zoom-extent`.
* @constructor
* @extends {ol.control.Control}
* @param {ol.control.ZoomToExtentOptions=} opt_options Options.
* @param {olx.control.ZoomToExtentOptions=} opt_options Options.
* @todo stability experimental
*/
ol.control.ZoomToExtent = function(opt_options) {

View File

@@ -1,2 +1,2 @@
@exportClass ol.DeviceOrientation ol.DeviceOrientationOptions
@exportSymbol ol.DeviceOrientation
@exportSymbol ol.DeviceOrientation.SUPPORTED ol.DeviceOrientation.SUPPORTED

View File

@@ -67,7 +67,7 @@ ol.DeviceOrientationProperty = {
*
* @constructor
* @extends {ol.Object}
* @param {ol.DeviceOrientationOptions=} opt_options Options.
* @param {olx.DeviceOrientationOptions=} opt_options Options.
* @todo stability experimental
* @todo observable alpha {number} readonly the euler angle in radians of the
* device from the standard X axis

View File

@@ -1 +1 @@
@exportClass ol.format.GeoJSON ol.format.GeoJSONOptions
@exportSymbol ol.format.GeoJSON

View File

@@ -22,7 +22,7 @@ goog.require('ol.proj');
/**
* @constructor
* @extends {ol.format.JSON}
* @param {ol.format.GeoJSONOptions=} opt_options Options.
* @param {olx.format.GeoJSONOptions=} opt_options Options.
*/
ol.format.GeoJSON = function(opt_options) {

View File

@@ -1,2 +1,2 @@
@exportClass ol.Geolocation ol.GeolocationOptions
@exportSymbol ol.Geolocation
@exportSymbol ol.Geolocation.SUPPORTED ol.Geolocation.SUPPORTED

View File

@@ -45,7 +45,7 @@ ol.GeolocationProperty = {
*
* @constructor
* @extends {ol.Object}
* @param {ol.GeolocationOptions=} opt_options Options.
* @param {olx.GeolocationOptions=} opt_options Options.
* @todo stability experimental
* @todo observable accuracy {number} readonly the accuracy of the position
* measurement

View File

@@ -1 +1 @@
@exportClass ol.interaction.DoubleClickZoom ol.interaction.DoubleClickZoomOptions
@exportSymbol ol.interaction.DoubleClickZoom

View File

@@ -14,7 +14,7 @@ goog.require('ol.interaction.Interaction');
*
* @constructor
* @extends {ol.interaction.Interaction}
* @param {ol.interaction.DoubleClickZoomOptions=} opt_options Options.
* @param {olx.interaction.DoubleClickZoomOptions=} opt_options Options.
* @todo stability experimental
*/
ol.interaction.DoubleClickZoom = function(opt_options) {

View File

@@ -1 +1 @@
@exportClass ol.interaction.DragPan ol.interaction.DragPanOptions
@exportSymbol ol.interaction.DragPan

View File

@@ -18,7 +18,7 @@ goog.require('ol.interaction.Drag');
* Allows the user to pan the map by clickng and dragging.
* @constructor
* @extends {ol.interaction.Drag}
* @param {ol.interaction.DragPanOptions=} opt_options Options.
* @param {olx.interaction.DragPanOptions=} opt_options Options.
* @todo stability experimental
*/
ol.interaction.DragPan = function(opt_options) {

View File

@@ -1 +1 @@
@exportClass ol.interaction.DragRotate ol.interaction.DragRotateOptions
@exportSymbol ol.interaction.DragRotate

View File

@@ -1 +1 @@
@exportClass ol.interaction.DragRotateAndZoom ol.interaction.DragRotateAndZoomOptions
@exportSymbol ol.interaction.DragRotateAndZoom

View File

@@ -26,7 +26,7 @@ ol.interaction.DRAGROTATEANDZOOM_ANIMATION_DURATION = 400;
* This interaction is not included in the default interactions.
* @constructor
* @extends {ol.interaction.Drag}
* @param {ol.interaction.DragRotateAndZoomOptions=} opt_options Options.
* @param {olx.interaction.DragRotateAndZoomOptions=} opt_options Options.
* @todo stability experimental
*/
ol.interaction.DragRotateAndZoom = function(opt_options) {

View File

@@ -21,7 +21,7 @@ ol.interaction.DRAGROTATE_ANIMATION_DURATION = 250;
* it to when the alt and shift keys are held down.
* @constructor
* @extends {ol.interaction.Drag}
* @param {ol.interaction.DragRotateOptions=} opt_options Options.
* @param {olx.interaction.DragRotateOptions=} opt_options Options.
*/
ol.interaction.DragRotate = function(opt_options) {

View File

@@ -1 +1 @@
@exportClass ol.interaction.DragZoom ol.interaction.DragZoomOptions
@exportSymbol ol.interaction.DragZoom

View File

@@ -34,7 +34,7 @@ ol.SHIFT_DRAG_ZOOM_HYSTERESIS_PIXELS_SQUARED =
* it to when the shift key is held down.
* @constructor
* @extends {ol.interaction.Drag}
* @param {ol.interaction.DragZoomOptions=} opt_options Options.
* @param {olx.interaction.DragZoomOptions=} opt_options Options.
* @todo stability experimental
*/
ol.interaction.DragZoom = function(opt_options) {

View File

@@ -1 +1 @@
@exportFunction ol.interaction.defaults ol.interaction.DefaultsOptions ol.Collection
@exportSymbol ol.interaction.defaults ol.interaction.defaults

View File

@@ -23,7 +23,7 @@ goog.require('ol.interaction.TouchZoom');
* {@link ol.interaction} instances and insert them into an
* {@link ol.Collection} in the order you want before creating your ol.Map
* instance.
* @param {ol.interaction.DefaultsOptions=} opt_options Defaults options.
* @param {olx.interaction.DefaultsOptions=} opt_options Defaults options.
* @return {ol.Collection} A collection of interactions to be used with
* the ol.Map constructor's interactions option.
* @todo stability experimental

View File

@@ -1 +1 @@
@exportClass ol.interaction.KeyboardPan ol.interaction.KeyboardPanOptions
@exportSymbol ol.interaction.KeyboardPan

View File

@@ -24,7 +24,7 @@ ol.interaction.KEYBOARD_PAN_DURATION = 100;
* Allows the user to pan the map using keyboard arrows.
* @constructor
* @extends {ol.interaction.Interaction}
* @param {ol.interaction.KeyboardPanOptions=} opt_options Options.
* @param {olx.interaction.KeyboardPanOptions=} opt_options Options.
* @todo stability experimental
*/
ol.interaction.KeyboardPan = function(opt_options) {

View File

@@ -1 +1 @@
@exportClass ol.interaction.KeyboardZoom ol.interaction.KeyboardZoomOptions
@exportSymbol ol.interaction.KeyboardZoom

View File

@@ -13,7 +13,7 @@ goog.require('ol.interaction.Interaction');
/**
* Allows the user to zoom the map using keyboard + and -.
* @constructor
* @param {ol.interaction.KeyboardZoomOptions=} opt_options Options.
* @param {olx.interaction.KeyboardZoomOptions=} opt_options Options.
* @extends {ol.interaction.Interaction}
* @todo stability experimental
*/

View File

@@ -27,7 +27,7 @@ ol.interaction.MOUSEWHEELZOOM_TIMEOUT_DURATION = 80;
* Allows the user to zoom the map by scrolling the mouse wheel.
* @constructor
* @extends {ol.interaction.Interaction}
* @param {ol.interaction.MouseWheelZoomOptions=} opt_options Options.
* @param {olx.interaction.MouseWheelZoomOptions=} opt_options Options.
* @todo stability experimental
*/
ol.interaction.MouseWheelZoom = function(opt_options) {

View File

@@ -1 +1 @@
@exportClass ol.interaction.TouchPan ol.interaction.TouchPanOptions
@exportSymbol ol.interaction.TouchPan

View File

@@ -15,7 +15,7 @@ goog.require('ol.interaction.Touch');
* on a touch screen.
* @constructor
* @extends {ol.interaction.Touch}
* @param {ol.interaction.TouchPanOptions=} opt_options Options.
* @param {olx.interaction.TouchPanOptions=} opt_options Options.
* @todo stability experimental
*/
ol.interaction.TouchPan = function(opt_options) {

View File

@@ -1 +1 @@
@exportClass ol.interaction.TouchRotate ol.interaction.TouchRotateOptions
@exportSymbol ol.interaction.TouchRotate

View File

@@ -21,7 +21,7 @@ ol.interaction.TOUCHROTATE_ANIMATION_DURATION = 250;
* on a touch screen.
* @constructor
* @extends {ol.interaction.Touch}
* @param {ol.interaction.TouchRotateOptions=} opt_options Options.
* @param {olx.interaction.TouchRotateOptions=} opt_options Options.
* @todo stability experimental
*/
ol.interaction.TouchRotate = function(opt_options) {

View File

@@ -15,7 +15,7 @@ goog.require('ol.interaction.Touch');
* on a touch screen.
* @constructor
* @extends {ol.interaction.Touch}
* @param {ol.interaction.TouchZoomOptions=} opt_options Options.
* @param {olx.interaction.TouchZoomOptions=} opt_options Options.
* @todo stability experimental
*/
ol.interaction.TouchZoom = function(opt_options) {

View File

@@ -1 +1 @@
@exportClass ol.layer.Image ol.layer.LayerOptions
@exportSymbol ol.layer.Image

View File

@@ -8,7 +8,7 @@ goog.require('ol.source.Image');
/**
* @constructor
* @extends {ol.layer.Layer}
* @param {ol.layer.LayerOptions} options Layer options.
* @param {olx.layer.LayerOptions} options Layer options.
* @todo stability experimental
*/
ol.layer.Image = function(options) {

View File

@@ -12,7 +12,7 @@ goog.require('ol.source.Source');
/**
* @constructor
* @extends {ol.layer.Base}
* @param {ol.layer.LayerOptions} options Layer options.
* @param {olx.layer.LayerOptions} options Layer options.
* @todo stability experimental
* @todo observable brightness {number} the brightness of the layer
* @todo observable contrast {number} the contrast of the layer
@@ -25,7 +25,7 @@ goog.require('ol.source.Source');
*/
ol.layer.Layer = function(options) {
var baseOptions = /** @type {ol.layer.LayerOptions} */
var baseOptions = /** @type {olx.layer.LayerOptions} */
(goog.object.clone(options));
delete baseOptions.source;

View File

@@ -43,7 +43,7 @@ ol.layer.LayerState;
/**
* @constructor
* @extends {ol.Object}
* @param {ol.layer.BaseOptions} options Layer options.
* @param {olx.layer.BaseOptions} options Layer options.
*/
ol.layer.Base = function(options) {
@@ -71,22 +71,6 @@ ol.layer.Base = function(options) {
values.minResolution : 0;
this.setValues(values);
goog.events.listen(this, [
ol.Object.getChangeEventType(ol.layer.LayerProperty.BRIGHTNESS),
ol.Object.getChangeEventType(ol.layer.LayerProperty.CONTRAST),
ol.Object.getChangeEventType(ol.layer.LayerProperty.HUE),
ol.Object.getChangeEventType(ol.layer.LayerProperty.OPACITY),
ol.Object.getChangeEventType(ol.layer.LayerProperty.SATURATION),
ol.Object.getChangeEventType(ol.layer.LayerProperty.MAX_RESOLUTION),
ol.Object.getChangeEventType(ol.layer.LayerProperty.MIN_RESOLUTION)
],
this.handleLayerChange, false, this);
goog.events.listen(this,
ol.Object.getChangeEventType(ol.layer.LayerProperty.VISIBLE),
this.handleLayerVisibleChange, false, this);
};
goog.inherits(ol.layer.Base, ol.Object);
@@ -251,26 +235,6 @@ goog.exportProperty(
ol.layer.Base.prototype.getVisible);
/**
* @protected
*/
ol.layer.Base.prototype.handleLayerChange = function() {
if (this.getVisible() && this.getSourceState() == ol.source.State.READY) {
this.dispatchChangeEvent();
}
};
/**
* @protected
*/
ol.layer.Base.prototype.handleLayerVisibleChange = function() {
if (this.getSourceState() == ol.source.State.READY) {
this.dispatchChangeEvent();
}
};
/**
* 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

View File

@@ -1 +1 @@
@exportClass ol.layer.Group ol.layer.GroupOptions
@exportSymbol ol.layer.Group

View File

@@ -26,7 +26,7 @@ ol.layer.GroupProperty = {
/**
* @constructor
* @extends {ol.layer.Base}
* @param {ol.layer.GroupOptions=} opt_options Layer options.
* @param {olx.layer.GroupOptions=} opt_options Layer options.
* @todo stability experimental
* @todo observable layers {ol.Collection} collection of layers that are part
* of this group
@@ -34,7 +34,7 @@ ol.layer.GroupProperty = {
ol.layer.Group = function(opt_options) {
var options = goog.isDef(opt_options) ? opt_options : {};
var baseOptions = /** @type {ol.layer.GroupOptions} */
var baseOptions = /** @type {olx.layer.GroupOptions} */
(goog.object.clone(options));
delete baseOptions.layers;
@@ -70,23 +70,15 @@ goog.inherits(ol.layer.Group, ol.layer.Base);
/**
* @inheritDoc
* @private
*/
ol.layer.Group.prototype.handleLayerChange = function() {
ol.layer.Group.prototype.handleLayerChange_ = function() {
if (this.getVisible()) {
this.dispatchChangeEvent();
}
};
/**
* @inheritDoc
*/
ol.layer.Group.prototype.handleLayerVisibleChange = function() {
this.dispatchChangeEvent();
};
/**
* @param {goog.events.Event} event Event.
* @private
@@ -113,7 +105,7 @@ ol.layer.Group.prototype.handleLayersChanged_ = function(event) {
layer = layersArray[i];
this.listenerKeys_[goog.getUid(layer).toString()] =
goog.events.listen(layer, goog.events.EventType.CHANGE,
this.handleLayerChange, false, this);
this.handleLayerChange_, false, this);
}
}
@@ -128,7 +120,7 @@ ol.layer.Group.prototype.handleLayersChanged_ = function(event) {
ol.layer.Group.prototype.handleLayersAdd_ = function(collectionEvent) {
var layer = /** @type {ol.layer.Base} */ (collectionEvent.getElement());
this.listenerKeys_[goog.getUid(layer).toString()] = goog.events.listen(
layer, goog.events.EventType.CHANGE, this.handleLayerChange, false,
layer, goog.events.EventType.CHANGE, this.handleLayerChange_, false,
this);
this.dispatchChangeEvent();
};

View File

@@ -1 +1 @@
@exportClass ol.layer.Tile ol.layer.TileOptions
@exportSymbol ol.layer.Tile

View File

@@ -16,7 +16,7 @@ ol.layer.TileProperty = {
/**
* @constructor
* @extends {ol.layer.Layer}
* @param {ol.layer.TileOptions} options Tile layer options.
* @param {olx.layer.TileOptions} options Tile layer options.
* @todo stability experimental
* @todo observable preload {number} the level to preload tiles up to
*/

View File

@@ -1 +1 @@
@exportClass ol.layer.Vector ol.layer.VectorOptions
@exportSymbol ol.layer.Vector

View File

@@ -17,14 +17,14 @@ ol.layer.VectorProperty = {
/**
* @constructor
* @extends {ol.layer.Layer}
* @param {ol.layer.VectorOptions=} opt_options Options.
* @param {olx.layer.VectorOptions=} opt_options Options.
*/
ol.layer.Vector = function(opt_options) {
var options = goog.isDef(opt_options) ?
opt_options : /** @type {ol.layer.VectorOptions} */ ({});
opt_options : /** @type {olx.layer.VectorOptions} */ ({});
goog.base(this, /** @type {ol.layer.LayerOptions} */ (options));
goog.base(this, /** @type {olx.layer.LayerOptions} */ (options));
// FIXME veryify this
if (goog.isDef(options.styleFunction)) {

View File

@@ -1,4 +1,4 @@
@exportClass ol.Map ol.MapOptions
@exportSymbol ol.Map
@exportProperty ol.Map.prototype.addControl
@exportProperty ol.Map.prototype.addInteraction
@exportProperty ol.Map.prototype.addLayer

View File

@@ -141,7 +141,7 @@ ol.MapProperty = {
*
* @constructor
* @extends {ol.Object}
* @param {ol.MapOptions} options Map options.
* @param {olx.MapOptions} options Map options.
* @todo stability experimental
* @todo observable layergroup {ol.layer.LayerGroup} a layer group containing
* the layers in this map.
@@ -1224,7 +1224,7 @@ ol.MapOptionsInternal;
/**
* @param {ol.MapOptions} options Map options.
* @param {olx.MapOptions} options Map options.
* @return {ol.MapOptionsInternal} Internal map options.
*/
ol.Map.createOptionsInternal = function(options) {

View File

@@ -1,3 +1,4 @@
@exportProperty ol.MapBrowserEvent.prototype.getBrowserEvent
@exportProperty ol.MapBrowserEvent.prototype.getCoordinate
@exportProperty ol.MapBrowserEvent.prototype.getPixel
@exportProperty ol.MapBrowserEvent.prototype.preventDefault

View File

@@ -49,6 +49,14 @@ ol.MapBrowserEvent = function(type, map, browserEvent, opt_frameState) {
goog.inherits(ol.MapBrowserEvent, ol.MapEvent);
/**
* @return {Event} The underlying browser event object.
*/
ol.MapBrowserEvent.prototype.getBrowserEvent = function() {
return this.browserEvent.getBrowserEvent();
};
/**
* @return {ol.Coordinate} Coordinate.
* @todo stability experimental

View File

@@ -1,4 +1,4 @@
@exportClass ol.Overlay ol.OverlayOptions
@exportSymbol ol.Overlay
@exportSymbol ol.OverlayPositioning
@exportProperty ol.OverlayPositioning.BOTTOM_LEFT

View File

@@ -55,7 +55,7 @@ ol.OverlayPositioning = {
*
* @constructor
* @extends {ol.Object}
* @param {ol.OverlayOptions} options Overlay options.
* @param {olx.OverlayOptions} options Overlay options.
* @todo stability experimental
* @todo observable element {Element} the Element containing the overlay
* @todo observable map {ol.Map} the map that the overlay is part of

View File

@@ -1,4 +1,4 @@
@exportClass ol.proj.Projection ol.ProjectionOptions
@exportSymbol ol.proj.Projection
@exportProperty ol.proj.Projection.prototype.getCode
@exportProperty ol.proj.Projection.prototype.getExtent

View File

@@ -58,7 +58,7 @@ ol.METERS_PER_UNIT[ol.proj.Units.METERS] = 1;
/**
* @constructor
* @param {ol.ProjectionOptions} options Projection options.
* @param {olx.ProjectionOptions} options Projection options.
* @struct
* @todo stability experimental
*/
@@ -199,7 +199,7 @@ ol.proj.Projection.prototype.setDefaultTileGrid = function(tileGrid) {
* @constructor
* @extends {ol.proj.Projection}
* @param {Proj4js.Proj} proj4jsProj Proj4js projection.
* @param {ol.Proj4jsProjectionOptions} options Proj4js projection options.
* @param {olx.Proj4jsProjectionOptions} options Proj4js projection options.
* @private
* @struct
*/
@@ -207,7 +207,7 @@ ol.Proj4jsProjection_ = function(proj4jsProj, options) {
var units = /** @type {ol.proj.Units} */ (proj4jsProj.units);
var config = /** @type {ol.ProjectionOptions} */ ({
var config = /** @type {olx.ProjectionOptions} */ ({
units: units,
axisOrientation: proj4jsProj.axis
});
@@ -493,7 +493,7 @@ ol.proj.get = function(projectionLike) {
/**
* @param {ol.Proj4jsProjectionOptions} options Proj4js projection options.
* @param {olx.Proj4jsProjectionOptions} options Proj4js projection options.
* @private
* @return {ol.Proj4jsProjection_} Proj4js projection.
*/
@@ -506,7 +506,7 @@ ol.proj.getProj4jsProjectionFromCode_ = function(options) {
var srsCode = proj4jsProj.srsCode;
proj4jsProjection = proj4jsProjections[srsCode];
if (!goog.isDef(proj4jsProjection)) {
var config = /** @type {ol.Proj4jsProjectionOptions} */
var config = /** @type {olx.Proj4jsProjectionOptions} */
(goog.object.clone(options));
config.code = srsCode;
proj4jsProjection = new ol.Proj4jsProjection_(proj4jsProj, config);
@@ -711,7 +711,7 @@ ol.proj.transformWithProjections =
/**
* @param {ol.Proj4jsProjectionOptions} options Proj4js projection options.
* @param {olx.Proj4jsProjectionOptions} options Proj4js projection options.
* @return {ol.proj.Projection} Proj4js projection.
* @todo stability experimental
*/

View File

@@ -181,6 +181,7 @@ ol.renderer.canvas.TileLayer.prototype.prepareFrame =
if (goog.isNull(tileGrid)) {
tileGrid = ol.tilegrid.getForProjection(projection);
}
var tileGutter = tileSource.getGutter();
var z = tileGrid.getZForResolution(view2DState.resolution);
var tileSize = tileGrid.getTileSize(z);
var tileResolution = tileGrid.getResolution(z);
@@ -339,7 +340,9 @@ ol.renderer.canvas.TileLayer.prototype.prepareFrame =
context.clearRect(x, y, tileSize[0], tileSize[1]);
}
if (tileState == ol.TileState.LOADED) {
context.drawImage(tile.getImage(), x, y);
context.drawImage(tile.getImage(),
tileGutter, tileGutter, tileSize[0], tileSize[1],
x, y, tileSize[0], tileSize[1]);
}
this.renderedTiles_[index] = tile;
}
@@ -358,7 +361,9 @@ ol.renderer.canvas.TileLayer.prototype.prepareFrame =
context.clearRect(x, y, width, height);
}
if (tileState == ol.TileState.LOADED) {
context.drawImage(tile.getImage(), x, y, width, height);
context.drawImage(tile.getImage(),
tileGutter, tileGutter, tileSize[0], tileSize[1],
x, y, width, height);
}
interimTileRange =
tileGrid.getTileRangeForExtentAndZ(tileExtent, z, tmpTileRange);

View File

@@ -98,6 +98,7 @@ ol.renderer.dom.TileLayer.prototype.prepareFrame =
if (goog.isNull(tileGrid)) {
tileGrid = ol.tilegrid.getForProjection(projection);
}
var tileGutter = tileSource.getGutter();
var z = tileGrid.getZForResolution(view2DState.resolution);
var tileResolution = tileGrid.getResolution(z);
var center = view2DState.center;
@@ -186,7 +187,7 @@ ol.renderer.dom.TileLayer.prototype.prepareFrame =
}
tilesToDraw = tilesToDrawByZ[tileLayerZKey];
for (tileCoordKey in tilesToDraw) {
tileLayerZ.addTile(tilesToDraw[tileCoordKey]);
tileLayerZ.addTile(tilesToDraw[tileCoordKey], tileGutter);
}
tileLayerZ.finalizeAddTiles();
}
@@ -317,8 +318,9 @@ ol.renderer.dom.TileLayerZ_ = function(tileGrid, tileCoordOrigin) {
/**
* @param {ol.Tile} tile Tile.
* @param {number} tileGutter Tile gutter.
*/
ol.renderer.dom.TileLayerZ_.prototype.addTile = function(tile) {
ol.renderer.dom.TileLayerZ_.prototype.addTile = function(tile, tileGutter) {
var tileCoord = tile.tileCoord;
goog.asserts.assert(tileCoord.z == this.tileCoordOrigin_.z);
var tileCoordKey = tileCoord.toString();
@@ -327,20 +329,36 @@ ol.renderer.dom.TileLayerZ_.prototype.addTile = function(tile) {
}
var tileSize = this.tileGrid_.getTileSize(tileCoord.z);
var image = tile.getImage(this);
var style = image.style;
// Bootstrap sets the style max-width: 100% for all images, which breaks
// prevents the tile from being displayed in FireFox. Workaround by
// overriding the max-width style.
style.maxWidth = 'none';
style.position = 'absolute';
style.left =
var imageStyle = image.style;
// Bootstrap sets the style max-width: 100% for all images, which
// prevents the tile from being displayed in FireFox. Workaround
// by overriding the max-width style.
imageStyle.maxWidth = 'none';
var tileElement;
var tileElementStyle;
if (tileGutter > 0) {
tileElement = goog.dom.createElement(goog.dom.TagName.DIV);
tileElementStyle = tileElement.style;
tileElementStyle.overflow = 'hidden';
tileElementStyle.width = tileSize[0] + 'px';
tileElementStyle.height = tileSize[1] + 'px';
imageStyle.position = 'absolute';
imageStyle.left = -tileGutter + 'px';
imageStyle.top = -tileGutter + 'px';
goog.dom.appendChild(tileElement, image);
} else {
tileElement = image;
tileElementStyle = imageStyle;
}
tileElementStyle.position = 'absolute';
tileElementStyle.left =
((tileCoord.x - this.tileCoordOrigin_.x) * tileSize[0]) + 'px';
style.top =
tileElementStyle.top =
((this.tileCoordOrigin_.y - tileCoord.y) * tileSize[1]) + 'px';
if (goog.isNull(this.documentFragment_)) {
this.documentFragment_ = document.createDocumentFragment();
}
goog.dom.appendChild(this.documentFragment_, image);
goog.dom.appendChild(this.documentFragment_, tileElement);
this.tiles_[tileCoordKey] = tile;
};

View File

@@ -66,6 +66,26 @@ ol.renderer.webgl.Map = function(container, map) {
this.canvas_.className = ol.css.CLASS_UNSELECTABLE;
goog.dom.insertChildAt(container, this.canvas_, 0);
/**
* @private
* @type {HTMLCanvasElement}
*/
this.clipTileCanvas_ = /** @type {HTMLCanvasElement} */
(goog.dom.createElement(goog.dom.TagName.CANVAS));
/**
* @private
* @type {ol.Size}
*/
this.clipTileCanvasSize_ = [0, 0];
/**
* @private
* @type {CanvasRenderingContext2D}
*/
this.clipTileContext_ = /** @type {CanvasRenderingContext2D} */
(this.clipTileCanvas_.getContext('2d'));
/**
* @private
* @type {boolean}
@@ -147,9 +167,14 @@ ol.renderer.webgl.Map = function(container, map) {
function(map, frameState) {
if (!this.tileTextureQueue_.isEmpty()) {
this.tileTextureQueue_.reprioritize();
var tile =
/** @type {ol.Tile} */ (this.tileTextureQueue_.dequeue()[0]);
this.bindTileTexture(tile, goog.webgl.LINEAR, goog.webgl.LINEAR);
var element = this.tileTextureQueue_.dequeue();
var tile = /** @type {ol.Tile} */ (element[0]);
var tileWidth = /** @type {number} */ (element[3]);
var tileHeight = /** @type {number} */ (element[4]);
var tileGutter = /** @type {number} */ (element[5]);
this.bindTileTexture(tile,
tileWidth, tileHeight, tileGutter,
goog.webgl.LINEAR, goog.webgl.LINEAR);
}
}, this);
@@ -167,11 +192,14 @@ goog.inherits(ol.renderer.webgl.Map, ol.renderer.Map);
/**
* @param {ol.Tile} tile Tile.
* @param {number} tileWidth Tile width.
* @param {number} tileHeight Tile height.
* @param {number} tileGutter Tile gutter.
* @param {number} magFilter Mag filter.
* @param {number} minFilter Min filter.
*/
ol.renderer.webgl.Map.prototype.bindTileTexture =
function(tile, magFilter, minFilter) {
function(tile, tileWidth, tileHeight, tileGutter, magFilter, minFilter) {
var gl = this.getGL();
var tileKey = tile.getKey();
if (this.textureCache_.containsKey(tileKey)) {
@@ -191,8 +219,29 @@ ol.renderer.webgl.Map.prototype.bindTileTexture =
} else {
var texture = gl.createTexture();
gl.bindTexture(goog.webgl.TEXTURE_2D, texture);
gl.texImage2D(goog.webgl.TEXTURE_2D, 0, goog.webgl.RGBA, goog.webgl.RGBA,
goog.webgl.UNSIGNED_BYTE, tile.getImage());
if (tileGutter > 0) {
var clipTileCanvas = this.clipTileCanvas_;
var clipTileCanvasSize = this.clipTileCanvasSize_;
var clipTileContext = this.clipTileContext_;
if (clipTileCanvasSize[0] != tileWidth ||
clipTileCanvasSize[1] != tileHeight) {
clipTileCanvas.width = tileWidth;
clipTileCanvas.height = tileHeight;
clipTileCanvasSize[0] = tileWidth;
clipTileCanvasSize[1] = tileHeight;
} else {
clipTileContext.clearRect(0, 0, tileWidth, tileHeight);
}
clipTileContext.drawImage(tile.getImage(), tileGutter, tileGutter,
tileWidth, tileHeight, 0, 0, tileWidth, tileHeight);
gl.texImage2D(goog.webgl.TEXTURE_2D, 0,
goog.webgl.RGBA, goog.webgl.RGBA,
goog.webgl.UNSIGNED_BYTE, clipTileCanvas);
} else {
gl.texImage2D(goog.webgl.TEXTURE_2D, 0,
goog.webgl.RGBA, goog.webgl.RGBA,
goog.webgl.UNSIGNED_BYTE, tile.getImage());
}
gl.texParameteri(
goog.webgl.TEXTURE_2D, goog.webgl.TEXTURE_MAG_FILTER, magFilter);
gl.texParameteri(

View File

@@ -132,6 +132,10 @@ ol.renderer.webgl.TileLayer.prototype.prepareFrame =
}
var z = tileGrid.getZForResolution(view2DState.resolution);
var tileResolution = tileGrid.getResolution(z);
var tileSize = tileGrid.getTileSize(z);
var tileGutter = tileSource.getGutter();
var center = view2DState.center;
var extent;
if (tileResolution == view2DState.resolution) {
@@ -152,7 +156,6 @@ ol.renderer.webgl.TileLayer.prototype.prepareFrame =
} else {
var tileRangeSize = tileRange.getSize();
var tileSize = tileGrid.getTileSize(z);
var maxDimension = Math.max(
tileRangeSize[0] * tileSize[0],
@@ -257,7 +260,9 @@ ol.renderer.webgl.TileLayer.prototype.prepareFrame =
framebufferExtentDimension - 1;
goog.vec.Vec4.setFromValues(u_tileOffset, sx, sy, tx, ty);
gl.uniform4fv(this.locations_.u_tileOffset, u_tileOffset);
mapRenderer.bindTileTexture(tile, goog.webgl.LINEAR, goog.webgl.LINEAR);
mapRenderer.bindTileTexture(tile,
tileSize[0], tileSize[1], tileGutter,
goog.webgl.LINEAR, goog.webgl.LINEAR);
gl.drawArrays(goog.webgl.TRIANGLE_STRIP, 0, 4);
}
}
@@ -290,7 +295,8 @@ ol.renderer.webgl.TileLayer.prototype.prepareFrame =
tileTextureQueue.enqueue([
tile,
tileGrid.getTileCoordCenter(tile.tileCoord),
tileGrid.getResolution(tile.tileCoord.z)
tileGrid.getResolution(tile.tileCoord.z),
tileSize[0], tileSize[1], tileGutter
]);
}
}, this);

View File

@@ -1,2 +1,2 @@
@exportClass ol.source.BingMaps ol.source.BingMapsOptions
@exportSymbol ol.source.BingMaps
@exportProperty ol.source.BingMaps.TOS_ATTRIBUTION

View File

@@ -18,7 +18,7 @@ goog.require('ol.tilegrid.XYZ');
/**
* @constructor
* @extends {ol.source.TileImage}
* @param {ol.source.BingMapsOptions} options Bing Maps options.
* @param {olx.source.BingMapsOptions} options Bing Maps options.
* @todo stability experimental
*/
ol.source.BingMaps = function(options) {

View File

@@ -1 +1 @@
@exportClass ol.source.TileDebug ol.source.TileDebugOptions
@exportSymbol ol.source.TileDebug

View File

@@ -85,7 +85,7 @@ ol.DebugTile_.prototype.getImage = function(opt_context) {
/**
* @constructor
* @extends {ol.source.Tile}
* @param {ol.source.TileDebugOptions} options Debug tile options.
* @param {olx.source.TileDebugOptions} options Debug tile options.
* @todo stability experimental
*/
ol.source.TileDebug = function(options) {

View File

@@ -1 +1 @@
@exportClass ol.source.GeoJSON ol.source.GeoJSONOptions
@exportSymbol ol.source.GeoJSON

View File

@@ -8,7 +8,7 @@ goog.require('ol.source.VectorFile');
/**
* @constructor
* @extends {ol.source.VectorFile}
* @param {ol.source.GeoJSONOptions=} opt_options Options.
* @param {olx.source.GeoJSONOptions=} opt_options Options.
*/
ol.source.GeoJSON = function(opt_options) {

View File

@@ -1 +1 @@
@exportClass ol.source.ImageStatic ol.source.ImageStaticOptions
@exportSymbol ol.source.ImageStatic

View File

@@ -11,7 +11,7 @@ goog.require('ol.source.Image');
/**
* @constructor
* @extends {ol.source.Image}
* @param {ol.source.ImageStaticOptions} options Options.
* @param {olx.source.ImageStaticOptions} options Options.
* @todo stability experimental
*/
ol.source.ImageStatic = function(options) {

View File

@@ -1,3 +1,3 @@
@exportClass ol.source.ImageWMS ol.source.ImageWMSOptions
@exportSymbol ol.source.ImageWMS
@exportProperty ol.source.ImageWMS.prototype.getParams
@exportProperty ol.source.ImageWMS.prototype.updateParams

View File

@@ -13,7 +13,7 @@ goog.require('ol.source.wms');
/**
* @constructor
* @extends {ol.source.Image}
* @param {ol.source.ImageWMSOptions} options Options.
* @param {olx.source.ImageWMSOptions} options Options.
* @todo stability experimental
*/
ol.source.ImageWMS = function(options) {

View File

@@ -11,7 +11,7 @@ goog.require('ol.source.Image');
/**
* @constructor
* @extends {ol.source.Image}
* @param {ol.source.MapGuideOptions} options Options.
* @param {olx.source.MapGuideOptions} options Options.
*/
ol.source.MapGuide = function(options) {

View File

@@ -10,7 +10,7 @@ goog.require('ol.source.XYZ');
/**
* @constructor
* @extends {ol.source.XYZ}
* @param {ol.source.MapQuestOptions=} opt_options MapQuest options.
* @param {olx.source.MapQuestOptions=} opt_options MapQuest options.
* @todo stability experimental
*/
ol.source.MapQuestOSM = function(opt_options) {
@@ -43,7 +43,7 @@ goog.inherits(ol.source.MapQuestOSM, ol.source.XYZ);
/**
* @constructor
* @extends {ol.source.XYZ}
* @param {ol.source.MapQuestOptions=} opt_options MapQuest options.
* @param {olx.source.MapQuestOptions=} opt_options MapQuest options.
* @todo stability experimental
*/
ol.source.MapQuestOpenAerial = function(opt_options) {

View File

@@ -8,7 +8,7 @@ goog.require('ol.source.XYZ');
/**
* @constructor
* @extends {ol.source.XYZ}
* @param {ol.source.OSMOptions=} opt_options Open Street Map options.
* @param {olx.source.OSMOptions=} opt_options Open Street Map options.
* @todo stability experimental
*/
ol.source.OSM = function(opt_options) {

View File

@@ -1 +1 @@
@exportClass ol.source.Stamen ol.source.StamenOptions
@exportSymbol ol.source.Stamen

View File

@@ -80,7 +80,7 @@ ol.source.StamenProviderConfig = {
/**
* @constructor
* @extends {ol.source.XYZ}
* @param {ol.source.StamenOptions} options Stamen options.
* @param {olx.source.StamenOptions} options Stamen options.
* @todo stability experimental
*/
ol.source.Stamen = function(options) {

View File

@@ -1 +1 @@
@exportClass ol.source.TileJSON ol.source.TileJSONOptions
@exportSymbol ol.source.TileJSON

View File

@@ -40,7 +40,7 @@ goog.exportSymbol('grid', grid);
/**
* @constructor
* @extends {ol.source.TileImage}
* @param {ol.source.TileJSONOptions} options TileJSON options.
* @param {olx.source.TileJSONOptions} options TileJSON options.
* @todo stability experimental
*/
ol.source.TileJSON = function(options) {

View File

@@ -106,6 +106,14 @@ ol.source.Tile.prototype.findLoadedTiles = function(loadedTilesByZ,
};
/**
* @return {number} Gutter.
*/
ol.source.Tile.prototype.getGutter = function() {
return 0;
};
/**
* @param {number} z Z.
* @param {number} x X.

View File

@@ -1,3 +1,3 @@
@exportClass ol.source.TileWMS ol.source.TileWMSOptions
@exportSymbol ol.source.TileWMS
@exportProperty ol.source.TileWMS.prototype.getParams
@exportProperty ol.source.TileWMS.prototype.updateParams

View File

@@ -16,7 +16,7 @@ goog.require('ol.source.wms');
/**
* @constructor
* @extends {ol.source.TileImage}
* @param {ol.source.TileWMSOptions} options Tile WMS options.
* @param {olx.source.TileWMSOptions} options Tile WMS options.
* @todo stability experimental
*/
ol.source.TileWMS = function(options) {
@@ -32,6 +32,12 @@ ol.source.TileWMS = function(options) {
urls = ol.TileUrlFunction.expandUrl(options.url);
}
/**
* @private
* @type {number}
*/
this.gutter_ = goog.isDef(options.gutter) ? options.gutter : 0;
/**
* @private
* @type {Object}
@@ -49,7 +55,7 @@ ol.source.TileWMS = function(options) {
var tileUrlFunctions = goog.array.map(
urls, function(url) {
return ol.TileUrlFunction.createFromParamsFunction(
url, this.params_, ol.source.wms.getUrl);
url, this.params_, this.gutter_, ol.source.wms.getUrl);
}, this);
tileUrlFunction = ol.TileUrlFunction.createFromTileUrlFunctions(
tileUrlFunctions);
@@ -106,6 +112,14 @@ ol.source.TileWMS = function(options) {
goog.inherits(ol.source.TileWMS, ol.source.TileImage);
/**
* @inheritDoc
*/
ol.source.TileWMS.prototype.getGutter = function() {
return this.gutter_;
};
/**
* @inheritDoc
*/

View File

@@ -1 +1 @@
@exportClass ol.source.VectorFile ol.source.VectorFileOptions
@exportSymbol ol.source.VectorFile

View File

@@ -14,7 +14,7 @@ goog.require('ol.source.Vector');
/**
* @constructor
* @extends {ol.source.Vector}
* @param {ol.source.VectorFileOptions=} opt_options Options.
* @param {olx.source.VectorFileOptions=} opt_options Options.
*/
ol.source.VectorFile = function(opt_options) {

View File

@@ -1,4 +1,4 @@
@exportClass ol.source.Vector ol.source.VectorOptions
@exportSymbol ol.source.Vector
@exportProperty ol.source.Vector.prototype.addFeature
@exportProperty ol.source.Vector.prototype.getClosestFeatureToCoordinate
@exportProperty ol.source.Vector.prototype.forEachFeature

View File

@@ -27,7 +27,8 @@ ol.source.VectorEventType = {
/**
* @constructor
* @extends {ol.source.Source}
* @param {ol.source.VectorOptions=} opt_options Options.
* @param {olx.source.VectorOptions=} opt_options Vector source options.
* @todo stability experimental
*/
ol.source.Vector = function(opt_options) {

View File

@@ -1,4 +1,4 @@
@exportClass ol.source.WMTS ol.source.WMTSOptions
@exportSymbol ol.source.WMTS
@exportProperty ol.source.WMTS.prototype.getDimensions
@exportProperty ol.source.WMTS.prototype.updateDimensions
@exportSymbol ol.source.WMTS.optionsFromCapabilities

Some files were not shown because too many files have changed in this diff Show More