Compare commits

..

750 Commits

Author SHA1 Message Date
Bart van den Eijnden
d3e15e4394 Update package version to 3.17.0 2016-07-01 19:20:18 +02:00
Bart van den Eijnden
0dbca294b2 Changelog for v3.17.0 2016-07-01 19:19:50 +02:00
Andreas Hocevar
c74d7171aa Merge pull request #5539 from probins/dom
Remove outdated comments re goog.dom
2016-07-01 15:07:59 +02:00
Tobias Sauerwein
6ebc67f1c5 Merge pull request #5543 from tsauerwein/update-rbush-2
Update rbush to 2.0.1
2016-07-01 13:13:20 +02:00
Bart van den Eijnden
72568305c0 Merge pull request #5540 from bartvde/issue-5484
Remove MapQuest source
2016-07-01 13:08:26 +02:00
tsauerwein
749660dd22 Update rbush to 2.0.1 2016-07-01 12:01:48 +02:00
Bart van den Eijnden
ed80d243fb Remove MapQuest source 2016-07-01 11:38:52 +02:00
Bart van den Eijnden
0d26c33484 Merge pull request #5538 from probins/inherits
Replace remaining goog.inherits
2016-07-01 11:30:26 +02:00
Peter Robins
1775a5aeea Remove outdated comments re goog.dom 2016-07-01 08:56:24 +00:00
Peter Robins
f196ed8102 Replace remaining goog.inherits 2016-07-01 08:45:15 +00:00
Bart van den Eijnden
c56432cf2e Merge pull request #5536 from tschaub/more-layer-extent
Update to layer-extent example
2016-07-01 09:13:47 +02:00
Tim Schaub
17e11fb84a Source shuffle 2016-06-30 15:28:33 -06:00
Tim Schaub
4154df9aa8 Remove unnecessary interaction 2016-06-30 15:22:51 -06:00
Tim Schaub
728e1dd1f2 Merge pull request #5482 from ischneider/layer-extent
Fix for regression in tile layer extent
2016-06-30 15:19:13 -06:00
Frédéric Junod
6d41e87ff5 Merge pull request #5475 from probins/enumprovide
Remove goog.provide from enums only used internally or in olx.js
2016-06-30 16:57:21 +02:00
Frédéric Junod
77e66221c1 Merge pull request #5424 from fredj/select_event
Don't dispatch select event if no feature is selected or deselected
2016-06-29 15:15:13 +02:00
Frederic Junod
b562f4d68a Don't dispatch select event if a selected feature is selected again 2016-06-29 15:03:42 +02:00
Frederic Junod
e7c2d9ab32 Don't dispatch select event if no feature is selected or deselected 2016-06-29 15:03:42 +02:00
Frédéric Junod
39de933e64 Merge pull request #5522 from SamuelBerger/master
Add 'condition' option to ol.interaction.DragPanOptions in olx.js
2016-06-29 14:52:34 +02:00
Frédéric Junod
c43740a4ad Merge pull request #5443 from fredj/max_zoom_options
Remove olx.source.WMTSOptions#maxZoom option
2016-06-29 14:52:14 +02:00
Frederic Junod
7a43a667ce Remove olx.source.TileWMSOptions#maxZoom option 2016-06-29 13:44:10 +02:00
Frederic Junod
1b662ff048 Use minZoom and maxZoom olx.source.StamenOptions 2016-06-29 13:41:49 +02:00
Frederic Junod
93a98337d8 Remove olx.source.WMTSOptions#maxZoom option
The option is not handled by `ol.source.WMTS`
2016-06-29 13:41:49 +02:00
Frédéric Junod
65c8eba59b Merge pull request #5497 from openlayers/greenkeeper-istanbul-0.4.4
Update istanbul to version 0.4.4 🚀
2016-06-28 13:32:54 +02:00
greenkeeperio-bot
059ac56fef chore(package): update istanbul to version 0.4.4
https://greenkeeper.io/
2016-06-27 07:10:41 -06:00
Frédéric Junod
64afa2eab5 Merge pull request #5523 from openlayers/greenkeeper-closure-util-1.15.0
Update closure-util to version 1.15.0 🚀
2016-06-27 15:10:26 +02:00
greenkeeperio-bot
13546d27f2 chore(package): update closure-util to version 1.15.0
https://greenkeeper.io/
2016-06-27 06:49:14 -06:00
Samuel Berger
a2326f7180 Add 'condition' option to ol.interaction.DragPanOptions in olx.js 2016-06-27 14:01:40 +02:00
Frédéric Junod
ffe0529df8 Merge pull request #5508 from tsauerwein/compiler-properties
Fix problems with ol.format.WFS in compiled mode
2016-06-27 11:59:13 +02:00
Andreas Hocevar
38f7aef6b0 Merge pull request #5512 from ahocevar/foreachtilecoord
Use forEachTileCoord name instead of forEachTileCoordInExtentAndZ
2016-06-25 21:18:58 +02:00
Bart van den Eijnden
f549f1946c Merge pull request #5513 from bartvde/view-getminmaxres
Add getters for min and max resolution of the view
2016-06-23 15:28:07 +02:00
Bart van den Eijnden
449ea370c0 Add getters for min and max resolution of the view 2016-06-23 15:00:30 +02:00
Andreas Hocevar
bc506389fc Use forEachTileCoord name instead of forEachTileCoordInExtentAndZ 2016-06-23 14:27:21 +02:00
Andreas Hocevar
5d85867fbf Merge pull request #5471 from probins/gpx
Fix GPX write of xsi ns
2016-06-23 14:24:48 +02:00
Andreas Hocevar
55edf4003f Merge pull request #5134 from nicholas-l/removeGoogDom
Remove goog.dom
2016-06-23 12:15:03 +02:00
nicholas
6b465902cd Remove goog.dom 2016-06-23 22:06:35 +12:00
Andreas Hocevar
9453984f9a Merge pull request #5511 from ahocevar/keep-last-point
Do not optimize lines away entirely
2016-06-23 11:07:04 +02:00
Andreas Hocevar
35129af7f0 Do not optimize lines away entirely 2016-06-23 10:38:10 +02:00
Andreas Hocevar
3726b25ba2 Merge pull request #5509 from ahocevar/foreachtilecoordinextentandz
Make it easier to work with tile ranges in custom source implementations
2016-06-23 09:03:08 +02:00
tsauerwein
7048de8e83 Make sure properties are not renamed 2016-06-23 08:38:06 +02:00
Frederic Junod
4b7cdffaf4 Export getZForResolution from ol.tilegrid.TileGrid 2016-06-22 20:48:49 +02:00
Andreas Hocevar
14cecb7163 Add function to iterate over tile coordinates in extent and z 2016-06-22 18:05:18 +02:00
Frédéric Junod
29c8af7559 Merge pull request #5498 from openlayers/greenkeeper-eslint-2.13.1
Update eslint to version 2.13.1 🚀
2016-06-21 12:28:40 +02:00
Frédéric Junod
b19ac3c26d Merge pull request #5495 from fredj/rm_goog.isFunction
Get rid of goog.isFunction
2016-06-21 08:37:15 +02:00
greenkeeperio-bot
f26bcf5c3e chore(package): update eslint to version 2.13.1
https://greenkeeper.io/
2016-06-21 00:36:29 -06:00
Frédéric Junod
e4168e3582 Merge pull request #5499 from openlayers/greenkeeper-glob-7.0.5
Update glob to version 7.0.5 🚀
2016-06-21 08:36:15 +02:00
greenkeeperio-bot
dd8dc8ad0f chore(package): update glob to version 7.0.5
https://greenkeeper.io/
2016-06-20 19:13:36 -06:00
Frederic Junod
b8ce70fbf0 Get rid of goog.isFunction 2016-06-20 16:09:25 +02:00
Andreas Hocevar
e916345e8c Merge pull request #5125 from nicholas-l/removeGoogStyle
Remove goog style
2016-06-20 13:04:00 +02:00
Frédéric Junod
925a272fb8 Merge pull request #5494 from probins/global
Remove goog.global
2016-06-20 12:27:33 +02:00
Peter Robins
eaa0d70289 Remove goog.global 2016-06-20 09:47:32 +00:00
Andreas Hocevar
030c0dad3d Avoid creation of unnecessary object literals 2016-06-20 21:44:15 +12:00
Nicholas L
0fef14137c Remove unneeded comments and use ol.global 2016-06-20 21:41:20 +12:00
Andreas Hocevar
04287e0fd5 Merge pull request #5492 from openlayers/greenkeeper-eslint-2.13.0
Update eslint to version 2.13.0 🚀
2016-06-20 07:55:20 +02:00
nicholas
ea1c7a6551 Remove goog.style.getPageOffset 2016-06-19 19:26:25 +12:00
nicholas
6da5a1e9f7 Remove goog.style.getContentBoxSize 2016-06-19 19:22:11 +12:00
nicholas
ec12c34edd Remove goog.style.getBorderBoxSize 2016-06-19 19:22:11 +12:00
nicholas
837c48a2e2 Remove goog.style.getMarginBox 2016-06-19 19:22:11 +12:00
nicholas
04c4b4efc1 Remove goog.style.setElementShown 2016-06-19 19:22:11 +12:00
nicholas
96a14e0515 Remove getSize 2016-06-19 19:22:11 +12:00
greenkeeperio-bot
cd4f1c109b chore(package): update eslint to version 2.13.0
https://greenkeeper.io/
2016-06-17 11:35:35 -06:00
Andreas Hocevar
609c891524 Merge pull request #5490 from openlayers/greenkeeper-glob-7.0.4
Update glob to version 7.0.4 🚀
2016-06-17 09:12:45 +02:00
greenkeeperio-bot
5442c1f587 chore(package): update glob to version 7.0.4
https://greenkeeper.io/
2016-06-16 11:38:16 -06:00
Frédéric Junod
810c655940 Merge pull request #5460 from openlayers/greenkeeper-eslint-2.12.0
Update eslint to version 2.12.0 🚀
2016-06-16 16:26:09 +02:00
Ian Schneider
9d5232d9af canvas tests for tile rendering with layer.extent 2016-06-15 21:14:37 -06:00
Ian Schneider
265068e782 example - layer-extent uses country bboxes 2016-06-15 21:13:49 -06:00
Ian Schneider
44a4fbdda2 respect layer.extent in canvas tilelayer renderer 2016-06-15 12:42:38 -06:00
Ian Schneider
6902791dc5 layer extent example changes for testing
- add draw extent tool
- rotation control
2016-06-15 12:42:32 -06:00
greenkeeperio-bot
95a3f42315 chore(package): update eslint to version 2.12.0
https://greenkeeper.io/
2016-06-15 09:54:46 -06:00
Andreas Hocevar
6fe1a58b26 Merge pull request #5479 from openlayers/greenkeeper-slimerjs-0.906.2
Update slimerjs to version 0.906.2 🚀
2016-06-15 17:54:31 +02:00
greenkeeperio-bot
466b02836b chore(package): update slimerjs to version 0.906.2
https://greenkeeper.io/
2016-06-15 09:17:14 -06:00
Peter Robins
e5cc971dc9 Remove goog.provide for enums only in olx.js 2016-06-15 09:14:13 +00:00
Peter Robins
bda673f389 Remove goog.provide from internal enums 2016-06-15 09:04:44 +00:00
Frédéric Junod
fa995cf7f3 Merge pull request #5474 from openlayers/greenkeeper-clean-css-3.4.18
Update clean-css to version 3.4.18 🚀
2016-06-15 08:51:08 +02:00
greenkeeperio-bot
1a159f3ac4 chore(package): update clean-css to version 3.4.18
https://greenkeeper.io/
2016-06-15 00:39:12 -06:00
Andreas Hocevar
6718fc982e Merge pull request #5450 from probins/typedefs
Remove sub-namespaces from all remaining typedefs
2016-06-14 17:32:10 +02:00
Andreas Hocevar
2809df86ca Merge pull request #5465 from ahocevar/fix-custom-symbol
Fix custom icon positions and rotation
2016-06-14 17:29:00 +02:00
Andreas Hocevar
1d20215bfa Make all typedefs work without provide/require 2016-06-14 15:01:20 +00:00
Peter Robins
7d210948e8 Fix GPX write of xsi ns
Also add version/creator attributes to <gpx> node.
2016-06-14 11:14:19 +00:00
Frédéric Junod
3c50d12ad9 Merge pull request #5469 from gberaudo/webgl_typo
Fix typo
2016-06-14 09:28:06 +02:00
Guillaume Beraudo
bb32b6ac55 Fix typo 2016-06-14 09:10:07 +02:00
Andreas Hocevar
103ff01456 Fix custom icon positions and rotation 2016-06-13 22:08:02 +02:00
Andreas Hocevar
d26ac55ed0 Merge pull request #5453 from ahocevar/mapbrowserpointerevent
Reference ol.MapBrowserEvent instead of ol.MapBrowserPointerEvent
2016-06-13 14:01:49 +02:00
Bart van den Eijnden
31dcb80725 Merge pull request #5208 from probins/rtewpt
Stop GPX writing rtept properties
2016-06-10 13:10:53 +02:00
Peter Robins
f3acac5259 Stop GPX writing rtept properties 2016-06-10 10:56:30 +00:00
Andreas Hocevar
06249be6bd Remove last reference to ol.MapBrowserPointerEvent from the API
This is a bit of a hack, but in fact it improves the situation for the end
user because it asserts the correct event type instead of failing silently.
2016-06-09 18:22:11 +02:00
Andreas Hocevar
400484e663 Reference ol.MapBrowserEvent instead of ol.MapBrowserPointerEvent
There is nothing exportable in ol.MapBrowserEvent in addition to what is
exportable in ol.MapBrowserEvent.
2016-06-09 18:22:11 +02:00
Frédéric Junod
ab4da04312 Merge pull request #5452 from openlayers/greenkeeper-eslint-config-openlayers-5.0.0
Update eslint-config-openlayers to version 5.0.0 🚀
2016-06-09 16:06:45 +02:00
Frederic Junod
4bf1f56405 Add missing semicolon 2016-06-09 15:39:46 +02:00
greenkeeperio-bot
08f8cd0f16 chore(package): update eslint-config-openlayers to version 5.0.0
https://greenkeeper.io/
2016-06-09 07:25:37 -06:00
Andreas Hocevar
40ead5b329 Merge pull request #5432 from bjornharrtell/rm_goog.uri
Remove use of goog.uri
2016-06-09 14:20:56 +02:00
Peter Robins
2c29512c80 Remove sub-namespaces from all remaining typedefs 2016-06-09 10:01:52 +00:00
Andreas Hocevar
09202cf95d Merge pull request #5449 from ahocevar/examples-absolute-urls
Make example data/ paths absolute for source view and JSFiddle
2016-06-09 10:10:47 +02:00
Andreas Hocevar
e39ea746a7 Make example data/ paths absolute for source view and JSFiddle 2016-06-09 08:51:34 +02:00
Andreas Hocevar
54f7bb6958 Merge pull request #5399 from probins/raster
Remove ol.raster namespace
2016-06-08 16:09:37 +02:00
Björn Harrtell
27853ea7dd Remove use of goog.uri 2016-06-08 15:14:18 +02:00
Peter Robins
395f3c0756 Remove ol.raster namespace
Now used only for 1 typedefs and 1 enum, it serves little purpose,
so the typedef is renamed in the ol namespace, and the enum moved to rastersource.js
2016-06-08 12:37:20 +00:00
Frédéric Junod
e63b4d1f48 Merge pull request #5270 from fredj/load_error
Load erroneous image in ol.Image#load and ol.ImageTile#load
2016-06-08 09:25:57 +02:00
Frédéric Junod
3935b7db24 Merge pull request #5194 from fredj/rm_goog.inherits
Get rid of goog.inherits and goog.base
2016-06-08 09:17:07 +02:00
Frederic Junod
e289bfbb7d Use ol.inherits instead of goog.inherits 2016-06-08 08:38:12 +02:00
Frederic Junod
a598737ec5 Add unit tests for ol.ImageTile 2016-06-08 08:36:58 +02:00
Frederic Junod
1f48198e95 Allow tiles in ol.ImageState.ERROR state to be loaded. 2016-06-08 08:36:58 +02:00
Andreas Hocevar
072728b083 Merge pull request #5427 from ahocevar/auto-typedef-enum-options
Document typedefs and enums used by API symbols
2016-06-07 23:58:04 +02:00
Andreas Hocevar
abec4f4ba7 Fix ol.raster.Operation type and docs 2016-06-07 08:36:44 +02:00
Frédéric Junod
edb3987054 Merge pull request #5438 from fredj/filter_inherit_object
Don't make ol.format.ogc.filter.Filter inherit from ol.Object
2016-06-06 17:20:25 +02:00
Frederic Junod
c51fc84b72 Don't make ol.format.ogc.filter.Filter inherit from ol.Object 2016-06-06 17:05:04 +02:00
Frédéric Junod
de9c338fb1 Merge pull request #5433 from openlayers/greenkeeper-clean-css-3.4.17
Update clean-css to version 3.4.17 🚀
2016-06-06 08:51:19 +02:00
Frédéric Junod
26789d91d2 Merge pull request #5434 from tsauerwein/fix-externs
Fix externs in closure compiler tutorial
2016-06-06 08:47:04 +02:00
Andreas Hocevar
aa9dbb984a Work around undetected types in {function(argType):returnType} types 2016-06-06 08:02:10 +02:00
tsauerwein
b2120b2bab Fix externs in closure tutorial 2016-06-04 10:52:17 +02:00
greenkeeperio-bot
b4b61e737f chore(package): update clean-css to version 3.4.17
https://greenkeeper.io/
2016-06-03 23:13:17 -07:00
Andreas Hocevar
0dca194525 Handle types in arrays etc. 2016-06-04 00:27:25 +02:00
Andreas Hocevar
9e980663ee Remove api annotations from typedefs in olx.js 2016-06-03 10:38:55 +02:00
Andreas Hocevar
2ec4969ac7 Remove api annotations from enums 2016-06-03 09:29:14 +02:00
Andreas Hocevar
ca07de422c Remove api annotations from typedefs 2016-06-03 09:29:04 +02:00
Andreas Hocevar
eddd006fcf Document typedefs and enums used by API symbols
It is no longer necessary to add api annotations to typedefs and enums
that are used by API symbols.
2016-06-03 09:28:53 +02:00
Marc Jansen
9e209a3362 Merge pull request #5426 from frankrowe/icon-example
Fix icon example to anchor popup to feature location
2016-06-03 07:53:09 +02:00
Frank Rowe
30482f023e fix icon example to anchor popup to feature location 2016-06-02 15:28:37 -04:00
Frédéric Junod
3d8ca68bac Merge pull request #5421 from probins/patch-1
Correct typo in config/jsdoc/api/readme.md
2016-06-02 17:03:58 +02:00
Peter Robins
3b1c76a1da Correct typo in config/jsdoc/api/readme.md 2016-06-02 15:29:41 +01:00
Frédéric Junod
578b653c40 Merge pull request #5417 from openlayers/greenkeeper-clean-css-3.4.16
Update clean-css to version 3.4.16 🚀
2016-06-02 11:52:35 +02:00
greenkeeperio-bot
da5f47999f chore(package): update clean-css to version 3.4.16
https://greenkeeper.io/
2016-06-02 03:19:55 -06:00
Frédéric Junod
d51fecd827 Merge pull request #5413 from openlayers/greenkeeper-clean-css-3.4.15
Update clean-css to version 3.4.15 🚀
2016-06-01 11:37:50 +02:00
greenkeeperio-bot
370f810f6b chore(package): update clean-css to version 3.4.15
https://greenkeeper.io/
2016-06-01 03:22:28 -06:00
Frédéric Junod
d270643ce1 Merge pull request #5410 from openlayers/greenkeeper-eslint-2.11.1
Update eslint to version 2.11.1 🚀
2016-05-31 08:46:17 +02:00
greenkeeperio-bot
1e2ea333cc chore(package): update eslint to version 2.11.1
https://greenkeeper.io/
2016-05-31 08:35:42 +02:00
Frédéric Junod
a9df88004c Merge pull request #5408 from openlayers/greenkeeper-pbf-2.0.1
Update pbf to version 2.0.1 🚀
2016-05-30 09:45:44 +02:00
greenkeeperio-bot
f477a6ccb9 chore(package): update pbf to version 2.0.1
https://greenkeeper.io/
2016-05-30 01:27:19 -06:00
Frédéric Junod
2305991ee9 Merge pull request #5404 from openlayers/greenkeeper-eslint-2.11.0
Update eslint to version 2.11.0 🚀
2016-05-30 09:27:05 +02:00
greenkeeperio-bot
3bdcdb5937 chore(package): update eslint to version 2.11.0
https://greenkeeper.io/
2016-05-27 13:24:13 -06:00
Bart van den Eijnden
bb8b43abce Merge pull request #5402 from anzhihun/master
Pass in srsName option to writeTransaction
2016-05-27 11:49:06 +02:00
Wei Lin
4877a7864c Pass in srsName option to writeTransaction
Fix #5397 :  By passing `srsName` option to `ol.format.WFS.writeTransaction`
2016-05-27 17:36:37 +08:00
Frédéric Junod
1b70931433 Merge pull request #5393 from openlayers/greenkeeper-mocha-2.5.3
Update mocha to version 2.5.3 🚀
2016-05-25 14:17:47 +02:00
greenkeeperio-bot
0acbaa20f9 chore(package): update mocha to version 2.5.3
https://greenkeeper.io/
2016-05-25 05:39:47 -06:00
Frédéric Junod
d2c8823359 Merge pull request #5394 from openlayers/greenkeeper-resemblejs-2.2.1
Update resemblejs to version 2.2.1 🚀
2016-05-25 13:39:33 +02:00
greenkeeperio-bot
2cac34e938 chore(package): update resemblejs to version 2.2.1
https://greenkeeper.io/
2016-05-25 04:25:06 -06:00
Frédéric Junod
15ede94380 Merge pull request #5390 from fredj/wmts_guess_encoding
Fix the requestEncoding automatic selection
2016-05-25 10:29:27 +02:00
Frederic Junod
bd0140f42d Fix the requestEncoding automatic selection
If the `requestEncoding` parameter was not provided, the function used `KVP`
but without checking if it was supported.
2016-05-25 09:57:49 +02:00
Frédéric Junod
f3248e9c19 Merge pull request #5392 from openlayers/greenkeeper-closure-util-1.14.0
Update closure-util to version 1.14.0 🚀
2016-05-25 09:49:47 +02:00
Frederic Junod
420374294b Remove unnecessaryCasts compiler check
Removed from the compiler, see:
https://github.com/google/closure-compiler/wiki/Releases#may-17-2016-v20160517
2016-05-25 09:38:33 +02:00
greenkeeperio-bot
271e7c5bb1 chore(package): update closure-util to version 1.14.0
https://greenkeeper.io/
2016-05-25 01:28:55 -06:00
Frédéric Junod
b434a30603 Merge pull request #5388 from openlayers/greenkeeper-mocha-2.5.2
Update mocha to version 2.5.2 🚀
2016-05-24 13:28:20 +02:00
greenkeeperio-bot
ec1d21e29a chore(package): update mocha to version 2.5.2
https://greenkeeper.io/
2016-05-24 04:16:05 -06:00
Frédéric Junod
4e1decab52 Merge pull request #5382 from twpayne/igc-date
Handle UTC midnight wrap around, fixes #5371
2016-05-24 09:08:21 +02:00
Frédéric Junod
92632f1d63 Merge pull request #5381 from openlayers/greenkeeper-mocha-2.5.1
Update mocha to version 2.5.1 🚀
2016-05-24 08:49:25 +02:00
Frédéric Junod
2063c1be71 Merge pull request #5383 from openlayers/greenkeeper-clean-css-3.4.13
Update clean-css to version 3.4.13 🚀
2016-05-24 08:49:12 +02:00
greenkeeperio-bot
77baa67e71 chore(package): update mocha to version 2.5.1
https://greenkeeper.io/
2016-05-24 08:28:18 +02:00
Andreas Hocevar
f3e6630db3 Merge v3.16.0 2016-05-23 21:01:54 +02:00
Andreas Hocevar
1038b2abea Update package version to v3.16.0 2016-05-23 20:49:32 +02:00
Andreas Hocevar
e0cada9c5d Changelog for v3.16.0 2016-05-23 20:49:05 +02:00
Tom Payne
a6a621834f Handle UTC midnight wrap around, fixes #5371 2016-05-23 20:36:01 +02:00
greenkeeperio-bot
4653a01ba4 chore(package): update clean-css to version 3.4.13
https://greenkeeper.io/
2016-05-23 04:04:44 -06:00
Frédéric Junod
7196e18479 Merge pull request #5377 from fredj/jspdf.min.js
Fix link to jspdf.min.js in export-pdf example
2016-05-23 11:23:03 +02:00
Frederic Junod
e70ce9d624 Fix link to jspdf.min.js in export-pdf example 2016-05-23 10:57:19 +02:00
Frédéric Junod
0efb3994eb Merge pull request #5372 from openlayers/greenkeeper-jquery-2.2.4
Update jquery to version 2.2.4 🚀
2016-05-23 08:36:03 +02:00
greenkeeperio-bot
d666bb4a36 chore(package): update jquery to version 2.2.4
https://greenkeeper.io/
2016-05-20 11:32:25 -06:00
Tim Schaub
50408d7c1a Merge pull request #5364 from tschaub/less-flashy
Make it so things don't flash so much when you change the tile source URL.
2016-05-19 09:26:42 -06:00
Tim Schaub
d50082b860 Upgrade note regarding tile rendering 2016-05-19 09:17:23 -06:00
Tim Schaub
ac4653ada5 Tests for source.setKey() 2016-05-19 09:09:52 -06:00
Tim Schaub
feb6fe9dce Tests for setUrl() and setUrls() 2016-05-19 09:09:52 -06:00
Tim Schaub
b2b902e22f Less weird name 2016-05-19 09:09:52 -06:00
Tim Schaub
6f5965f6a5 Demonstrate how source.setUrl() works 2016-05-19 09:09:52 -06:00
Tim Schaub
9870e8c04c Allow XYZ source construction without options 2016-05-19 09:09:52 -06:00
Tim Schaub
5542f045d5 Less special handling for WMTS tiles 2016-05-19 09:09:52 -06:00
Tim Schaub
025c063251 Less special handling for WMS tiles 2016-05-19 09:09:52 -06:00
Tim Schaub
841c8a5747 Rename source.getKeyParams() to source.getKey() 2016-05-19 09:09:52 -06:00
Tim Schaub
81d5849207 Add a settable key for all tile sources
The source's key is used as the key for all tiles in the source.  For URL tile sources, the URL is the key.
2016-05-19 09:09:52 -06:00
Andreas Hocevar
bbd1af6056 Merge pull request #5368 from probins/wfs
Move WFS typedefs to typedefs.js
2016-05-19 14:52:54 +02:00
Frédéric Junod
e3f58b3e84 Merge pull request #5369 from Turbo87/patch-2
format/igc: Remove duplicate regex exec() call
2016-05-19 14:48:08 +02:00
Tobias Bieniek
d52586d586 format/igc: Remove duplicate regex exec() call
HFDTE_RECORD_RE_.exec(line) has already been called above
2016-05-19 14:35:15 +02:00
Peter Robins
4044ae4cd0 Move WFS typedefs to typedefs.js
By renaming them so they're no longer in any subnamespaces, they no longer need to be in their own file.
2016-05-19 08:48:43 +00:00
Andreas Hocevar
be2fc808be Merge pull request #5363 from probins/camels
Convert all typedefs to CamelCase
2016-05-19 09:12:38 +02:00
Frédéric Junod
d08cca5a0c Merge pull request #5362 from openlayers/greenkeeper-vector-tile-1.2.1
Update vector-tile to version 1.2.1 🚀
2016-05-19 08:31:37 +02:00
Peter Robins
2117f2e3b1 Convert all typedefs to CamelCase 2016-05-18 19:44:45 +00:00
greenkeeperio-bot
1345d049b1 chore(package): update vector-tile to version 1.2.1
https://greenkeeper.io/
2016-05-18 12:58:43 -06:00
Andreas Hocevar
9f501aeb0e Merge pull request #5352 from marlowp/Issue#5030
Add getResolutions() to ol.View
2016-05-18 18:03:09 +02:00
Andreas Hocevar
8afae37c4c Merge pull request #5359 from probins/notes
Move upgrade notes to correct place
2016-05-18 17:56:30 +02:00
Andreas Hocevar
2bff721227 Merge pull request #5343 from probins/nonapitypedefs
Rename non-api sub-namespace typedefs
2016-05-18 17:34:08 +02:00
Frédéric Junod
7a1756d8a9 Merge pull request #5361 from fredj/maki_url
Fix url to maki icons
2016-05-18 17:05:04 +02:00
Frederic Junod
412dc0457e Fix url to maki icons 2016-05-18 16:48:03 +02:00
Tobias Sauerwein
693e91970e Merge pull request #5358 from tsauerwein/ms-wfs-multiple-types
Handle multiple featureMember elements for different types (WFS format)
2016-05-18 15:12:57 +02:00
Peter Robins
557a3aee04 Move upgrade notes to correct place 2016-05-18 09:35:27 +00:00
tsauerwein
7080c508a4 Handle multiple featureMember elements for different types 2016-05-18 11:26:13 +02:00
Frédéric Junod
bc95ec053c Merge pull request #5355 from fredj/navigation-controls_descr
Fix navigation-controls example description
2016-05-18 08:25:54 +02:00
Andreas Hocevar
443d252ec1 Merge pull request #5353 from probins/api
Add API definition to docs landing page
2016-05-17 22:05:12 +02:00
Frédéric Junod
9a83339724 Merge pull request #5356 from openlayers/greenkeeper-rbush-1.4.3
Update rbush to version 1.4.3 🚀
2016-05-17 16:33:16 +02:00
Peter Robins
1a1d55d54e Add API policy to docs landing page 2016-05-17 14:27:12 +00:00
greenkeeperio-bot
57e9e96e5f chore(package): update rbush to version 1.4.3
https://greenkeeper.io/
2016-05-17 08:19:17 -06:00
Frederic Junod
5949170df0 Fix navigation-controls example description 2016-05-17 10:24:21 +02:00
Frédéric Junod
70dd26a412 Merge pull request #5354 from openlayers/greenkeeper-eslint-2.10.2
Update eslint to version 2.10.2 🚀
2016-05-17 08:26:49 +02:00
greenkeeperio-bot
21e8f69d97 chore(package): update eslint to version 2.10.2
https://greenkeeper.io/
2016-05-16 14:40:01 -06:00
Peter Marlow
9b9d006d75 Tests for #getResolutions on ol.View
Created tests for new getResolutions() function on ol.View.
2016-05-15 16:48:09 +01:00
Peter Marlow
350c4d525b Added getResolutions() function to ol.View
New getResolutions() function created for ol.View. This function returns
the array of resolutions passed to the ol.View constructor, or undefined
if none were given.
2016-05-15 16:47:27 +01:00
Andreas Hocevar
1c03814860 Merge pull request #5347 from openlayers/greenkeeper-eslint-2.10.1
Update eslint to version 2.10.1 🚀
2016-05-15 11:46:00 +02:00
greenkeeperio-bot
532275e779 chore(package): update eslint to version 2.10.1
https://greenkeeper.io/
2016-05-14 09:57:15 -06:00
Andreas Hocevar
ef52a757b1 Merge pull request #5344 from probins/rasterenum
Remove raster enum from test
2016-05-14 01:53:58 +02:00
Tim Schaub
048865d975 Merge pull request #5329 from tschaub/utfgrid
UTFGrid updates.
2016-05-13 12:59:56 -06:00
Tim Schaub
fb402d120e Removing access_token in notes for v3 use 2016-05-13 12:08:59 -06:00
Tim Schaub
5a5ad7ce31 Correct types 2016-05-13 12:08:59 -06:00
Tim Schaub
476191b0d0 Notes on using the v4 Mapbox API 2016-05-13 12:08:59 -06:00
Tim Schaub
94b8c853a7 Use legacy UTFGrid source (which doesn't require a token) 2016-05-13 12:08:59 -06:00
Tim Schaub
a810feb257 Test XHR loading 2016-05-13 12:08:58 -06:00
Tim Schaub
5c07628044 Return id if no data is present 2016-05-13 12:08:58 -06:00
Attila Berényi
4c82b3403c Use XHR by default 2016-05-13 12:08:58 -06:00
Peter Robins
cce7b148bb Remove raster enum from test 2016-05-13 16:26:26 +00:00
Peter Robins
176ddd3403 Rename non-api sub-namespace typedefs 2016-05-13 10:24:57 +00:00
Andreas Hocevar
4626554a18 Merge pull request #5335 from probins/typedefs
Move typedefs to separate file
2016-05-13 10:23:14 +02:00
Andreas Hocevar
9523fb6edd Merge pull request #5332 from ahocevar/examples-outdated-warning
Warn when viewing an outdated example, and offer a redirect to latest
2016-05-12 19:23:09 +02:00
Andreas Hocevar
31d0278dfb Merge pull request #5342 from ahocevar/fix-source-links
Fix incorrect source links
2016-05-12 18:55:35 +02:00
Andreas Hocevar
e74434299e Fix incorrect source links 2016-05-12 18:51:54 +02:00
Andreas Hocevar
3fc70bac00 Merge pull request #5339 from ahocevar/div-instead-of-alert
Use a div instead of alert for version warning
2016-05-12 18:20:56 +02:00
Andreas Hocevar
0d2b833e06 Use a div instead of alert for version warning
With this change, it is also no longer necessary to display the version in the
navigation bar. The accidently removed doctype is also brought back.
2016-05-12 17:13:44 +02:00
Andreas Hocevar
19692ed60a Warn when viewing an outdated example, and offer a redirect to latest 2016-05-12 13:40:48 +02:00
Peter Robins
0daa2cf574 Document typedef move 2016-05-12 07:45:48 +00:00
Peter Robins
dd358af0f2 Fix WFS errors by moving typedefs to own file
The WFS typedefs are the only sub-sub-namespace ones which are marked 'api', so cannot be renamed. Moving them to their own file resolves the errors.
2016-05-12 07:31:50 +00:00
Peter Robins
ab9ff536f5 Add goog.provides to typedefs.js to prevent compiler warnings
Without this there are 'defined before its owner' warnings, and issues of missing namespaces when compiling code with the library.
2016-05-11 19:51:14 +00:00
Peter Robins
c7aeebed8c Rename sub-sub-namespace typedefs to sub-namespace
These sub-sub-namespace typedefs are only used internally; some of them cause problems by creating a form of circular dependency. For example, ol.style.Atlas is created in style/atlasmanager.js; if ol.style.Atlas.Block is in a separate file, ol.style.Atlas is dependent on it, so the new file must precede ol.style.Atlas. However if it precedes it then it has to create the ol.style.Atlas namespace which should be created by atlasmanager.js. To get round this, these typedefs are renamed to remove the sub-sub-namespace.

Fortunately they are all non-api, so the rename should not affect anything.
2016-05-11 19:46:56 +00:00
Peter Robins
a1c86ed560 Fix eventTargetLike
This needs a goog.provide and a goog.require in events.js to compile.
2016-05-11 19:46:38 +00:00
Peter Robins
4f0b4dacbd Move sub-namespace typedefs to typedefs.js
Here too there is one problem case.
2016-05-11 19:45:59 +00:00
Peter Robins
ed34caa25a Fix ogc/filter
This only compiles if there is goog.provide('ol.Extent') in the typedefs file, and goog.require('ol.Extent') in this file. An alternative is to add an assert statement, but this means an extra dependency.

With this change there is no longer a need for the change to tasks/build.js
2016-05-11 17:18:05 +00:00
Peter Robins
535e8f5e35 Move top-level typedefs to typedefs.js
With one exception, those directly in the `ol` namespace can be moved without problem.
Some left-over goog.requires are also removed.
2016-05-11 17:18:05 +00:00
Frédéric Junod
d0e5b1e395 Merge pull request #5320 from fredj/modify_condition
Add a 'condition' option to ol.interaction.Modify
2016-05-11 17:15:41 +02:00
Andreas Hocevar
49e2fd0df3 Merge pull request #5333 from openlayers/improve-comments
Improve code readability with better comments
2016-05-11 16:13:15 +02:00
Andreas Hocevar
d59ace1a61 Improve code readability with better comments 2016-05-11 15:46:39 +02:00
Andreas Hocevar
d6395a3c82 Merge pull request #5330 from ahocevar/doc-fixes-improvements
Fix source links, display version and warn about outdated docs
2016-05-11 13:00:41 +02:00
Andreas Hocevar
d27ea0974e Fix source links, display version and warn about outdated docs 2016-05-11 12:45:58 +02:00
Frederic Junod
b49546d2af Add a 'condition' option to ol.interaction.Modify 2016-05-10 17:17:17 +02:00
Andreas Hocevar
8c8c4c3df4 Merge pull request #5324 from probins/rmrequires
Remove unneeded goog.provides/requires for typedefs
2016-05-10 16:31:42 +02:00
Tim Schaub
fa067b7e8a Merge pull request #5328 from tschaub/node-6
Use Node 6 on Travis.
2016-05-10 06:58:37 -06:00
Andreas Hocevar
c4387c14ff Merge pull request #5313 from ahocevar/rastersource-framestate-extent
Rastersource framestate extent
2016-05-10 14:35:25 +02:00
Tim Schaub
afcaa2ea51 Use Node 6 on Travis 2016-05-10 05:52:41 -06:00
Tobias Sauerwein
e55dc30257 Merge pull request #5326 from tsauerwein/example-clean-up
Fix wording in tile-load-event example
2016-05-10 11:39:25 +02:00
Andreas Hocevar
cb50e4a102 Merge pull request #5327 from openlayers/greenkeeper-closure-util-1.13.1
Update closure-util to version 1.13.1 🚀
2016-05-10 11:15:41 +02:00
greenkeeperio-bot
7d805393fc chore(package): update closure-util to version 1.13.1
https://greenkeeper.io/
2016-05-10 02:39:51 -06:00
tsauerwein
684d49cb78 Fix wording 2016-05-10 10:21:44 +02:00
Peter Robins
2a44669e18 Add some goog.requires to keep compiler happy 2016-05-09 16:00:07 +00:00
Andreas Hocevar
39087b2fa4 Reuse the frameState extent 2016-05-09 15:23:00 +02:00
Andreas Hocevar
5c76cb01af Use a snapshot of the frameState extent 2016-05-09 15:23:00 +02:00
Peter Robins
f57065c412 Remove unneeded goog.provides/requires for typedefs
In general, typedefs do not need and should not have goog.require/provide
2016-05-09 13:21:25 +00:00
Tim Schaub
e94939d01b Merge pull request #5289 from openlayers/greenkeeper-fs-extra-0.30.0
Update fs-extra to version 0.30.0 🚀
2016-05-09 06:42:20 -06:00
Tim Schaub
56a365acf4 Merge pull request #5319 from probins/patch-1
Remove outdated fixme from framestate.js.
2016-05-09 06:41:01 -06:00
Andreas Hocevar
fbb9194923 Merge pull request #5274 from samuellapointe/logofix
Allow using elements in logo attribution options
2016-05-09 13:46:11 +02:00
Peter Robins
ffe8daec66 Remove outdated fixme from framestate.js 2016-05-09 09:18:56 +01:00
Bart van den Eijnden
7984cc2b57 Merge pull request #5162 from probins/strategy
Improve docs/examples for loadingstrategy
2016-05-09 09:43:25 +02:00
greenkeeperio-bot
7944144c65 chore(package): update fs-extra to version 0.30.0
https://greenkeeper.io/
2016-05-09 01:08:25 -06:00
Frédéric Junod
ae46b40def Merge pull request #5314 from openlayers/greenkeeper-browserify-13.0.1
Update browserify to version 13.0.1 🚀
2016-05-09 09:08:11 +02:00
Andreas Hocevar
ed421ce4b2 Merge pull request #5315 from probins/tilecoordtransformtype
Remove unused ol.TileCoordTransformType
2016-05-07 12:06:57 +01:00
Peter Robins
51397ee294 Remove unused ol.TileCoordTransformType 2016-05-07 10:35:11 +00:00
greenkeeperio-bot
d316651c35 chore(package): update browserify to version 13.0.1
https://greenkeeper.io/
2016-05-06 09:48:53 -04:00
Tim Schaub
ff37fe128f Merge pull request #5310 from tschaub/fix-raster
Get raster sources working again.
2016-05-04 14:25:02 -04:00
Andreas Hocevar
72468f3470 Merge pull request #5291 from ahocevar/dispatch-while-dispatching-once-listener
Allow once listeners to dispatch events of same type
2016-05-04 12:10:21 -04:00
Andreas Hocevar
b2c6bb11cf Allow once listeners to dispatch events of same type 2016-05-04 11:55:30 -04:00
Frédéric Junod
088c439c34 Merge pull request #5309 from openlayers/greenkeeper-metalsmith-layouts-1.6.5
Update metalsmith-layouts to version 1.6.5 🚀
2016-05-04 08:32:16 +02:00
Tim Schaub
0b4ef31750 Get raster sources working again
This reverts 8e1ffbf91e
2016-05-03 17:47:05 -04:00
greenkeeperio-bot
f3cc873d65 chore(package): update metalsmith-layouts to version 1.6.5
https://greenkeeper.io/
2016-05-03 11:34:34 -04:00
Frédéric Junod
b1648c949e Merge pull request #5052 from openlayers/greenkeeper-fs-extra-0.26.7
Update fs-extra to version 0.26.7 🚀
2016-05-03 15:04:48 +02:00
Tobias Sauerwein
18520cd89d Merge pull request #5306 from gberaudo/unrequire_padding
Make olx.view.FitOptions.padding optional
2016-05-03 13:58:28 +02:00
Guillaume Beraudo
e2b2004aa4 Make olx.view.FitOptions.padding optional
Makes it consistent with other attributes.
2016-05-03 13:44:58 +02:00
Frédéric Junod
a6a0c88641 Merge pull request #5302 from fredj/rm_goog.partial
Remove use of goog.partial
2016-05-03 08:30:00 +02:00
greenkeeperio-bot
54e1e3408b chore(package): update fs-extra to version 0.26.7
https://greenkeeper.io/
2016-05-03 00:29:33 -06:00
Frédéric Junod
9ea297c54f Merge pull request #5304 from openlayers/greenkeeper-sinon-1.17.4
Update sinon to version 1.17.4 🚀
2016-05-03 08:29:18 +02:00
greenkeeperio-bot
5044c49ac3 chore(package): update sinon to version 1.17.4
https://greenkeeper.io/
2016-05-02 11:20:11 -06:00
Samuel Lapointe
f835d86333 Reduce closure dependency, fix GET issue 2016-05-02 09:34:58 -04:00
Frederic Junod
7c15280e81 Remove use of goog.partial
Use Function.prototype.bind instead, see:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/bind#Partially_applied_functions_(currying)
2016-05-02 14:52:09 +02:00
Frédéric Junod
9f3c951c71 Merge pull request #4644 from fredj/rm_check-requires
Remove check-requires script
2016-05-02 09:52:39 +02:00
Frederic Junod
6abecb0192 Remove check-requires script
The missingProvide and missingRequire compiler checks are already checking
if the goog.require and goog.provide are correct.
2016-05-02 09:29:42 +02:00
Marc Jansen
4e17f58b26 Merge pull request #5298 from openlayers/greenkeeper-eslint-2.9.0
Update eslint to version 2.9.0 🚀
2016-04-29 22:33:29 +02:00
greenkeeperio-bot
15b6921bc9 chore(package): update eslint to version 2.9.0
https://greenkeeper.io/
2016-04-29 11:24:56 -06:00
Andreas Hocevar
c7898bcb0e Merge pull request #5296 from probins/patch-1
Document handling of KML MultiGeometries
2016-04-29 12:04:18 +02:00
Peter Robins
c28fd2ae1c Document handling of KML MultiGeometries 2016-04-29 10:56:43 +01:00
Andreas Hocevar
690ef18ee2 Merge pull request #5293 from giohappy/master
Block removePoint while dragging
2016-04-29 10:46:40 +02:00
giohappy
cd2ea6c7d6 Block removePoint during while dragging 2016-04-29 09:00:14 +02:00
Marc Jansen
36b8f31f40 Merge pull request #5285 from marcjansen/scaleline-tests
Add more tests for the scaleline control
2016-04-28 13:23:50 +02:00
Andreas Hocevar
0151d802d3 Merge pull request #5287 from ahocevar/vectortile-tests
Add and fix vectortile tests
2016-04-28 13:07:29 +02:00
Andreas Hocevar
a54c686691 Merge pull request #5288 from giohappy/master
Expose removeVertex_ as removePoint
2016-04-28 13:01:11 +02:00
Andreas Hocevar
ebc28aefd4 Add and fix vectortile tests 2016-04-28 12:57:27 +02:00
giohappy
d49bcdeedc Expose removeVertex_ as removePoint 2016-04-28 12:47:46 +02:00
Andreas Hocevar
2939ebc9b9 Merge pull request #5286 from ahocevar/only-render-whats-necessary
Skip unnecessary render functions
2016-04-28 11:18:35 +02:00
Andreas Hocevar
c17e23f2ae Skip unnecessary render functions 2016-04-28 10:22:20 +02:00
Marc Jansen
73a04c14f5 Add more tests for the scaleline control 2016-04-28 10:04:52 +02:00
Andreas Hocevar
88d20a69ad Merge pull request #5177 from ahocevar/vector-tile-hybrid-rendering
Add render options for vector tile layers
2016-04-28 09:04:45 +02:00
Frédéric Junod
138fe6ede1 Merge pull request #5278 from fredj/cleanup
Fix invalid generics type instantiation
2016-04-28 08:27:15 +02:00
Andreas Hocevar
12849a678e Add note about opaque option removal 2016-04-27 17:50:38 +02:00
Andreas Hocevar
c72a39ff53 Coding style fixes 2016-04-27 17:33:55 +02:00
Andreas Hocevar
ec832243a2 Add comment making clear that 'vector' mode does not generate images 2016-04-27 17:31:20 +02:00
Andreas Hocevar
c5f81a5706 Unconditionally call drawImage - image is always available 2016-04-27 17:31:20 +02:00
Frederic Junod
664507b79b Fix invalid generics type instantiation 2016-04-27 14:51:31 +02:00
Andreas Hocevar
c3217e8d30 Merge pull request #5044 from fblackburn/snapinteraction
Snap interaction now handle feature without geometry properly
2016-04-27 14:25:17 +02:00
Frédéric Junod
e3e0d23a83 Merge pull request #5277 from fredj/cleanup
Type cleanup
2016-04-27 13:24:05 +02:00
Frederic Junod
6002d4c3e8 Remove duplicate type in type annotation 2016-04-27 12:24:01 +02:00
Frederic Junod
63ebed437b Don't use the string constructor 2016-04-27 12:22:43 +02:00
Andreas Hocevar
762aa3029c Merge pull request #5275 from ahocevar/fix-select-getlayer
Fix feature-layer association on replaced selections
2016-04-27 10:40:43 +02:00
Tobias Sauerwein
1ca28506ac Merge pull request #5252 from tsauerwein/wfs-getfeature-filter
Add filter option to ol.format.WFS#writeGetFeature
2016-04-27 09:11:55 +02:00
Andreas Hocevar
c11e95099c Fix feature-layer association on replaced selections 2016-04-27 08:13:45 +02:00
Samuel Lapointe
3a1ff59cfb Allow using elements in logo attribution options
This commit lets the user use an element object instead of a {src: href} object for an attribution logo when creating a map. This opens a lot of possibilities for that logo, for example setting the target to force the logo to open in a new tab when clicked.
2016-04-26 15:30:09 -04:00
Francois Blackburn
9186d1fbda Snap interaction now handle feature without geometry properly 2016-04-26 14:14:47 -04:00
tsauerwein
2f72804fc3 Add example for writeGetFeature 2016-04-26 16:36:57 +02:00
tsauerwein
af294bd44e Add filter option to ol.format.WFS#writeGetFeature 2016-04-26 16:36:50 +02:00
Andreas Hocevar
ed6ac93222 Merge pull request #5264 from matjos/master
Fix for close draw polygon error
2016-04-26 10:52:28 +02:00
Mattias Josefsson
8f96251618 Added wanted change for issue #5145 2016-04-26 10:34:55 +02:00
Andreas Hocevar
343f41e99e Merge pull request #5267 from ahocevar/no-goog-functions
Use ol.functions instead of goog.functions
2016-04-25 16:03:31 +02:00
Andreas Hocevar
255e449dd3 Merge pull request #5266 from ahocevar/colorlike-doc
Document ol.colorlike
2016-04-25 15:53:57 +02:00
Andreas Hocevar
b37cd3fae6 Use ol.functions instead of goog.functions 2016-04-25 15:46:00 +02:00
Andreas Hocevar
d425f75bea Merge pull request #5261 from giohappy/master
add finishCondition to ol.interaction.Draw
2016-04-25 15:42:39 +02:00
Andreas Hocevar
989c04cf12 Document ol.colorlike 2016-04-25 15:33:46 +02:00
Mattias Josefsson
e85d8fa749 Fix for close draw polygon error 2016-04-25 11:48:55 +02:00
giohappy
394ef94fd3 Fix finishCondition test 2016-04-22 23:17:21 +02:00
giohappy
5934f9d416 add olx.interaction.DrawOptions.prototype.finishCondition to typedef 2016-04-22 15:21:11 +02:00
giohappy
ead6063170 make lint happy with drawinteraction.test.js 2016-04-22 15:16:11 +02:00
giohappy
c7af6bd494 Add ol.interaction.Draw.finishCondition to olx.js 2016-04-22 15:11:54 +02:00
giohappy
2076ef02ca Add test for finishCondition 2016-04-22 15:07:59 +02:00
giohappy
130b4d9459 add finishCondition to ol.interaction.Draw 2016-04-22 11:07:42 +02:00
Andreas Hocevar
60926626df Merge pull request #5259 from ahocevar/squash-changelog
Include squash commit merges in changelog
2016-04-22 09:36:46 +02:00
Andreas Hocevar
405ed2af56 Include squash commit merges in changelog 2016-04-21 16:20:03 +02:00
Andreas Hocevar
44f09497f0 Merge pull request #5257 from bjornharrtell/mvt-api
Add readFeatures and readProjection as MVT experimental API
2016-04-21 15:38:45 +02:00
Björn Harrtell
c40993d0d3 Add readFeatures and readProjection as MVT experimental API 2016-04-21 14:16:06 +02:00
Anna Lambrechtsen
18a29ea6d3 Add ol.source.ImageArcGISRest (#3880)
* Add ol.source.ImageArcGISRest

ol.source.ImageArcGISRest is added so a single image can be retrieved
which is required when labelling is applied to the underlying map
service.
it's based on the approach used in ol.source.ImageWMS

* updating to remove as many good references as possible
changing so js passes lint checks

* fixing up so build and tests run

* putting back what was lost in the merge

* adding in an example
tidying up
2016-04-20 11:19:53 +02:00
Andreas Hocevar
f7147960a9 Add render options for vector tile layers 2016-04-19 13:04:38 +02:00
Tim Schaub
0e4692e69e Merge pull request #5239 from openlayers/greenkeeper-eslint-2.8.0
Update eslint to version 2.8.0 🚀
2016-04-16 08:48:53 -06:00
greenkeeperio-bot
3de5a021a9 chore(package): update eslint to version 2.8.0
http://greenkeeper.io/
2016-04-15 12:02:15 -06:00
Frédéric Junod
b7278f184c Merge pull request #5230 from fredj/reuse_frameState
Reuse frame state arrays
2016-04-14 14:57:30 +02:00
Frédéric Junod
e46c8370d5 Merge pull request #5213 from fredj/rm_ol.source.Source.prototype.setProjection
Remove unused ol.source.Source#setProjection function
2016-04-14 12:43:14 +02:00
Frédéric Junod
dca7d6fc8f Merge pull request #5223 from fredj/memory
Create tmpSize_ before calling calculateTileRanges_
2016-04-14 12:43:01 +02:00
Frédéric Junod
db9dbc96b2 Merge pull request #5225 from fredj/rm_ol.extent.transform2D
Remove unused ol.extent.transform2D function
2016-04-14 12:42:48 +02:00
Tim Schaub
2496662070 Merge pull request #5212 from probins/kmlwrite
KML: fix GeometryCollection write
2016-04-14 04:27:18 -06:00
Frédéric Junod
8e3e47bed4 Merge pull request #5228 from adube/translate-layers-filter
Add 'layers' option to Translate interaction
2016-04-14 10:44:34 +02:00
Frederic Junod
92c96b95f9 Reuse the frame state viewHints array if defined 2016-04-14 10:36:12 +02:00
Frederic Junod
8e1ffbf91e Reuse the frame state extent array if defined 2016-04-14 10:32:10 +02:00
Frédéric Junod
8562c9a4fc Merge pull request #5221 from fredj/examples_deps_update
Update jquery, bootstrap and proj4js in examples
2016-04-14 08:35:35 +02:00
Frédéric Junod
400204357f Merge pull request #5227 from fredj/less_garbage
Add a temporary ol.TileCoord in ol.renderer.canvas.TileLayer
2016-04-14 08:33:40 +02:00
Alexandre Dubé
e6e9b12bac Add 'layers' option to Translate interaction 2016-04-13 13:35:36 -04:00
Frederic Junod
a2c3dfd5de Add a temporary ol.TileCoord in ol.renderer.canvas.TileLayer
Avoid garbage creation
2016-04-13 17:21:10 +02:00
Frederic Junod
72e354dce3 Remove unused ol.extent.transform2D function 2016-04-13 17:18:57 +02:00
Frédéric Junod
f92a38b28c Merge pull request #5222 from fredj/unused_vars
Remove unused private variables in ol.renderer.canvas.Map
2016-04-13 17:15:52 +02:00
Frédéric Junod
c15f8c8f07 Merge pull request #5220 from fredj/externs_cleanup
Externs cleanup
2016-04-13 17:15:32 +02:00
Frédéric Junod
de4e51efe8 Merge pull request #5224 from fredj/fix_indent
Fix jsdoc tags indentation
2016-04-13 17:15:00 +02:00
Tim Schaub
d4ac5800d5 Merge pull request #5218 from aisaacs/export-cartodb-setconfig
Add @api annotation to setConfig.
2016-04-13 09:11:12 -06:00
Frederic Junod
9507020218 Fix jsdoc tags indentation 2016-04-13 15:13:50 +02:00
Frederic Junod
ccfc3f7798 Create tmpSize_ before calling calculateTileRanges_ 2016-04-13 12:19:00 +02:00
Frederic Junod
593132c902 Remove unused private variables in ol.renderer.canvas.Map 2016-04-13 10:54:11 +02:00
Frederic Junod
6a6a906e83 Update proj4js to version 2.2.14 2016-04-13 09:28:26 +02:00
Frederic Junod
ed4ac8d83b Update jquery to version 2.2.3 2016-04-13 09:25:37 +02:00
Frederic Junod
35f0928802 Update bootstrap to version 3.3.6 2016-04-13 09:21:20 +02:00
Frederic Junod
044f6638ea Remove externs/jspdf.js and add NOCOMPILE to examples/export-pdf.js 2016-04-13 09:00:02 +02:00
Frederic Junod
936d38ca6f Remove unused externs/webgl-debug.js 2016-04-13 08:56:29 +02:00
Alessandro Isaacs
737daaeea9 Add @api annotation to setConfig 2016-04-12 08:26:30 -07:00
Frédéric Junod
01a6612ab3 Merge pull request #5215 from fredj/getClosestFeatureToCoordinate_filter
Add an optional feature filter to getClosestFeatureToCoordinate
2016-04-12 12:44:11 +02:00
Frederic Junod
05ceaab620 Add an optional feature filter to getClosestFeatureToCoordinate 2016-04-12 12:17:07 +02:00
Frederic Junod
f9fd73c44e Remove unused ol.source.Source#setProjection function 2016-04-11 15:43:25 +02:00
Peter Robins
27f20e2f54 KML: fix GeometryCollection write 2016-04-11 12:36:07 +00:00
Frédéric Junod
50b956b108 Merge pull request #5132 from nicholas-l/removeGoogString
Remove goog.string
2016-04-11 10:28:32 +02:00
Frédéric Junod
33db3d4941 Merge pull request #5206 from probins/patch-1
Minor correction of StyleFunction docs
2016-04-11 09:42:57 +02:00
Frédéric Junod
06ac1b603c Merge pull request #4932 from fredj/undef_WMSGetFeatureInfo
Remove undefined parameters to ol.format.WMSGetFeatureInfo#readFeatures_
2016-04-11 08:41:43 +02:00
Frédéric Junod
fb96ed94ec Merge pull request #5207 from openlayers/greenkeeper-clean-css-3.4.12
Update clean-css to version 3.4.12 🚀
2016-04-11 08:41:06 +02:00
greenkeeperio-bot
664efa18fc chore(package): update clean-css to version 3.4.12
http://greenkeeper.io/
2016-04-09 09:30:50 -06:00
Peter Robins
2a64d9ef55 Minor correction of StyleFunction docs 2016-04-08 18:35:16 +01:00
Andreas Hocevar
1ecd47aeb9 Merge pull request #5201 from probins/patch-2
Small clarification for vector source loader docs
2016-04-08 12:17:03 +02:00
Bart van den Eijnden
bb5b461192 Merge pull request #5200 from bartvde/issue-5199
Fix typo in rotate control for css classList
2016-04-08 11:01:09 +02:00
Peter Robins
9fb4a88841 Small clarification for vector source loader docs 2016-04-08 09:52:54 +01:00
Bart van den Eijnden
231234f9d0 Fix typo in rotate control for css classList 2016-04-08 10:51:26 +02:00
nicholas
c92223d792 Remove Goog.string 2016-04-08 18:09:57 +12:00
Nicholas Latham
cd6494149b Remove goog.global (#5178)
* Remove goog.global

* Correct externs location

* Use Function('return this')

* Remove global externs
2016-04-07 23:36:48 +02:00
Andreas Hocevar
6efd3dab0b Add rendering tests to ensure correct circle and polygon rendering (#5189) 2016-04-07 18:03:57 +02:00
Frédéric Junod
935eb9994c Merge pull request #5192 from openlayers/release-v3.15.1
Release 3.15.1
2016-04-07 16:55:15 +02:00
Frederic Junod
cd32875f37 Update package version to 3.15.1 2016-04-07 16:50:59 +02:00
Frédéric Junod
6fc4427f4f Merge pull request #5191 from openlayers/release-v3.15.1
Release v3.15.1
2016-04-07 16:50:11 +02:00
Frederic Junod
481bcbd5b3 Changelog for v3.15.1 2016-04-07 16:34:17 +02:00
Andreas Hocevar
880d4b89a2 Revert "Batch polygon fill and stroke instructions" 2016-04-07 16:31:08 +02:00
Andreas Hocevar
fe33910ec2 Revert "Batch polygon fill and stroke instructions" 2016-04-07 16:30:04 +02:00
Frédéric Junod
c9ffcef766 Merge pull request #5183 from openlayers/greenkeeper-istanbul-0.4.3
Update istanbul to version 0.4.3 🚀
2016-04-07 13:44:03 +02:00
greenkeeperio-bot
8c9ac5932f chore(package): update istanbul to version 0.4.3
http://greenkeeper.io/
2016-04-07 12:15:38 +02:00
Frédéric Junod
6be704af69 Merge pull request #5187 from fredj/rm_goog.functions
Remove goog.functions.and from ol.interaction.Modify
2016-04-07 12:14:58 +02:00
Frederic Junod
c549fadc01 Remove goog.functions.and from ol.interaction.Modify 2016-04-07 11:46:52 +02:00
Frederic Junod
e099dcd9a9 Simplify ol.interaction.KeyboardPan#defaultCondition_
No need to invoke the function with 'call'
2016-04-07 11:44:23 +02:00
Renaud Michaëlis
53a9341ef0 Allow to delete the starting or ending vertex
* Allow to delete the starting or ending vertex

* Test if starting and ending vertex are removed
2016-04-06 13:47:37 +02:00
Nicholas Latham
18e9ff98ee Remove goog.labs.userAgent
* Remove goog.labs.*

* Change to function

* Change window to this

* Use goog.global
2016-04-06 11:05:49 +02:00
Frédéric Junod
f011b5266e Merge pull request #5176 from openlayers/greenkeeper-jquery-2.2.3
Update jquery to version 2.2.3 🚀
2016-04-06 08:36:12 +02:00
greenkeeperio-bot
d275b1cf74 chore(package): update jquery to version 2.2.3
http://greenkeeper.io/
2016-04-05 13:33:14 -06:00
Frédéric Junod
b691c47e78 Merge pull request #5173 from fredj/use_ol.dom.createCanvasContext2D
Use ol.dom.createCanvasContext2D
2016-04-05 14:42:49 +02:00
Frederic Junod
f2c30cffe2 Use ol.dom.createCanvasContext2D in ol.style.AtlasManager 2016-04-05 14:29:00 +02:00
Frederic Junod
f645d81fee Use ol.dom.createCanvasContext2D in ol.source.ImageStatic 2016-04-05 14:29:00 +02:00
Frederic Junod
38718ee5e6 Use ol.dom.createCanvasContext2D in ol.style.Circle 2016-04-05 14:29:00 +02:00
Frederic Junod
fc6b078642 Use ol.dom.createCanvasContext2D in ol.style.RegularShape 2016-04-05 14:29:00 +02:00
Frédéric Junod
587e8a6ecd Merge pull request #5171 from fredj/attribution_like_typedef
Move olx.source.AttributionOption out of externs/olx.js
2016-04-05 14:25:51 +02:00
Frederic Junod
db9c6a99c8 Move olx.source.AttributionOption out of externs/olx.js 2016-04-05 09:15:15 +02:00
Frédéric Junod
5302882fba Merge pull request #5170 from openlayers/greenkeeper-eslint-2.7.0
Update eslint to version 2.7.0 🚀
2016-04-05 08:29:56 +02:00
greenkeeperio-bot
60fb3b55ff chore(package): update eslint to version 2.7.0
http://greenkeeper.io/
2016-04-04 17:48:52 -06:00
Frédéric Junod
f20e446689 Merge pull request #5167 from fredj/rm_FastClick
Remove FastClick from mobile-full-screen example
2016-04-04 17:01:52 +02:00
Frédéric Junod
e36ffca838 Merge pull request #5166 from fredj/simplify_measure_example
Remove jquery dependency from measure example
2016-04-04 16:31:45 +02:00
Frederic Junod
4b832708e5 Remove FastClick from mobile-full-screen example 2016-04-04 16:31:28 +02:00
Frederic Junod
a7f61e6dda Remove jquery dependency from measure example 2016-04-04 16:14:11 +02:00
Frédéric Junod
825d525d3f Merge pull request #5164 from fredj/cartodb_cleanup
Cartodb cleanup
2016-04-04 14:55:27 +02:00
Frederic Junod
a42d76d69d Use ol.object.assign to update config properties in ol.source.CartoDB 2016-04-04 12:45:26 +02:00
Frederic Junod
02d262e387 Fix ol.source.CartoDB 'loading' state 2016-04-04 12:41:42 +02:00
Frédéric Junod
fe372847f8 Merge pull request #5163 from openlayers/release-v3.15.0
Release v3.15.0
2016-04-04 11:02:00 +02:00
Frederic Junod
9a57c8745e Update package version to 3.15.0 2016-04-04 10:40:12 +02:00
Frederic Junod
84401c132f Changelog for v3.15.0 2016-04-04 10:40:12 +02:00
Nicholas Latham
2ee1969de7 Remove goog.math.modulo and goog.math.lerp 2016-04-04 09:43:24 +02:00
Frédéric Junod
19fd3d6987 Merge pull request #5152 from fredj/cartodb_cleanup
Cartodb cleanup
2016-04-04 09:38:41 +02:00
Frédéric Junod
4b14c86fd1 Merge pull request #4804 from fredj/rm_goog.isArray
Use Array.isArray instead of goog.isArray
2016-04-04 09:25:41 +02:00
Andreas Hocevar
c535cf04e2 Merge pull request #5149 from ahocevar/batch-polygon-fill-stroke
Batch polygon fill and stroke instructions
2016-04-04 09:17:52 +02:00
Frederic Junod
80e984a9c3 Use Array.isArray instead of goog.isArray 2016-04-04 09:06:29 +02:00
Peter Robins
1cd7b76efe Improve docs/examples for loadingstrategy 2016-04-02 13:09:44 +00:00
Andreas Hocevar
fb4992b580 Merge pull request #5159 from openlayers/greenkeeper-eslint-2.6.0
Update eslint to version 2.6.0 🚀
2016-04-02 10:47:25 +02:00
Andreas Hocevar
4141572725 Merge pull request #5160 from openlayers/greenkeeper-clean-css-3.4.11
Update clean-css to version 3.4.11 🚀
2016-04-02 10:46:17 +02:00
greenkeeperio-bot
02f4f8b1d5 chore(package): update clean-css to version 3.4.11
http://greenkeeper.io/
2016-04-01 14:52:42 -06:00
greenkeeperio-bot
0dc7313afb chore(package): update eslint to version 2.6.0
http://greenkeeper.io/
2016-04-01 12:14:37 -06:00
Andreas Hocevar
3ba2d71784 Merge pull request #5157 from probins/measure
Improve docs for measure example
2016-04-01 17:49:29 +02:00
Peter Robins
3416991166 Improve docs for measure example 2016-04-01 13:39:06 +00:00
Frédéric Junod
106657572d Merge pull request #5155 from fredj/ff_zoomify_tests
Fix ol.source.Zoomify tests on firefox
2016-04-01 14:15:51 +02:00
Frederic Junod
c9aff61110 Fix ol.source.Zoomify tests on firefox 2016-04-01 13:36:43 +02:00
Frederic Junod
e222409f50 Add externs for CartoDB response 2016-04-01 10:55:38 +02:00
Frederic Junod
b96de85044 Add cacheSize option to olx.source.CartoDBOptions 2016-04-01 10:44:31 +02:00
Frederic Junod
3f0de09dd7 Fix ol.source.CartoDB goog.base params 2016-04-01 10:44:31 +02:00
Frederic Junod
13a0eb4ca7 Add jsdoc tags in ol.source.CartoDB constructor 2016-04-01 10:44:31 +02:00
Frederic Junod
fb6353a816 Fix olx.source.CartoDBOptions definition 2016-04-01 10:44:31 +02:00
Frederic Junod
24665747b3 Fix cartodb links 2016-04-01 10:44:31 +02:00
Frederic Junod
c2749bbdd1 Fix olx.source.CartoDBOptions#attributions type 2016-04-01 10:44:31 +02:00
Marc Jansen
4077886165 Merge pull request #5086 from bjornharrtell/rm_goog.functions
Get rid of goog.functions
2016-04-01 10:44:03 +02:00
Björn Harrtell
44e04be67f Get rid of goog.functions 2016-04-01 10:32:15 +02:00
Frédéric Junod
baf5287ad2 Merge pull request #5105 from fredj/stamen_minZoom
Support minZoom in ol.source.Stamen
2016-04-01 09:56:20 +02:00
Frederic Junod
548e4abd35 Support minZoom in ol.source.Stamen 2016-04-01 09:46:36 +02:00
Tim Schaub
cc9d4d8794 Merge pull request #4926 from aisaacs/cartodb
Add CartoDB tile source.
2016-03-31 17:35:54 -07:00
Andreas Hocevar
ee53fd772d Remove unnecessary duplicated polygon close points 2016-03-31 14:47:07 +02:00
Andreas Hocevar
18f3d7243d Batch polygon fill and stroke instructions 2016-03-31 13:26:42 +02:00
Marc Jansen
dfc1bb7592 Merge pull request #5151 from marcjansen/fse-fs
Use fs-extra as fs, remove usage of graceful-fs
2016-03-31 11:34:39 +02:00
Marc Jansen
5a00289e8e Remove usage of graceful-fs 2016-03-31 10:30:58 +02:00
Marc Jansen
d3de8c38b5 Use fs-extra as fs 2016-03-31 10:30:58 +02:00
Andreas Hocevar
627632ce1b Merge pull request #5124 from nicholas-l/removeDOMClassList
Removed goog.dom.classlist
2016-03-31 10:25:05 +02:00
Frédéric Junod
c3447873b6 Merge pull request #5150 from fredj/rm_wrench
Use fs-extra instead of wrench
2016-03-31 10:10:36 +02:00
Frederic Junod
03d78cdd1c Use removeSync function from fs-extra 2016-03-31 09:52:26 +02:00
Frederic Junod
19b0c65e4c Use fs-extra instead of wrench 2016-03-31 09:27:56 +02:00
nicholas
4d26305564 Add polyfill for IE 2016-03-31 19:25:42 +13:00
nicholas
863589e5ed Remove commented out code 2016-03-31 19:09:13 +13:00
nicholas
68fd5267c2 Removed goog.dom.classlist.enable 2016-03-31 19:09:13 +13:00
nicholas
126e49cd39 Removed goog.dom.classlist.contains 2016-03-31 19:09:13 +13:00
nicholas
b9073013db Remove goog.classlist.toggle 2016-03-31 19:09:13 +13:00
nicholas
8f8068b88c Removed goog.dom.classlist 2016-03-31 19:09:13 +13:00
Alessandro Isaacs
85f11b093d Use XHR 2016-03-30 15:05:43 -07:00
Alessandro Isaacs
4a33db370b Update example yml 2016-03-30 11:45:20 -07:00
Alessandro Isaacs
2fd6352a57 Use https always 2016-03-30 11:45:20 -07:00
Alessandro Isaacs
94998c8ec7 Update olx 2016-03-30 11:45:20 -07:00
Alessandro Isaacs
8389c16315 Add CartoDB tile source. 2016-03-30 11:45:20 -07:00
Marc Jansen
cf9e24feb1 Merge pull request #5109 from marcjansen/tileutfgridsource-tests
Add some tests for ol.source.TileUTFGrid
2016-03-30 17:49:39 +02:00
Marc Jansen
f4b4e26f19 Add some tests for ol.source.TileUTFGrid 2016-03-30 16:46:35 +02:00
Frédéric Junod
e5012856a1 Merge pull request #5139 from openlayers/greenkeeper-closure-util-1.13.0
Update closure-util to version 1.13.0 🚀
2016-03-30 14:53:55 +02:00
Frederic Junod
927d73d410 Add missing return jsdoc annotations 2016-03-30 09:02:12 +02:00
Frederic Junod
f29bc74b7f Ignore unnecessaryCasts errors 2016-03-30 09:02:12 +02:00
greenkeeperio-bot
03038b123f chore(package): update closure-util to version 1.13.0
http://greenkeeper.io/
2016-03-30 09:02:11 +02:00
Frédéric Junod
bc1b9b9677 Merge pull request #5141 from fredj/reuse_array
Reuse dragListenerKeys_ variable in ol.control.ZoomSlider
2016-03-30 08:55:56 +02:00
Frederic Junod
0bb3f1e228 Reuse dragListenerKeys_ variable in ol.control.ZoomSlider 2016-03-29 16:52:28 +02:00
Frédéric Junod
8ef230768b Merge pull request #5118 from fredj/rm_goog.dom.classlist
Remove goog.dom.classlist usage
2016-03-29 10:46:13 +02:00
Frederic Junod
64654e1e72 Remove goog.dom.classlist usage 2016-03-29 10:28:20 +02:00
Marc Jansen
ae905593b3 Merge pull request #5115 from marcjansen/line-dash-doc
Clarify that lineDash has no effect in IE 10 and below
2016-03-29 10:15:09 +02:00
Marc Jansen
09370952fd Clarify that lineDash has no effect in IE < 10 2016-03-29 09:58:41 +02:00
Frédéric Junod
9425088610 Merge pull request #5136 from openlayers/greenkeeper-eslint-2.5.3
Update eslint to version 2.5.3 🚀
2016-03-29 09:54:22 +02:00
greenkeeperio-bot
94f83b53df chore(package): update eslint to version 2.5.3
http://greenkeeper.io/
2016-03-29 09:22:58 +02:00
Frédéric Junod
b3796aa3a1 Merge pull request #5123 from openlayers/greenkeeper-coveralls-2.11.9
Update coveralls to version 2.11.9 🚀
2016-03-29 09:17:26 +02:00
greenkeeperio-bot
5276fd0580 chore(package): update coveralls to version 2.11.9
http://greenkeeper.io/
2016-03-29 09:06:01 +02:00
Frédéric Junod
2f67fca2a6 Merge pull request #5131 from openlayers/greenkeeper-phantomjs-prebuilt-2.1.7
Update phantomjs-prebuilt to version 2.1.7 🚀
2016-03-29 09:03:24 +02:00
greenkeeperio-bot
690152a07b chore(package): update phantomjs-prebuilt to version 2.1.7
http://greenkeeper.io/
2016-03-25 15:51:40 -06:00
Andreas Hocevar
feabf58740 Merge pull request #5122 from probins/patch-1
Update browser support info in intro tutorial
2016-03-25 19:14:18 +01:00
Peter Robins
8bf208558d Update browser support info in intro tutorial 2016-03-25 14:53:45 +00:00
Andreas Hocevar
d9d46bc1f7 Merge pull request #5112 from probins/decimals
Add decimals option to format write
2016-03-25 10:44:28 +01:00
Andreas Hocevar
f835364822 Merge pull request #5120 from ahocevar/utfgrid-config
Add tileJSON option to ol.source.TileUTFGrid
2016-03-24 23:13:19 +01:00
Andreas Hocevar
c0de5a6835 Add tileJSON option to ol.source.TileUTFGrid 2016-03-24 23:02:28 +01:00
Peter Robins
a18bf636f8 Add decimals option to format write 2016-03-24 17:14:02 +00:00
Frédéric Junod
2159a35bb8 Merge pull request #5119 from drnextgis/issue#5117
Add ol.source.Raster events on API docs page
2016-03-24 17:41:19 +01:00
drnextgis
f9a16898a5 Add ol.source.Raster events on API docs page 2016-03-24 22:25:48 +06:00
Andreas Hocevar
35ac1c4577 Merge pull request #5116 from ahocevar/responsive-examples
Improve examples pages on mobile devices a bit
2016-03-24 15:51:01 +01:00
Andreas Hocevar
26ed4c33a3 Improve examples pages on mobile devices a bit
Only show navigation when there is enough space.
2016-03-24 15:12:04 +01:00
Andreas Hocevar
3e5e271331 Merge pull request #5113 from AvatharDG/patch-1
Memory leak in ol.control.FullScreen
2016-03-24 11:09:04 +01:00
AvatharDG
e752a8cea3 Update fullscreencontrol.js 2016-03-24 09:41:01 +01:00
AvatharDG
290f8b5c7d Update fullscreencontrol.js 2016-03-24 09:39:31 +01:00
AvatharDG
c9cb9b6d36 Memory leak in ol.control.FullScreen
Register and unregister listener in setMap method.
2016-03-24 09:35:10 +01:00
Frédéric Junod
ce61fb300c Merge pull request #5111 from fredj/examples_cleanup
Remove CSS filter in examples
2016-03-23 17:18:26 +01:00
Frederic Junod
92ef1724d1 Remove CSS filter in examples
Was used to set the opacity for IE <= 8
2016-03-23 17:01:12 +01:00
Frédéric Junod
fe5219eb84 Merge pull request #5108 from fredj/rm_ol.xml.getAttributeNodeNS
Remove unused ol.xml.getAttributeNodeNS function
2016-03-23 15:39:37 +01:00
Frederic Junod
e9cf0bbf6e Remove unused ol.xml.getAttributeNodeNS function 2016-03-23 14:45:06 +01:00
Frédéric Junod
051ed439ca Merge pull request #5106 from fredj/rm_goog.math.Vec2
Get rid of goog.math.Vec2
2016-03-23 14:41:38 +01:00
Frederic Junod
e126df11e7 Remove use of goog.math.Vec2 2016-03-23 14:16:20 +01:00
Marc Jansen
e742181fe9 Merge pull request #5096 from marcjansen/zoomify-tests
Add tests for ol.source.Zoomify
2016-03-23 09:40:46 +01:00
Marc Jansen
399d8ce326 Add tests for ol.source.Zoomify 2016-03-23 09:22:17 +01:00
Marc Jansen
9fc2f5c19f Merge pull request #5102 from openlayers/jsonp-typo
Fix typo in API docs
2016-03-23 09:19:32 +01:00
Marc Jansen
0554c7f685 Fix typo in API docs 2016-03-23 09:11:10 +01:00
Andreas Hocevar
587817af94 Merge pull request #5098 from bjornharrtell/gl-log
Reintroduce log messages for relevant WebGL assertions
2016-03-22 17:54:44 +01:00
Björn Harrtell
a2a3ca84e2 Reintroduce log messages for relevant WebGL assertions 2016-03-22 16:35:46 +01:00
Andreas Hocevar
1634aaa9dd Merge pull request #5094 from probins/patch-2
FAQ: answer question 4
2016-03-22 14:53:28 +01:00
Peter Robins
f35887d6e7 FAQ: answer question 4 2016-03-22 13:17:44 +00:00
Frédéric Junod
14bed81994 Merge pull request #5092 from drnextgis/issue#5091
add raster.jsdoc
2016-03-22 09:55:35 +01:00
drnextgis
e00149562a add raster.jsdoc 2016-03-22 14:07:31 +06:00
Andreas Hocevar
0f86b1df69 Merge pull request #5081 from drnextgis/issue#3850
Snap to vertices or edges
2016-03-21 22:52:08 +01:00
Andreas Hocevar
5001f0896e Merge pull request #5090 from probins/patch-1
Update custom-builds.md
2016-03-21 17:56:18 +01:00
Andreas Hocevar
579ce6c5ad Merge pull request #5089 from probins/point
Test for both transform coords should use roughlyEqual
2016-03-21 16:53:03 +01:00
Peter Robins
4e3d6bd556 Update custom-builds.md 2016-03-21 14:37:40 +00:00
Peter Robins
caf3e4b062 Test for both transform coords should use roughlyEqual 2016-03-21 14:21:56 +00:00
Andreas Hocevar
cf6baf2cd1 Merge pull request #5080 from probins/geomcoll
Fix geojson write GeometryCollection
2016-03-21 13:28:46 +01:00
Peter Robins
e65c522cb4 Fix geojson write GeometryCollection 2016-03-21 12:11:31 +00:00
Andreas Hocevar
1e8f0026eb Merge pull request #5088 from probins/patch-1
DEVELOPING.md: remove section on running Travis on fork
2016-03-21 12:09:44 +01:00
Peter Robins
bd47db8a55 DEVELOPING.md: remove section on running Travis on fork 2016-03-21 10:32:24 +00:00
drnextgis
d41bfde25d snap to vertices or edges 2016-03-21 16:19:36 +06:00
Andreas Hocevar
7990bb3bf6 Merge pull request #5087 from drnextgis/issue#2974
assertion to check that there's a DOM node for target element
2016-03-21 11:11:59 +01:00
drnextgis
c6f568f99b assertion to check that there's a DOM node for target element 2016-03-21 16:02:13 +06:00
Frédéric Junod
f380f34468 Merge pull request #5069 from openlayers/greenkeeper-jquery-2.2.2
Update jquery to version 2.2.2 🚀
2016-03-21 08:53:49 +01:00
greenkeeperio-bot
d8f7aa193c chore(package): update jquery to version 2.2.2
http://greenkeeper.io/
2016-03-21 08:44:06 +01:00
Tim Schaub
d7ad543c12 Merge pull request #5083 from tschaub/canvas-immediate
Remove unnecessary lineTo calls in immediate polygon rendering
2016-03-20 21:50:40 -06:00
Tim Schaub
8437f95c86 Merge pull request #5082 from bjornharrtell/rm_goog.log
Get rid of goog.log.
2016-03-19 20:16:06 -06:00
Tim Schaub
01d2b84ee1 Merge pull request #5079 from tschaub/word
Correcting a typo in the upgrade notes
2016-03-19 16:55:13 -06:00
Tim Schaub
cd70f58e34 Rendering tests for vector context 2016-03-19 16:45:26 -06:00
Björn Harrtell
234e8c2fde Get rid of goog.log 2016-03-19 23:12:56 +01:00
Tim Schaub
22d03cb2ee Avoid duplicate lineTo and correctly close rings 2016-03-19 16:12:38 -06:00
Andreas Hocevar
309843b53d Merge pull request #5076 from openlayers/greenkeeper-phantomjs-prebuilt-2.1.6
Update phantomjs-prebuilt to version 2.1.6 🚀
2016-03-19 19:02:32 +01:00
Tim Schaub
f0cca94456 Correcting a typo in the upgrade notes 2016-03-18 22:41:19 -06:00
Tim Schaub
a421b4fb65 Merge pull request #5077 from tschaub/more-immediate
Make immediate API uniformly synchronous.
2016-03-18 18:00:33 -06:00
Tim Schaub
ed71cf74f6 Upgrade note on zIndex for drawFeature() styles 2016-03-18 17:52:16 -06:00
Tim Schaub
0eb7e8220d Immediate rendering for all vector contexts 2016-03-18 17:31:14 -06:00
Tim Schaub
f0814628b7 Synchronous rendering only 2016-03-18 17:26:10 -06:00
Tim Schaub
ec2daf2118 Make drawFeature() immediate 2016-03-18 17:26:10 -06:00
Tim Schaub
ef0487c3ab Merge pull request #5072 from tschaub/immediate-api
Add setStyle() and drawGeometry() to the immediate rendering API.
2016-03-18 17:18:08 -06:00
Tim Schaub
42c2dd8702 More geometry 2016-03-18 17:04:50 -06:00
Tim Schaub
42f41e1cf4 Variable named geometry 2016-03-18 17:04:50 -06:00
Tim Schaub
05cf57dcfc Remove unused arg 2016-03-18 17:04:50 -06:00
Tim Schaub
51dfe89425 Add assert message 2016-03-18 17:04:49 -06:00
Tim Schaub
1339d6b3a6 Correct to upgrade notes 2016-03-18 17:04:49 -06:00
Tim Schaub
d0b2016bb6 Add setStyle() to WebGL immediate API 2016-03-18 17:04:49 -06:00
Tim Schaub
f77c7dded2 Add drawGeometry() to WebGL immediate API 2016-03-18 17:04:49 -06:00
Tim Schaub
88f8515fb6 Shorter names for drawing methods 2016-03-18 17:04:44 -06:00
Tim Schaub
2133d6d081 Document the immediate rendering API 2016-03-18 17:03:18 -06:00
Tim Schaub
ef40f66c93 Use setStyle() and drawGeometry() in examples 2016-03-18 17:03:18 -06:00
Tim Schaub
cf0c4dcf3f Add methods to base class 2016-03-18 17:03:17 -06:00
Tim Schaub
873e4176c6 Add vectorContext.drawGeometry() method 2016-03-18 17:03:17 -06:00
Tim Schaub
8f0f278832 Add vectorContext.setStyle() method 2016-03-18 17:03:17 -06:00
Andreas Hocevar
109bda60d0 Merge pull request #5074 from ahocevar/stitch-rotated-tiles
Do not rotate map canvas after composition
2016-03-18 23:29:14 +01:00
greenkeeperio-bot
3492628dc4 chore(package): update phantomjs-prebuilt to version 2.1.6
http://greenkeeper.io/
2016-03-18 16:03:52 -06:00
Andreas Hocevar
19cfc140a8 Merge pull request #5071 from drnextgis/issue#5070
correct way to determine freehand mode is enabled
2016-03-18 23:02:32 +01:00
Andreas Hocevar
577e45cd97 Do not rotate map canvas after composition
This requires to draw tile layers to an intermediate canvas again, but
only when the view is rotated.
2016-03-18 21:53:19 +01:00
drnextgis
658a2b317e correct way to determine freehand mode is enabled 2016-03-18 11:10:27 +06:00
Bart van den Eijnden
9c573a5b3c Merge pull request #5066 from bartvde/getters
Add more getters to ol.source.Vector
2016-03-17 15:58:31 +01:00
Bart van den Eijnden
908d4051cd Add more getters to ol.source.Vector 2016-03-17 15:35:51 +01:00
Marc Jansen
a81150508d Merge pull request #5064 from probins/clonedocs
Fix inconsistency in geom docs
2016-03-17 11:45:20 +01:00
Peter Robins
8f9a8e9bb1 Fix inconsistency in geom docs 2016-03-17 10:13:30 +00:00
Andreas Hocevar
5ba64024ab Merge pull request #5063 from drnextgis/issue#5062
Remove inappropriate information from API docs
2016-03-17 09:34:07 +01:00
drnextgis
f4bb232279 remove inappropriate information from API docs 2016-03-17 12:50:52 +06:00
Marc Jansen
242a0937a3 Merge pull request #5061 from drnextgis/apidoc
Remove redundant required option
2016-03-17 07:22:01 +01:00
drnextgis
a857a66a98 remove redundant required option 2016-03-17 07:19:11 +06:00
Andreas Hocevar
def755f1eb Merge pull request #5058 from probins/patch-1
Note in docs that DOM renderer can also render vectors
2016-03-16 17:34:06 +01:00
Peter Robins
6f2747cf14 Note in docs that DOM renderer can also render vectors 2016-03-16 16:30:59 +00:00
Frédéric Junod
0181e525ce Merge pull request #5056 from probins/patch-1
Note in docs that WebGL can render points
2016-03-16 17:01:22 +01:00
Peter Robins
5da0fe3300 Note in docs that WebGL can render points 2016-03-16 15:41:57 +00:00
Andreas Hocevar
2f079ad059 Merge pull request #5055 from probins/kmlscalecruft
Fix cruft on kml scale output
2016-03-16 16:34:01 +01:00
Peter Robins
9ba4208616 Fix cruft on kml scale output 2016-03-16 15:12:23 +00:00
Frédéric Junod
4b5bb42961 Merge pull request #5051 from fredj/remove_aborted_tiles
Handle aborted tiles in ol.TileQueue
2016-03-16 14:38:59 +01:00
Frederic Junod
24886f2710 Add more ol.TileQueue tests 2016-03-16 14:21:21 +01:00
Frederic Junod
c30ecace75 Handle aborted tiles in ol.TileQueue 2016-03-16 14:21:20 +01:00
Frederic Junod
b0984070db Don't load an already loading tile 2016-03-16 14:21:20 +01:00
Marc Jansen
1c57686d1f Merge pull request #5049 from marcjansen/assume-getComputedStyle
Supported browsers all have getComputedStyle
2016-03-16 11:30:06 +01:00
Marc Jansen
0d24be6767 Supported browsers all have getComputedStyle 2016-03-16 11:16:14 +01:00
Marc Jansen
074eff1efd Merge pull request #5048 from marcjansen/dom-tests
Add tests for ol.dom methods
2016-03-16 10:59:40 +01:00
Marc Jansen
648011c64d Remove unneeded and wrong goog.provide 2016-03-16 10:48:06 +01:00
Marc Jansen
37899a3feb Add tests for ol.dom methods 2016-03-16 10:48:06 +01:00
Andreas Hocevar
d46407f7b6 Merge pull request #5031 from drnextgis/zoomout
support zooming out for ol.interaction.DragZoom
2016-03-16 10:45:09 +01:00
drnextgis
7b1e92580d zooming out option for ol.interaction.DragZoom 2016-03-16 11:47:18 +06:00
Andreas Hocevar
88701db4c4 Merge pull request #5036 from ahocevar/icon-imgsize
Use imgSize when provided
2016-03-15 18:56:27 +01:00
Andreas Hocevar
339c7c5c23 Use imgSize when provided 2016-03-15 16:17:11 +01:00
Andreas Hocevar
08b19549ce Merge pull request #5020 from openlayers/greenkeeper-gaze-1.0.0
Update gaze to version 1.0.0 🚀
2016-03-15 14:58:05 +01:00
Andreas Hocevar
f58b7cf347 Merge pull request #5039 from openlayers/greenkeeper-fs-extra-0.26.6
Update fs-extra to version 0.26.6 🚀
2016-03-15 14:39:52 +01:00
Andreas Hocevar
3186a411b2 Update closure-util to compatible version 1.12.0 2016-03-15 14:28:42 +01:00
greenkeeperio-bot
10fa741476 chore(package): update fs-extra to version 0.26.6
http://greenkeeper.io/
2016-03-15 04:46:30 -07:00
Andreas Hocevar
44d0578389 Merge pull request #5033 from probins/patch-1
Document GPX geometry output types
2016-03-15 00:18:03 +01:00
Peter Robins
0a3b7e56a9 Document GPX geometry output types 2016-03-14 16:56:23 +00:00
Andreas Hocevar
9db16bfa94 Merge pull request #5024 from ahocevar/less-aggressive-canvas-resizing
Resize the map canvas less aggressively
2016-03-14 09:41:53 +01:00
Frédéric Junod
c0b27bca8f Merge pull request #5000 from fredj/rm_goog.style.setBorderBoxSize
Remove use of goog.math.Size and goog.style.setBorderBoxSize
2016-03-14 08:53:32 +01:00
Frederic Junod
93abfc9a03 Remove use of goog.style.setBorderBoxSize 2016-03-14 08:45:18 +01:00
Frederic Junod
8eb3e55aa0 Remove use of goog.math.Size 2016-03-14 08:45:18 +01:00
Bart van den Eijnden
a2175afcad Merge pull request #5027 from probins/patch-1
Clarify default value of featureProjection on geometry write
2016-03-14 08:39:02 +01:00
Peter Robins
67e511765a Clarify default value of featureProjection on write 2016-03-13 16:30:30 +00:00
Andreas Hocevar
5b21ab8811 Merge pull request #5019 from openlayers/greenkeeper-eslint-2.4.0
Update eslint to version 2.4.0 🚀
2016-03-12 16:36:52 +01:00
Andreas Hocevar
a3cc322593 Fix indentation 2016-03-12 16:25:38 +01:00
Andreas Hocevar
600c139a61 Resize the map canvas less aggressively 2016-03-12 14:13:28 +01:00
greenkeeperio-bot
6c191d0fef chore(package): update gaze to version 1.0.0
http://greenkeeper.io/
2016-03-11 21:54:46 -07:00
greenkeeperio-bot
9365fbdb7e chore(package): update eslint to version 2.4.0
http://greenkeeper.io/
2016-03-11 15:06:34 -07:00
Marc Jansen
9cc628939a Merge pull request #5016 from marcjansen/centerflatgeom-tests
Add basic tests for ol.geom.flat.center
2016-03-11 17:22:13 +01:00
Marc Jansen
410dddaa46 Add basic tests for ol.geom.flat.center 2016-03-11 13:51:10 +01:00
Andreas Hocevar
7230b83cbd Merge pull request #5015 from openlayers/greenkeeper-proj4-2.3.14
Update proj4 to version 2.3.14 🚀
2016-03-11 11:37:20 +01:00
greenkeeperio-bot
194c47d962 chore(package): update proj4 to version 2.3.14
http://greenkeeper.io/
2016-03-11 02:45:20 -07:00
Marc Jansen
da40527077 Merge pull request #5013 from openlayers/test-typo
Fix typo in test description
2016-03-11 09:45:28 +01:00
Marc Jansen
c1263af9b1 Fix typo in test description 2016-03-11 09:25:50 +01:00
Marc Jansen
3197972e14 Merge pull request #5007 from marcjansen/plain-attr
Accept simpler forms of specifying attribution(s) for sources.
2016-03-11 09:15:03 +01:00
Marc Jansen
5b43e8a31e Use simple forms to create attributions in examples 2016-03-11 09:04:06 +01:00
Marc Jansen
df4f1c1389 Accept simpler attributions in sources 2016-03-11 09:04:06 +01:00
Andreas Hocevar
74006a91fe Merge pull request #5011 from ahocevar/vectortile-setprojection
Add missing setProjection function to ol.VectorTile API
2016-03-10 20:01:29 +01:00
Andreas Hocevar
fdee0d73de Merge pull request #5010 from ahocevar/event-docs-externs
Add and fix API docs for ol.events.Event stack
2016-03-10 19:57:57 +01:00
Andreas Hocevar
3164dc874e Add missing setProjection function to ol.VectorTile API 2016-03-10 19:50:30 +01:00
Andreas Hocevar
7c5e1b808d Add and fix API docs for ol.events.Event stack 2016-03-10 17:35:55 +01:00
Andreas Hocevar
fb6cd4f586 Merge pull request #5009 from gberaudo/update_tutorials
Update tutorials
2016-03-10 16:20:35 +01:00
Guillaume Beraudo
166dd98b72 Simplify and modernize closure tutorial
Use jscomp_error * and keep most advanced options for the last example.
2016-03-10 16:04:46 +01:00
Guillaume Beraudo
fedf477f29 Simplify custom-builds tutorial
Remove, the disturbing goog.dom.ASSUME_STANDARDS_MODE define.
Remove jscomp_off stuff.
2016-03-10 16:03:03 +01:00
Andreas Hocevar
bf30e86b84 Merge pull request #5006 from ahocevar/update-slimerjs
Use the maintained slimerjs package
2016-03-10 13:53:52 +01:00
Andreas Hocevar
6062128b4b Use the maintained slimerjs package 2016-03-10 12:25:16 +01:00
Frédéric Junod
cda6d678dc Merge pull request #5003 from fredj/jsdoc_rotate
Add 'function' jsdoc tag to ol.geom.Geometry#rotate
2016-03-10 08:39:48 +01:00
Frederic Junod
0dd36736c7 Add 'function' jsdoc tag to ol.geom.Geometry#rotate
Otherwise the function is in the 'Members' section of the API documentation.
2016-03-10 08:30:10 +01:00
Tim Schaub
6e45eef2a0 Merge pull request #5002 from openlayers/greenkeeper-eslint-config-openlayers-4.1.0
Update eslint-config-openlayers to version 4.1.0 🚀
2016-03-09 07:13:31 -07:00
greenkeeperio-bot
a118eeded9 chore(package): update eslint-config-openlayers to version 4.1.0
http://greenkeeper.io/
2016-03-09 05:44:50 -07:00
Frédéric Junod
ef2121bb70 Merge pull request #4999 from fredj/rm_goog.dom.removeNode
Remove use of goog.dom.removeNode
2016-03-09 13:16:51 +01:00
Frederic Junod
8a6962da9e Remove use of goog.dom.removeNode 2016-03-09 11:45:04 +01:00
Frédéric Junod
02aee14600 Merge pull request #4990 from fredj/getTileJSON
Add new ol.source.TileJSON#getTileJSON function
2016-03-09 11:44:35 +01:00
Frederic Junod
4157882f2e Add new ol.source.TileJSON#getTileJSON function 2016-03-09 10:55:19 +01:00
Frédéric Junod
441a7c093f Merge pull request #4998 from fredj/rm_map_isDef
Remove unused ol.Map#isDef function
2016-03-09 09:26:28 +01:00
Frederic Junod
cb251f1648 Remove unused ol.Map#isDef function 2016-03-09 08:36:36 +01:00
Tim Schaub
0b3155a47e Merge pull request #4995 from tschaub/uncolored
Remove unused ol.color functions.
2016-03-08 10:29:38 -07:00
Tim Schaub
249f3b2e47 Tests for ol.color.asString() 2016-03-08 10:05:54 -07:00
Tim Schaub
40397aa39e Tests for ol.color.asArray() 2016-03-08 10:05:54 -07:00
Tim Schaub
47a18d41f0 Remove unused ol.color.equals() 2016-03-08 10:05:53 -07:00
Tim Schaub
9ea9b29a69 Remove unused ol.color.transform() 2016-03-08 10:05:53 -07:00
Tim Schaub
8b1ad633be Remove unused ol.color.stringOrColorEquals() 2016-03-08 10:05:53 -07:00
Tim Schaub
7cf433eb68 Remove unused ol.color.blend() 2016-03-08 10:05:53 -07:00
Andreas Hocevar
091e8059c5 Merge pull request #4991 from ahocevar/soft-remove-listeners
Do not remove listeners while dispatching event
2016-03-08 17:46:03 +01:00
Frédéric Junod
fd256027ec Merge pull request #4984 from fredj/geom_rotate
Add new ol.geom.Geometry#rotate function
2016-03-08 17:17:09 +01:00
Frederic Junod
d5564a04db Add new ol.geom.Geometry#rotate function 2016-03-08 17:05:19 +01:00
Andreas Hocevar
0377e4a322 Add tests for corner cases 2016-03-08 17:04:25 +01:00
Frédéric Junod
6c74e90c5d Merge pull request #4994 from jonataswalker/array-alpha-color
Add alpha default value to ol.Color array form
2016-03-08 17:04:19 +01:00
jonataswalker
2564bb3e58 Add alpha default value to ol.Color array form 2016-03-08 12:43:42 -03:00
Andreas Hocevar
8a279dd94b Do not reset pendingRemovals if event is dispatched again 2016-03-08 15:54:51 +01:00
Andreas Hocevar
acd76a10b6 Clean up when propagation is stopped 2016-03-08 15:54:17 +01:00
Marc Jansen
b5dc619e0e Merge pull request #4992 from marcjansen/coverage-reporter
Allow configuration of the test reporter
2016-03-08 13:21:18 +01:00
Andreas Hocevar
93f26a90d0 Do not remove listeners while dispatching event 2016-03-08 13:11:22 +01:00
Marc Jansen
8c487d3036 Allow configuration of the test reporter
The reporter for the standard tests is still 'spec'; the one for the
gathering of code coverage is set to 'dot' to not clutter the output
of the logfile on travis.
2016-03-08 11:26:00 +01:00
Frédéric Junod
951b400227 Merge pull request #4988 from openlayers/greenkeeper-phantomjs-prebuilt-2.1.5
Update phantomjs-prebuilt to version 2.1.5 🚀
2016-03-08 08:35:20 +01:00
greenkeeperio-bot
f3479a4bc4 chore(package): update phantomjs-prebuilt to version 2.1.5
http://greenkeeper.io/
2016-03-07 11:31:59 -07:00
Andreas Hocevar
26078e1f34 Merge pull request #4983 from ahocevar/bing-maps-portal-url
Update Bing Maps Portal url
2016-03-07 15:33:34 +01:00
Andreas Hocevar
1cbb482900 Update Bing Maps Portal url 2016-03-07 14:52:14 +01:00
Frédéric Junod
a3d7a216d5 Merge pull request #4981 from fredj/dispose_viewport
Remove the viewport on map dispose
2016-03-07 12:10:11 +01:00
Frederic Junod
263f5bb8ab Remove the viewport on map dispose 2016-03-07 11:46:18 +01:00
Frédéric Junod
44de935ef0 Merge pull request #4980 from fredj/unused_require
Remove unused goog.require
2016-03-07 09:59:29 +01:00
Frederic Junod
8b95602211 Remove unused goog.require 2016-03-07 09:33:15 +01:00
Marc Jansen
dc2faea5eb Merge pull request #4977 from marcjansen/length-tests
Add basic tests for ol.geom.flat.length methods
2016-03-07 09:28:42 +01:00
Marc Jansen
2113c749b1 Add basic tests for ol.geom.flat.length methods 2016-03-06 15:08:40 +01:00
Andreas Hocevar
7fe1d1d68c Merge pull request #4973 from openlayers/greenkeeper-eslint-2.3.0
Update eslint to version 2.3.0 🚀
2016-03-05 07:38:29 +01:00
greenkeeperio-bot
bfb73c992e chore(package): update eslint to version 2.3.0
http://greenkeeper.io/
2016-03-04 17:57:19 -07:00
Andreas Hocevar
f1fee79ca4 Merge pull request #4971 from openlayers/release-v3.14.2
Release v3.14.2
2016-03-04 09:36:58 +01:00
Tim Schaub
82020bcd1f Merge pull request #4970 from tschaub/disposable-tests
Tests for ol.Disposable.
2016-03-03 09:35:29 -07:00
Frédéric Junod
258765dc48 Merge pull request #4967 from fredj/missing_goog.inherits
Add missing goog.inherits for ol.render.canvas.Immediate
2016-03-03 17:26:13 +01:00
Tim Schaub
787e5d4dbf Assert that map renderer is a disposable 2016-03-03 09:18:04 -07:00
Frederic Junod
3793bb18ae Add missing goog.inherits for ol.render.canvas.Immediate 2016-03-03 17:12:19 +01:00
Tim Schaub
167ee487d6 Assert that render box is a disposable 2016-03-03 09:05:08 -07:00
Tim Schaub
beb80ce987 Assert that event target is a disposable 2016-03-03 09:05:08 -07:00
Tim Schaub
0ab9dd8bd0 Tests for ol.Disposable 2016-03-03 09:05:02 -07:00
Frédéric Junod
9ba059a159 Merge pull request #4955 from fredj/ie_xml_workaround
Remove IE workarounds in src/ol/xml.js
2016-03-03 15:59:14 +01:00
Frederic Junod
7da7cba812 Don't use goog.dom.xml.createDocument
Use DOMImplementation.createDocument instead, available for IE >= 9
2016-03-03 15:46:29 +01:00
Frederic Junod
b09f7e30b2 Get rid of goog.dom.xml.serialize
Use XMLSerializer.serializeToString() function instead, available for IE >= 9
2016-03-03 15:46:29 +01:00
Frederic Junod
57f7811cd0 Remove ol.xml.isNode workaround for IE 2016-03-03 15:46:29 +01:00
Frederic Junod
90b4eea1cd Remove ol.xml.isDocument workaround for IE 2016-03-03 15:46:29 +01:00
Frederic Junod
544de3b91c Remove ol.xml.setAttributeNS workaround for IE 2016-03-03 15:46:29 +01:00
Frederic Junod
811eea0d3a Remove ol.xml.getAttributeNodeNS workaround for IE 2016-03-03 15:46:29 +01:00
Frederic Junod
e210328dba Remove ol.xml.getAttributeNS workaround for IE 2016-03-03 15:46:29 +01:00
Frederic Junod
1e98f1227b Remove ol.xml.createElementNS workaround for IE 2016-03-03 15:46:29 +01:00
Frederic Junod
b87a912ecc Remove ol.xml.getLocalName workaround for IE
This property is available for IE >= 9
2016-03-03 15:46:29 +01:00
Andreas Hocevar
750a01aa80 Merge pull request #4960 from ahocevar/clip-rendered
Simplify clipping of lower resolution regions
2016-03-03 15:44:47 +01:00
Tim Schaub
143af1e091 Merge pull request #4950 from tschaub/dispose
Remove use of goog.Disposable().
2016-03-03 07:44:39 -07:00
Tim Schaub
e1f0e8d75b No need for ol.webgl.Context to be an event target 2016-03-03 07:28:34 -07:00
Tim Schaub
2f9d4e68eb Unregister all listeners on the WebGL context's canvas 2016-03-03 07:26:45 -07:00
Frederic Junod
4eb6997be9 Remove undefined parameters to ol.format.WMSGetFeatureInfo#readFeatures_
`this.featureType` and `this.featureNS` are not defined in `ol.format.WMSGetFeatureInfo`
2016-03-03 09:38:18 +01:00
Tim Schaub
afb64ed2bf Make ol.webgl.Context an ol.events.EventTarget 2016-03-02 16:32:25 -07:00
Tim Schaub
71faef3dfd One fewer anonymous function 2016-03-02 15:44:07 -07:00
Tim Schaub
09eee46822 Use ol.Disposable instead of goog.Disposable 2016-03-02 15:44:07 -07:00
Tim Schaub
ae4d8195c0 Remove use of goog.dispose() 2016-03-02 15:44:06 -07:00
Tim Schaub
df4f154a93 Unused goog.dispose requires 2016-03-02 15:44:06 -07:00
Tim Schaub
34d8d77344 Merge pull request #4963 from tschaub/xhr-failures
Handle more XHR errors in the TileJSON source
2016-03-02 15:40:43 -07:00
Tim Schaub
c9852250e4 Merge pull request #4962 from tschaub/untestable
Skip tests where features are not available
2016-03-02 15:21:36 -07:00
Tim Schaub
1877910b7e Handle more XHR errors in the TileJSON source 2016-03-02 14:42:28 -07:00
Tim Schaub
9c594bc997 Use where function in MVT tests 2016-03-02 13:22:33 -07:00
Tim Schaub
1925e39b69 Allow tests to be ignored by feature 2016-03-02 13:20:37 -07:00
Andreas Hocevar
0c8bec2126 Merge pull request #4956 from jonataswalker/fix-layout-examples
Fix Examples layout page
2016-03-02 19:09:42 +01:00
jonataswalker
8b2259bf25 Fix Examples layout page 2016-03-02 14:37:19 -03:00
Andreas Hocevar
8ba04ac77a Simplify clipping of lower resolution regions 2016-03-02 15:54:06 +01:00
Frédéric Junod
f6f22b155c Merge pull request #4958 from fredj/stop_wheel_events
Stop wheel events instead of DOMMouseScroll events
2016-03-02 15:36:38 +01:00
Frederic Junod
2cb48d3d62 Stop wheel events instead of DOMMouseScroll events 2016-03-02 15:25:22 +01:00
Tim Schaub
e3b88b8785 Merge pull request #4947 from tschaub/pixelworks
IE support for ol.source.Raster.
2016-03-01 15:13:48 -07:00
Tim Schaub
efdc892219 Run ol.source.Raster tests in Phantom 2016-03-01 13:50:31 -07:00
Tim Schaub
5aa175241a No need to check for ImageData constructor in the tests 2016-03-01 13:43:55 -07:00
Tim Schaub
bc01fdb59a Return ImageData-like objects for IE support 2016-03-01 13:34:50 -07:00
Tim Schaub
66f23c1aed Upgrade to pixelworks@1.1.0 2016-03-01 13:34:50 -07:00
Andreas Hocevar
4cebe3d92b Merge pull request #4944 from openlayers/greenkeeper-resemblejs-2.2.0
Update resemblejs to version 2.2.0 🚀
2016-03-01 17:58:34 +01:00
greenkeeperio-bot
ad0a13ebb2 chore(package): update resemblejs to version 2.2.0
http://greenkeeper.io/
2016-03-01 06:46:51 -07:00
Frédéric Junod
e8e5dc6332 Merge pull request #4942 from fredj/unused_example_data
Remove unused files in examples/data/
2016-03-01 12:43:58 +01:00
Frederic Junod
f271fdb993 Remove unused files in examples/data/ 2016-03-01 12:26:06 +01:00
Frédéric Junod
fbbbcf5cdb Merge pull request #4805 from fredj/cacheSize
Add new cacheSize option to ol.source
2016-03-01 10:46:00 +01:00
Andreas Hocevar
9fe2970fb3 Merge pull request #4940 from openlayers/release-v3.14.1
Release v3.14.1
2016-03-01 10:20:50 +01:00
Andreas Hocevar
fbb3ffc9e5 Merge pull request #4939 from ahocevar/clip-opacity
Fix rendering of opaque layers with opacity != 1
2016-03-01 09:43:24 +01:00
Frederic Junod
9819aa38f5 Remove ol.DEFAULT_TILE_CACHE_HIGH_WATER_MARK 2016-03-01 09:05:12 +01:00
Frederic Junod
58d8b290af Add new cacheSize option to ol.source
Option added to:
 - olx.source.BingMapsOptions
 - olx.source.MapQuestOptions
 - olx.source.OSMOptions
 - olx.source.StamenOptions
 - olx.source.TileArcGISRestOptions
 - olx.source.TileImageOptions
 - olx.source.TileJSONOptions
 - olx.source.TileWMSOptions
 - olx.source.VectorTileOptions
 - olx.source.XYZOptions
 - olx.source.WMTSOptions
 - olx.source.ZoomifyOptions
2016-03-01 09:05:12 +01:00
Andreas Hocevar
16f63a7e0c Calculate low resolution tile clipping like current tile position 2016-02-29 21:30:57 +01:00
Andreas Hocevar
23172a3695 Use tile position coordinates for clip geometry outer ring 2016-02-29 21:28:20 +01:00
Andreas Hocevar
8553da6679 Refactor tile position calculation for readability 2016-02-29 21:23:19 +01:00
Andreas Hocevar
8256ff60b6 Consider layer opacity for lower resolution tile clipping 2016-02-29 21:13:31 +01:00
Frédéric Junod
d5fb6dda49 Merge pull request #4938 from fredj/rm_goog.dom.getFirstElementChild
Get rid of goog.dom.getFirstElementChild
2016-02-29 17:13:10 +01:00
Frederic Junod
e9a5fadacc Get rid of goog.dom.getFirstElementChild
Use [firstElementChild](https://developer.mozilla.org/en-US/docs/Web/API/ParentNode/firstElementChild) instead.
2016-02-29 16:59:29 +01:00
Frédéric Junod
8465875b24 Merge pull request #4937 from fredj/rm_goog.json
Get rid of goog.json
2016-02-29 16:56:32 +01:00
Frédéric Junod
41c12bcea9 Merge pull request #4936 from fredj/getfeatureinfo-layers
Remove jquery from getfeatureinfo-layers example
2016-02-29 16:37:46 +01:00
Frederic Junod
cf23d0541c Get rid of goog.json
Use JSON.parse and JSON.stringify instead.
2016-02-29 16:19:32 +01:00
Frederic Junod
aaf03a8fc2 Remove jquery from getfeatureinfo-layers example 2016-02-29 15:32:28 +01:00
Frédéric Junod
5b38eaa116 Merge pull request #4930 from fredj/custom-builds.md
Use ADVANCED instead of ADVANCED_OPTIMIZATIONS
2016-02-29 10:40:19 +01:00
Andreas Hocevar
9b8ab88e41 Merge pull request #4917 from ahocevar/flexible-cluster
Make ol.source.Cluster more flexible by adding a geometryFunction option
2016-02-29 10:40:12 +01:00
Frédéric Junod
3194d0ebd4 Merge pull request #4918 from fredj/canvas_clear
Don't change the canvas size to clear it
2016-02-29 10:40:00 +01:00
Frederic Junod
2a1bc70b97 Don't change the canvas size to clear it 2016-02-29 09:23:42 +01:00
Frederic Junod
2427d0e684 Use ADVANCED instead of ADVANCED_OPTIMIZATIONS 2016-02-29 08:39:54 +01:00
Frédéric Junod
941f220f3d Merge pull request #4923 from xlhomme/patch-1
Update custom-builds.md
2016-02-29 08:37:58 +01:00
Frédéric Junod
50aad8f42d Merge pull request #4929 from openlayers/greenkeeper-clean-css-3.4.10
Update clean-css to version 3.4.10 🚀
2016-02-29 08:26:01 +01:00
greenkeeperio-bot
24069fa7bf chore(package): update clean-css to version 3.4.10
http://greenkeeper.io/
2016-02-29 00:10:03 -07:00
Tim Schaub
0e5dfec3bf Merge pull request #4928 from bjornharrtell/jsts-upgrade2
Upgrade to JSTS 1.0.2 in example
2016-02-28 21:50:13 -07:00
Björn Harrtell
7b6820a012 Upgrade to JSTS 1.0.2 in example 2016-02-28 20:31:44 +01:00
Tim Schaub
a172e04d5b Merge pull request #4927 from bjornharrtell/jsts-upgrade
Upgrade JSTS in example.
2016-02-27 09:01:47 -07:00
Tim Schaub
750830b887 Merge pull request #4809 from fperucic/multpolygon-clone
Fix multipolygon clone.
2016-02-27 09:00:17 -07:00
Fran Peručić
a51e7804b8 added a test 2016-02-27 13:03:19 +01:00
Björn Harrtell
94debcfc3a Upgrade JSTS in example 2016-02-27 09:08:17 +01:00
Andreas Hocevar
c5d3dfd41c Merge pull request #4924 from openlayers/greenkeeper-coveralls-2.11.8
Update coveralls to version 2.11.8 🚀
2016-02-26 21:24:29 +01:00
greenkeeperio-bot
7491b90c30 chore(package): update coveralls to version 2.11.8
http://greenkeeper.io/
2016-02-26 12:40:20 -07:00
xavier lhomme
e3f25ee71f Update custom-builds.md
not sure we should add 
"ol.layer.Heatmap#setRadius",
"ol.layer.Heatmap#setBlur"
but it's work.
2016-02-26 19:45:59 +01:00
Andreas Hocevar
588dd54fb6 Merge pull request #4921 from ahocevar/unlisten-earlier-and-bind-to-target
Unlisten before calling listener and bind to target by default
2016-02-25 18:04:39 +01:00
Andreas Hocevar
00a0f14743 Unlisten before calling listener and bind to target by default 2016-02-25 17:48:15 +01:00
Tim Schaub
ef42267cfe Merge pull request #4868 from sebasbaumh/refreshSource
Allow to refresh a source and reload its data.
2016-02-25 07:15:46 -07:00
Andreas Hocevar
0407e779f9 Make ol.source.Cluster more flexible by adding a geometryFunction option 2016-02-25 15:02:41 +01:00
Frédéric Junod
78d6d5ab1b Merge pull request #4903 from fredj/rm_goog.style.getRelativePosition
Remove use of goog.style.getRelativePosition
2016-02-25 14:29:34 +01:00
Frédéric Junod
fa180cfa13 Merge pull request #4902 from fredj/getBoundingClientRect
Remove use of goog.style.getClientPosition
2016-02-25 11:05:56 +01:00
Frédéric Junod
d190d27534 Merge pull request #4916 from fredj/writeFeatureObject_return
Fix ol.format.GeoJSON#writeFeatureObject return type
2016-02-25 10:22:28 +01:00
Frederic Junod
916127d8f6 Fix ol.format.GeoJSON#writeFeatureObject return type 2016-02-25 10:09:37 +01:00
Frédéric Junod
7583d8d434 Merge pull request #4909 from fredj/dom_vector_clear
Add ol.renderer.dom.VectorLayer#clearFrame
2016-02-25 10:08:14 +01:00
Frédéric Junod
b19aa01b72 Merge pull request #4915 from fredj/object
Use {} instead of Object
2016-02-25 09:51:12 +01:00
Frederic Junod
148ef7afef Use {} instead of Object
We probably have these to trick the compiler but it's not needed anymore
2016-02-25 09:15:33 +01:00
Frédéric Junod
5ad42f3b25 Merge pull request #4914 from sebasbaumh/exportEquivalent
Export ol.proj.equivalent
2016-02-25 08:55:35 +01:00
Sebastian Baumhekel
33bcd7194f Export ol.proj.equivalent
The function ol.proj.equivalent is used for comparing two projections,
but not exposed publicly. It should be accessible using a public API to
be able to compare projections in the same way as OpenLayers does.

A test for the ol.proj.equivalent function itself already exists in
https://github.com/openlayers/ol3/blob/master/test/spec/ol/proj/proj.test.js

github issue #4913
2016-02-25 08:40:56 +01:00
Frederic Junod
edf2096b1b Remove use of goog.style.getClientPosition
Use Element.getBoundingClientRect() instead.
2016-02-25 08:36:40 +01:00
Sebastian Baumhekel
7fcf2650ee Allow to refresh a source and reload its data.
Provide an API to refresh a source and reload its data in an associated
layer, as for example already loaded tiles in a ol.source.Tile source
are not refreshed. Additionally a test for the new
ol.source.Source.refresh() function is provided.

Currently internal state is not cleaned up, e.g. already loaded tiles
in a `ol.source.Tile` source are still cached and not reloaded at all.

github issue #4867 (https://github.com/openlayers/ol3/issues/4867)
2016-02-25 08:05:56 +01:00
Frederic Junod
81e563b2b3 Remove use of goog.style.getRelativePosition
Use Element.getBoundingClientRect() and Event.clientX/Event.clientY instead.
2016-02-24 17:28:46 +01:00
Frédéric Junod
68088341d6 Merge pull request #4908 from fredj/rm_goog.math.Rect
Remove use of goog.math.Rect
2016-02-24 17:15:44 +01:00
Frederic Junod
348f61951c Add ol.renderer.dom.VectorLayer#clearFrame 2016-02-24 16:13:35 +01:00
Frederic Junod
48064306a1 Remove use of goog.math.Rect 2016-02-24 14:32:58 +01:00
Frederic Junod
373393dce7 Add missing 'private' jsdoc tag 2016-02-24 14:32:57 +01:00
Frédéric Junod
bd5c85acc3 Merge pull request #4900 from fredj/ol.format.XML_struct
Make ol.format.XML a @struct
2016-02-24 14:24:39 +01:00
Frédéric Junod
8a6afb3836 Merge pull request #4880 from openlayers/greenkeeper-closure-util-1.11.0
Update closure-util to version 1.11.0 🚀
2016-02-24 14:18:01 +01:00
Frédéric Junod
d8d7ae8e1b Merge pull request #4905 from fredj/rm_goog.style.setPosition
Remove use of goog.style.setPosition
2016-02-24 14:17:36 +01:00
Frederic Junod
805b81cea7 Remove use of goog.style.setPosition
Use element.style.left and element.style.top instead
2016-02-24 12:23:10 +01:00
Frédéric Junod
514243a8e9 Merge pull request #4879 from openlayers/greenkeeper-metalsmith-layouts-1.6.4
Update metalsmith-layouts to version 1.6.4 🚀
2016-02-24 12:05:02 +01:00
Andreas Hocevar
37113837d1 Merge pull request #4901 from openlayers/release-v3.14.0
Release v3.14.0
2016-02-24 09:53:01 +01:00
Frédéric Junod
8395bea72d Merge pull request #4899 from fredj/srsName
Use ol.format.GMLBase#srsName instead of undeclared srsName_
2016-02-24 09:43:49 +01:00
Frederic Junod
ac17a2f2a7 Make ol.format.XML a @struct
And replace the undeclared `this.version` by a local variable.
2016-02-24 09:25:41 +01:00
Frederic Junod
a365f185cc Use ol.format.GMLBase#srsName instead of undeclared srsName_
The variable was changed from private to protected in 8182396
2016-02-24 09:20:22 +01:00
greenkeeperio-bot
7e7d8ac4e2 chore(package): update closure-util to version 1.11.0
- Remove closure-util.json, we're now using the same library version as closure-util
 - Disable analyzerChecks errors from closure-compiler
 - Remove WheelEvent constants from externs (fixed upstream)
 - Activate the unnecessaryCasts compiler check
2016-02-24 09:02:25 +01:00
greenkeeperio-bot
345763fcd3 chore(package): update metalsmith-layouts to version 1.6.4
http://greenkeeper.io/
2016-02-23 08:50:58 +01:00
Fran Peručić
b46cc5a241 fix multipolygon clone 2016-02-10 15:06:00 +01:00
513 changed files with 13172 additions and 6242 deletions

View File

@@ -3,7 +3,7 @@ sudo: false
language: node_js
node_js:
- "4"
- "6"
cache:
directories:

View File

@@ -11,14 +11,6 @@ The Travis CI hook is enabled on the Github repository. This means every pull re
is run through a full test suite to ensure it compiles and passes the tests. Failing
pull requests will not be merged.
Although not mandatory, it is also recommended to set up Travis CI for your ol3 fork.
For that go to your ol3 fork's Service Hooks page and set up the Travis hook.
Then every time you push to your fork, the test suite will be run. This means
errors can be caught before creating a pull request. For those making
small or occasional contributions, this may be enough to check that your contributions
are ok; in this case, you do not need to install the build tools on your local environment
as described below.
### Development dependencies
The minimum requirements are:

View File

@@ -119,8 +119,7 @@ examples: $(BUILD_EXAMPLES)
install: build/timestamps/node-modules-timestamp
.PHONY: lint
lint: build/timestamps/eslint-timestamp \
build/timestamps/check-requires-timestamp
lint: build/timestamps/eslint-timestamp
.PHONY: npm-install
npm-install: build/timestamps/node-modules-timestamp
@@ -184,13 +183,6 @@ build/timestamps/check-%-timestamp: $(BUILD_HOSTED)/examples/%.html \
./node_modules/.bin/phantomjs --local-to-remote-url-access=true --ssl-protocol=any --ignore-ssl-errors=true bin/check-example.js $<
@touch $@
build/timestamps/check-requires-timestamp: $(SRC_JS) $(EXAMPLES_JS) \
$(SRC_SHADER_JS) $(SPEC_JS) \
$(SPEC_RENDERING_JS)
@mkdir -p $(@D)
@python bin/check-requires.py $(CLOSURE_LIB) $^
@touch $@
build/compiled-examples/all.js: $(EXAMPLES_JS)
@mkdir -p $(@D)
@python bin/combine-examples.py $^ > $@
@@ -219,7 +211,7 @@ build/timestamps/jsdoc-$(BRANCH)-timestamp: config/jsdoc/api/index.md \
build/timestamps/node-modules-timestamp
@mkdir -p $(@D)
@rm -rf $(BUILD_HOSTED)/apidoc
./node_modules/.bin/jsdoc config/jsdoc/api/index.md -c config/jsdoc/api/conf.json -d $(BUILD_HOSTED)/apidoc
./node_modules/.bin/jsdoc config/jsdoc/api/index.md -c config/jsdoc/api/conf.json --package package.json -d $(BUILD_HOSTED)/apidoc
@touch $@
$(BUILD_HOSTED_EXAMPLES_JS): $(BUILD_HOSTED)/examples/%.js: build/examples/%.js

View File

@@ -1,193 +0,0 @@
import os
import logging
import re
import sys
logging.basicConfig(format='%(asctime)s %(name)s: %(message)s',
level=logging.INFO)
logger = logging.getLogger('check-requires')
class Node(object):
def __init__(self):
self.present = False
self.children = {}
def _build_re(self, key):
if key == '*':
assert len(self.children) == 0
# We want to match `.doIt` but not `.SomeClass` or `.more.stuff`
return '(?=\\.[a-z]\\w*\\b(?!\\.))'
elif len(self.children) == 1:
child_key, child = next(self.children.iteritems())
child_re = child._build_re(child_key)
if child_key != '*':
child_re = '\\.' + child_re
if self.present:
return key + '(' + child_re + ')?'
else:
return key + child_re
elif self.children:
children_re = '(?:' + '|'.join(
('\\.' if k != '*' else '') + self.children[k]._build_re(k)
for k in sorted(self.children.keys())) + ')'
if self.present:
return key + children_re + '?'
else:
return key + children_re
else:
assert self.present
return key
def build_re(self, key):
return re.compile('\\b' + self._build_re(key) + '\\b')
def ifind(*paths):
"""ifind is an iterative version of os.walk, yielding all walked paths and
normalizing paths to use forward slashes."""
for path in paths:
for dirpath, dirnames, names in os.walk(path):
for name in names:
if os.sep == '/':
yield os.path.join(dirpath, name)
else:
yield '/'.join(dirpath.split(os.sep) + [name])
def _strip_comments(lines):
# FIXME this is a horribe hack, we should use a proper JavaScript parser
# here
in_multiline_comment = False
lineno = 0
for line in lines:
lineno += 1
if in_multiline_comment:
index = line.find('*/')
if index != -1:
in_multiline_comment = False
line = line[index + 2:]
if not in_multiline_comment:
line = re.sub(r'//[^\n]*', '', line)
line = re.sub(r'/\*.*?\*/', '', line)
index = line.find('/*')
if index != -1:
yield lineno, line[:index]
in_multiline_comment = True
else:
yield lineno, line
def check_requires(closure_lib, *filenames):
unused_count = 0
all_provides = set()
for filename in ifind(closure_lib):
if filename.endswith('.js'):
if not re.match(r'.*/closure/goog/', filename):
continue
# Skip goog.i18n because it contains so many modules that it causes
# the generated regular expression to exceed Python's limits
if re.match(r'.*/closure/goog/i18n/', filename):
continue
for line in open(filename, 'rU'):
m = re.match(r'goog.provide\(\'(.*)\'\);', line)
if m:
all_provides.add(m.group(1))
for filename in sorted(filenames):
require_linenos = {}
uses = set()
lines = open(filename, 'rU').readlines()
for lineno, line in _strip_comments(lines):
m = re.match(r'goog.provide\(\'(.*)\'\);', line)
if m:
all_provides.add(m.group(1))
continue
m = re.match(r'goog.require\(\'(.*)\'\);', line)
if m:
require_linenos[m.group(1)] = lineno
continue
ignore_linenos = require_linenos.values()
for lineno, line in enumerate(lines):
if lineno in ignore_linenos:
continue
for require in require_linenos.iterkeys():
if require in line:
uses.add(require)
for require in sorted(set(require_linenos.keys()) - uses):
logger.info('%s:%d: unused goog.require: %r' % (
filename, require_linenos[require], require))
unused_count += 1
all_provides.discard('ol')
all_provides.discard('ol.MapProperty')
root = Node()
for provide in all_provides:
node = root
for component in provide.split('.'):
if component not in node.children:
node.children[component] = Node()
node = node.children[component]
if component[0].islower():
# We've arrived at a namespace provide like `ol.foo`.
# In this case, we want to match uses like `ol.foo.doIt()` but
# not match things like `new ol.foo.SomeClass()`.
# For this purpose, we use the special wildcard key for the child.
node.children['*'] = Node()
else:
node.present = True
provide_res = [child.build_re(key)
for key, child in root.children.iteritems()]
missing_count = 0
for filename in sorted(filenames):
provides = set()
requires = set()
uses = set()
uses_linenos = {}
for lineno, line in _strip_comments(open(filename, 'rU')):
m = re.match(r'goog.provide\(\'(.*)\'\);', line)
if m:
provides.add(m.group(1))
continue
m = re.match(r'goog.require\(\'(.*)\'\);', line)
if m:
requires.add(m.group(1))
continue
while True:
for provide_re in provide_res:
m = provide_re.search(line)
if m:
uses.add(m.group())
uses_linenos[m.group()] = lineno
line = line[:m.start()] + line[m.end():]
break
else:
break
if filename == 'src/ol/renderer/layerrenderer.js':
uses.discard('ol.renderer.Map')
m = re.match(
r'src/ol/renderer/(\w+)/\1(\w*)layerrenderer\.js\Z', filename)
if m:
uses.discard('ol.renderer.Map')
uses.discard('ol.renderer.%s.Map' % (m.group(1),))
missing_requires = uses - requires - provides
if missing_requires:
for missing_require in sorted(missing_requires):
logger.info("%s:%d missing goog.require('%s')" %
(filename, uses_linenos[missing_require],
missing_require))
missing_count += 1
return (unused_count, missing_count)
if __name__ == "__main__":
unused_count, missing_count = check_requires(*sys.argv[1:])
if unused_count > 0 or missing_count > 0:
logger.error('%d unused goog.requires, %d missing goog.requires' %
(unused_count, missing_count))
sys.exit(1)

View File

@@ -1,5 +1,127 @@
## Upgrade notes
### v3.17.0
#### `ol.source.MapQuest` removal
Because of changes at MapQuest (see: https://lists.openstreetmap.org/pipermail/talk/2016-June/076106.html) we had to remove the MapQuest source for now (see https://github.com/openlayers/ol3/issues/5484 for details).
#### `ol.interaction.ModifyEvent` changes
The event object previously had a `mapBrowserPointerEvent` property, which has been renamed to `mapBrowserEvent`.
#### Removal of ol.raster namespace
Users compiling their code with the library and using types in the `ol.raster` namespace should note that this has now been removed. `ol.raster.Pixel` has been deleted, and the other types have been renamed as follows, and your code may need changing if you use these:
* `ol.raster.Operation` to `ol.RasterOperation`
* `ol.raster.OperationType` to `ol.RasterOperationType`
#### All typedefs now in ol namespace
Users compiling their code with the library should note that the following typedefs have been renamed; your code may need changing if you use these:
* ol.events.ConditionType to ol.EventsConditionType
* ol.events.EventTargetLike to ol.EventTargetLike
* ol.events.Key to ol.EventsKey
* ol.events.ListenerFunctionType to ol.EventsListenerFunctionType
* ol.interaction.DragBoxEndConditionType to ol.DragBoxEndConditionType
* ol.interaction.DrawGeometryFunctionType to ol.DrawGeometryFunctionType
* ol.interaction.SegmentDataType to ol.ModifySegmentDataType
* ol.interaction.SelectFilterFunction to ol.SelectFilterFunction
* ol.interaction.SnapResultType to ol.SnapResultType
* ol.interaction.SnapSegmentDataType to ol.SnapSegmentDataType
* ol.proj.ProjectionLike to ol.ProjectionLike
* ol.style.AtlasBlock to ol.AtlasBlock
* ol.style.AtlasInfo to ol.AtlasInfo
* ol.style.AtlasManagerInfo to ol.AtlasManagerInfo
* ol.style.CircleRenderOptions to ol.CircleRenderOptions
* ol.style.ImageOptions to ol.StyleImageOptions
* ol.style.GeometryFunction to ol.StyleGeometryFunction
* ol.style.RegularShapeRenderOptions to ol.RegularShapeRenderOptions
* ol.style.StyleFunction to ol.StyleFunction
### v3.16.0
#### Rendering change for tile sources
Previously, if you called `source.setUrl()` on a tile source, all currently rendered tiles would be cleared before new tiles were loaded and rendered. This clearing of the map is undesirable if you are trying to smoothly update the tiles used by a source. This behavior has now changed, and calling `source.setUrl()` (or `source.setUrls()`) will *not* clear currently rendered tiles before loading and rendering new tiles. Instead, previously rendered tiles remain rendered until new tiles have loaded and can replace them. If you want to achieve the old behavior (render a blank map before loading new tiles), you can call `source.refresh()` or you can replace the old source with a new one (using `layer.setSource()`).
#### Move of typedefs out of code and into separate file
This change should not affect the great majority of application developers, but it's possible there are edge cases when compiling application code together with the library which cause compiler errors or warnings. In this case, please raise a GitHub issue. `goog.require`s for typedefs should not be necessary.
Users compiling their code with the library should note that the following API `@typedef`s have been renamed; your code may need changing if you use these:
* `ol.format.WFS.FeatureCollectionMetadata` to `ol.WFSFeatureCollectionMetadata`
* `ol.format.WFS.TransactionResponse` to `ol.WFSTransactionResponse`
#### Removal of `opaque` option for `ol.source.VectorTile`
This option is no longer needed, so it was removed from the API.
#### XHR loading for `ol.source.TileUTFGrid`
The `ol.source.TileUTFGrid` now uses XMLHttpRequest to load UTFGrid tiles by default. This works out of the box with the v4 Mapbox API. To work with the v3 API, you must use the new `jsonp` option on the source. See the examples below for detail.
```js
// To work with the v4 API
var v4source = new ol.source.TileUTFGrid({
url: 'https://api.tiles.mapbox.com/v4/example.json?access_token=' + YOUR_KEY_HERE
});
// To work with the v3 API
var v3source = new ol.source.TileUTFGrid({
jsonp: true, // <--- this is required for v3
url: 'http://api.tiles.mapbox.com/v3/example.json'
});
```
### v3.15.0
#### Internet Explorer 9 support
As of this release, OpenLayers requires a `classList` polyfill for IE 9 support. See http://cdn.polyfill.io/v2/docs/features#Element_prototype_classList.
#### Immediate rendering API
Listeners for `precompose`, `render`, and `postcompose` receive an event with a `vectorContext` property with methods for immediate vector rendering. The previous geometry drawing methods have been replaced with a single `vectorContext.drawGeometry(geometry)` method. If you were using any of the following experimental methods on the vector context, replace them with `drawGeometry`:
* Removed experimental geometry drawing methods: `drawPointGeometry`, `drawLineStringGeometry`, `drawPolygonGeometry`, `drawMultiPointGeometry`, `drawMultiLineStringGeometry`, `drawMultiPolygonGeometry`, and `drawCircleGeometry` (all have been replaced with `drawGeometry`).
In addition, the previous methods for setting style parts have been replaced with a single `vectorContext.setStyle(style)` method. If you were using any of the following experimental methods on the vector context, replace them with `setStyle`:
* Removed experimental style setting methods: `setFillStrokeStyle`, `setImageStyle`, `setTextStyle` (all have been replaced with `setStyle`).
Below is an example of how the vector context might have been used in the past:
```js
// OLD WAY, NO LONGER SUPPORTED
map.on('postcompose', function(event) {
event.vectorContext.setFillStrokeStyle(style.getFill(), style.getStroke());
event.vectorContext.drawPointGeometry(geometry);
});
```
Here is an example of how you could accomplish the same with the new methods:
```js
// NEW WAY, USE THIS INSTEAD OF THE CODE ABOVE
map.on('postcompose', function(event) {
event.vectorContext.setStyle(style);
event.vectorContext.drawGeometry(geometry);
});
```
A final change to the immediate rendering API is that `vectorContext.drawFeature()` calls are now "immediate" as well. The drawing now occurs synchronously. This means that any `zIndex` in a style passed to `drawFeature()` will be ignored. To achieve `zIndex` ordering, order your calls to `drawFeature()` instead.
#### Removal of `ol.DEFAULT_TILE_CACHE_HIGH_WATER_MARK`
The `ol.DEFAULT_TILE_CACHE_HIGH_WATER_MARK` define has been removed. The size of the cache can now be defined on every tile based `ol.source`:
```js
new ol.layer.Tile({
source: new ol.source.OSM({
cacheSize: 128
})
})
```
The default cache size is `2048`.
### v3.14.0
#### Internet Explorer 9 support

204
changelog/v3.15.0.md Normal file
View File

@@ -0,0 +1,204 @@
# v3.15.0
## Summary
The v3.15.0 release includes features and fixes from 136 pull requests since the v3.14.2 release. New features and improvements include:
* Make ol.source.Cluster more flexible by adding a geometryFunction option (#4917).
* Add new CartoDB tile source (#4926).
* Improved rendering performance for vector layers by batching polygon fill and stroke instructions (#5149).
* Make the tile cache size configurable (#4805).
* Add new ol.geom.Geometry#rotate function (#4984).
* Accept simpler forms of specifying attribution(s) for sources (#5007).
* Support zooming out for ol.interaction.DragZoom (#5031).
## Upgrade notes
### v3.15.0
#### Internet Explorer 9 support
As of this release, OpenLayers requires a `classList` polyfill for IE 9 support. See http://cdn.polyfill.io/v2/docs/features#Element_prototype_classList.
#### Immediate rendering API
Listeners for `precompose`, `render`, and `postcompose` receive an event with a `vectorContext` property with methods for immediate vector rendering. The previous geometry drawing methods have been replaced with a single `vectorContext.drawGeometry(geometry)` method. If you were using any of the following experimental methods on the vector context, replace them with `drawGeometry`:
* Removed experimental geometry drawing methods: `drawPointGeometry`, `drawLineStringGeometry`, `drawPolygonGeometry`, `drawMultiPointGeometry`, `drawMultiLineStringGeometry`, `drawMultiPolygonGeometry`, and `drawCircleGeometry` (all have been replaced with `drawGeometry`).
In addition, the previous methods for setting style parts have been replaced with a single `vectorContext.setStyle(style)` method. If you were using any of the following experimental methods on the vector context, replace them with `setStyle`:
* Removed experimental style setting methods: `setFillStrokeStyle`, `setImageStyle`, `setTextStyle` (all have been replaced with `setStyle`).
Below is an example of how the vector context might have been used in the past:
```js
// OLD WAY, NO LONGER SUPPORTED
map.on('postcompose', function(event) {
event.vectorContext.setFillStrokeStyle(style.getFill(), style.getStroke());
event.vectorContext.drawPointGeometry(geometry);
});
```
Here is an example of how you could accomplish the same with the new methods:
```js
// NEW WAY, USE THIS INSTEAD OF THE CODE ABOVE
map.on('postcompose', function(event) {
event.vectorContext.setStyle(style);
event.vectorContext.drawGeometry(geometry);
});
```
A final change to the immediate rendering API is that `vectorContext.drawFeature()` calls are now "immediate" as well. The drawing now occurs synchronously. This means that any `zIndex` in a style passed to `drawFeature()` will be ignored. To achieve `zIndex` ordering, order your calls to `drawFeature()` instead.
#### Removal of `ol.DEFAULT_TILE_CACHE_HIGH_WATER_MARK`
The `ol.DEFAULT_TILE_CACHE_HIGH_WATER_MARK` define has been removed. The size of the cache can now be defined on every tile based `ol.source`:
```js
new ol.layer.Tile({
source: new ol.source.OSM({
cacheSize: 128
})
})
```
The default cache size is `2048`.
## Full list of changes
* [#4775](https://github.com/openlayers/ol3/pull/4775) - Remove goog.math.modulo and goog.math.lerp ([@nicholas-l](https://github.com/nicholas-l))
* [#5152](https://github.com/openlayers/ol3/pull/5152) - Cartodb cleanup ([@fredj](https://github.com/fredj))
* [#4804](https://github.com/openlayers/ol3/pull/4804) - Use Array.isArray instead of goog.isArray ([@fredj](https://github.com/fredj))
* [#5149](https://github.com/openlayers/ol3/pull/5149) - Batch polygon fill and stroke instructions ([@ahocevar](https://github.com/ahocevar))
* [#5159](https://github.com/openlayers/ol3/pull/5159) - Update eslint to version 2.6.0 🚀 ([@openlayers](https://github.com/openlayers))
* [#5160](https://github.com/openlayers/ol3/pull/5160) - Update clean-css to version 3.4.11 🚀 ([@openlayers](https://github.com/openlayers))
* [#5157](https://github.com/openlayers/ol3/pull/5157) - Improve docs for measure example ([@probins](https://github.com/probins))
* [#5155](https://github.com/openlayers/ol3/pull/5155) - Fix ol.source.Zoomify tests on firefox ([@fredj](https://github.com/fredj))
* [#5086](https://github.com/openlayers/ol3/pull/5086) - Get rid of goog.functions ([@bjornharrtell](https://github.com/bjornharrtell))
* [#5105](https://github.com/openlayers/ol3/pull/5105) - Support minZoom in ol.source.Stamen ([@fredj](https://github.com/fredj))
* [#4926](https://github.com/openlayers/ol3/pull/4926) - Add CartoDB tile source. ([@aisaacs](https://github.com/aisaacs))
* [#5151](https://github.com/openlayers/ol3/pull/5151) - Use fs-extra as fs, remove usage of graceful-fs ([@marcjansen](https://github.com/marcjansen))
* [#5124](https://github.com/openlayers/ol3/pull/5124) - Removed goog.dom.classlist ([@nicholas-l](https://github.com/nicholas-l))
* [#5150](https://github.com/openlayers/ol3/pull/5150) - Use fs-extra instead of wrench ([@fredj](https://github.com/fredj))
* [#5109](https://github.com/openlayers/ol3/pull/5109) - Add some tests for ol.source.TileUTFGrid ([@marcjansen](https://github.com/marcjansen))
* [#5139](https://github.com/openlayers/ol3/pull/5139) - Update closure-util to version 1.13.0 🚀 ([@openlayers](https://github.com/openlayers))
* [#5141](https://github.com/openlayers/ol3/pull/5141) - Reuse dragListenerKeys_ variable in ol.control.ZoomSlider ([@fredj](https://github.com/fredj))
* [#5118](https://github.com/openlayers/ol3/pull/5118) - Remove goog.dom.classlist usage ([@fredj](https://github.com/fredj))
* [#5115](https://github.com/openlayers/ol3/pull/5115) - Clarify that lineDash has no effect in IE 10 and below ([@marcjansen](https://github.com/marcjansen))
* [#5136](https://github.com/openlayers/ol3/pull/5136) - Update eslint to version 2.5.3 🚀 ([@openlayers](https://github.com/openlayers))
* [#5123](https://github.com/openlayers/ol3/pull/5123) - Update coveralls to version 2.11.9 🚀 ([@openlayers](https://github.com/openlayers))
* [#5131](https://github.com/openlayers/ol3/pull/5131) - Update phantomjs-prebuilt to version 2.1.7 🚀 ([@openlayers](https://github.com/openlayers))
* [#5122](https://github.com/openlayers/ol3/pull/5122) - Update browser support info in intro tutorial ([@probins](https://github.com/probins))
* [#5112](https://github.com/openlayers/ol3/pull/5112) - Add decimals option to format write ([@probins](https://github.com/probins))
* [#5120](https://github.com/openlayers/ol3/pull/5120) - Add tileJSON option to ol.source.TileUTFGrid ([@ahocevar](https://github.com/ahocevar))
* [#5119](https://github.com/openlayers/ol3/pull/5119) - Add ol.source.Raster events on API docs page ([@drnextgis](https://github.com/drnextgis))
* [#5116](https://github.com/openlayers/ol3/pull/5116) - Improve examples pages on mobile devices a bit ([@ahocevar](https://github.com/ahocevar))
* [#5113](https://github.com/openlayers/ol3/pull/5113) - Memory leak in ol.control.FullScreen ([@AvatharDG](https://github.com/AvatharDG))
* [#5111](https://github.com/openlayers/ol3/pull/5111) - Remove CSS filter in examples ([@fredj](https://github.com/fredj))
* [#5108](https://github.com/openlayers/ol3/pull/5108) - Remove unused ol.xml.getAttributeNodeNS function ([@fredj](https://github.com/fredj))
* [#5106](https://github.com/openlayers/ol3/pull/5106) - Get rid of goog.math.Vec2 ([@fredj](https://github.com/fredj))
* [#5096](https://github.com/openlayers/ol3/pull/5096) - Add tests for ol.source.Zoomify ([@marcjansen](https://github.com/marcjansen))
* [#5102](https://github.com/openlayers/ol3/pull/5102) - Fix typo in API docs ([@openlayers](https://github.com/openlayers))
* [#5098](https://github.com/openlayers/ol3/pull/5098) - Reintroduce log messages for relevant WebGL assertions ([@bjornharrtell](https://github.com/bjornharrtell))
* [#5094](https://github.com/openlayers/ol3/pull/5094) - FAQ: answer question 4 ([@probins](https://github.com/probins))
* [#5092](https://github.com/openlayers/ol3/pull/5092) - add raster.jsdoc ([@drnextgis](https://github.com/drnextgis))
* [#5081](https://github.com/openlayers/ol3/pull/5081) - Snap to vertices or edges ([@drnextgis](https://github.com/drnextgis))
* [#5090](https://github.com/openlayers/ol3/pull/5090) - Update custom-builds.md ([@probins](https://github.com/probins))
* [#5089](https://github.com/openlayers/ol3/pull/5089) - Test for both transform coords should use roughlyEqual ([@probins](https://github.com/probins))
* [#5080](https://github.com/openlayers/ol3/pull/5080) - Fix geojson write GeometryCollection ([@probins](https://github.com/probins))
* [#5088](https://github.com/openlayers/ol3/pull/5088) - DEVELOPING.md: remove section on running Travis on fork ([@probins](https://github.com/probins))
* [#5087](https://github.com/openlayers/ol3/pull/5087) - assertion to check that there's a DOM node for target element ([@drnextgis](https://github.com/drnextgis))
* [#5069](https://github.com/openlayers/ol3/pull/5069) - Update jquery to version 2.2.2 🚀 ([@openlayers](https://github.com/openlayers))
* [#5083](https://github.com/openlayers/ol3/pull/5083) - Remove unnecessary lineTo calls in immediate polygon rendering ([@tschaub](https://github.com/tschaub))
* [#5082](https://github.com/openlayers/ol3/pull/5082) - Get rid of goog.log. ([@bjornharrtell](https://github.com/bjornharrtell))
* [#5079](https://github.com/openlayers/ol3/pull/5079) - Correcting a typo in the upgrade notes ([@tschaub](https://github.com/tschaub))
* [#5076](https://github.com/openlayers/ol3/pull/5076) - Update phantomjs-prebuilt to version 2.1.6 🚀 ([@openlayers](https://github.com/openlayers))
* [#5077](https://github.com/openlayers/ol3/pull/5077) - Make immediate API uniformly synchronous. ([@tschaub](https://github.com/tschaub))
* [#5072](https://github.com/openlayers/ol3/pull/5072) - Add setStyle() and drawGeometry() to the immediate rendering API. ([@tschaub](https://github.com/tschaub))
* [#5074](https://github.com/openlayers/ol3/pull/5074) - Do not rotate map canvas after composition ([@ahocevar](https://github.com/ahocevar))
* [#5071](https://github.com/openlayers/ol3/pull/5071) - correct way to determine freehand mode is enabled ([@drnextgis](https://github.com/drnextgis))
* [#5066](https://github.com/openlayers/ol3/pull/5066) - Add more getters to ol.source.Vector ([@bartvde](https://github.com/bartvde))
* [#5064](https://github.com/openlayers/ol3/pull/5064) - Fix inconsistency in geom docs ([@probins](https://github.com/probins))
* [#5063](https://github.com/openlayers/ol3/pull/5063) - Remove inappropriate information from API docs ([@drnextgis](https://github.com/drnextgis))
* [#5061](https://github.com/openlayers/ol3/pull/5061) - Remove redundant required option ([@drnextgis](https://github.com/drnextgis))
* [#5058](https://github.com/openlayers/ol3/pull/5058) - Note in docs that DOM renderer can also render vectors ([@probins](https://github.com/probins))
* [#5056](https://github.com/openlayers/ol3/pull/5056) - Note in docs that WebGL can render points ([@probins](https://github.com/probins))
* [#5055](https://github.com/openlayers/ol3/pull/5055) - Fix cruft on kml scale output ([@probins](https://github.com/probins))
* [#5051](https://github.com/openlayers/ol3/pull/5051) - Handle aborted tiles in ol.TileQueue ([@fredj](https://github.com/fredj))
* [#5049](https://github.com/openlayers/ol3/pull/5049) - Supported browsers all have getComputedStyle ([@marcjansen](https://github.com/marcjansen))
* [#5048](https://github.com/openlayers/ol3/pull/5048) - Add tests for ol.dom methods ([@marcjansen](https://github.com/marcjansen))
* [#5031](https://github.com/openlayers/ol3/pull/5031) - support zooming out for ol.interaction.DragZoom ([@drnextgis](https://github.com/drnextgis))
* [#5036](https://github.com/openlayers/ol3/pull/5036) - Use imgSize when provided ([@ahocevar](https://github.com/ahocevar))
* [#5020](https://github.com/openlayers/ol3/pull/5020) - Update gaze to version 1.0.0 🚀 ([@openlayers](https://github.com/openlayers))
* [#5039](https://github.com/openlayers/ol3/pull/5039) - Update fs-extra to version 0.26.6 🚀 ([@openlayers](https://github.com/openlayers))
* [#5033](https://github.com/openlayers/ol3/pull/5033) - Document GPX geometry output types ([@probins](https://github.com/probins))
* [#5024](https://github.com/openlayers/ol3/pull/5024) - Resize the map canvas less aggressively ([@ahocevar](https://github.com/ahocevar))
* [#5000](https://github.com/openlayers/ol3/pull/5000) - Remove use of goog.math.Size and goog.style.setBorderBoxSize ([@fredj](https://github.com/fredj))
* [#5027](https://github.com/openlayers/ol3/pull/5027) - Clarify default value of featureProjection on geometry write ([@probins](https://github.com/probins))
* [#5019](https://github.com/openlayers/ol3/pull/5019) - Update eslint to version 2.4.0 🚀 ([@openlayers](https://github.com/openlayers))
* [#5016](https://github.com/openlayers/ol3/pull/5016) - Add basic tests for ol.geom.flat.center ([@marcjansen](https://github.com/marcjansen))
* [#5015](https://github.com/openlayers/ol3/pull/5015) - Update proj4 to version 2.3.14 🚀 ([@openlayers](https://github.com/openlayers))
* [#5013](https://github.com/openlayers/ol3/pull/5013) - Fix typo in test description ([@openlayers](https://github.com/openlayers))
* [#5007](https://github.com/openlayers/ol3/pull/5007) - Accept simpler forms of specifying attribution(s) for sources. ([@marcjansen](https://github.com/marcjansen))
* [#5011](https://github.com/openlayers/ol3/pull/5011) - Add missing setProjection function to ol.VectorTile API ([@ahocevar](https://github.com/ahocevar))
* [#5010](https://github.com/openlayers/ol3/pull/5010) - Add and fix API docs for ol.events.Event stack ([@ahocevar](https://github.com/ahocevar))
* [#5009](https://github.com/openlayers/ol3/pull/5009) - Update tutorials ([@gberaudo](https://github.com/gberaudo))
* [#5006](https://github.com/openlayers/ol3/pull/5006) - Use the maintained slimerjs package ([@ahocevar](https://github.com/ahocevar))
* [#5003](https://github.com/openlayers/ol3/pull/5003) - Add 'function' jsdoc tag to ol.geom.Geometry#rotate ([@fredj](https://github.com/fredj))
* [#5002](https://github.com/openlayers/ol3/pull/5002) - Update eslint-config-openlayers to version 4.1.0 🚀 ([@openlayers](https://github.com/openlayers))
* [#4999](https://github.com/openlayers/ol3/pull/4999) - Remove use of goog.dom.removeNode ([@fredj](https://github.com/fredj))
* [#4990](https://github.com/openlayers/ol3/pull/4990) - Add new ol.source.TileJSON#getTileJSON function ([@fredj](https://github.com/fredj))
* [#4998](https://github.com/openlayers/ol3/pull/4998) - Remove unused ol.Map#isDef function ([@fredj](https://github.com/fredj))
* [#4995](https://github.com/openlayers/ol3/pull/4995) - Remove unused ol.color functions. ([@tschaub](https://github.com/tschaub))
* [#4991](https://github.com/openlayers/ol3/pull/4991) - Do not remove listeners while dispatching event ([@ahocevar](https://github.com/ahocevar))
* [#4984](https://github.com/openlayers/ol3/pull/4984) - Add new ol.geom.Geometry#rotate function ([@fredj](https://github.com/fredj))
* [#4994](https://github.com/openlayers/ol3/pull/4994) - Add alpha default value to ol.Color array form ([@jonataswalker](https://github.com/jonataswalker))
* [#4992](https://github.com/openlayers/ol3/pull/4992) - Allow configuration of the test reporter ([@marcjansen](https://github.com/marcjansen))
* [#4988](https://github.com/openlayers/ol3/pull/4988) - Update phantomjs-prebuilt to version 2.1.5 🚀 ([@openlayers](https://github.com/openlayers))
* [#4983](https://github.com/openlayers/ol3/pull/4983) - Update Bing Maps Portal url ([@ahocevar](https://github.com/ahocevar))
* [#4981](https://github.com/openlayers/ol3/pull/4981) - Remove the viewport on map dispose ([@fredj](https://github.com/fredj))
* [#4980](https://github.com/openlayers/ol3/pull/4980) - Remove unused goog.require ([@fredj](https://github.com/fredj))
* [#4977](https://github.com/openlayers/ol3/pull/4977) - Add basic tests for ol.geom.flat.length methods ([@marcjansen](https://github.com/marcjansen))
* [#4973](https://github.com/openlayers/ol3/pull/4973) - Update eslint to version 2.3.0 🚀 ([@openlayers](https://github.com/openlayers))
* [#4971](https://github.com/openlayers/ol3/pull/4971) - Release v3.14.2 ([@openlayers](https://github.com/openlayers))
* [#4970](https://github.com/openlayers/ol3/pull/4970) - Tests for ol.Disposable. ([@tschaub](https://github.com/tschaub))
* [#4967](https://github.com/openlayers/ol3/pull/4967) - Add missing goog.inherits for ol.render.canvas.Immediate ([@fredj](https://github.com/fredj))
* [#4955](https://github.com/openlayers/ol3/pull/4955) - Remove IE workarounds in src/ol/xml.js ([@fredj](https://github.com/fredj))
* [#4960](https://github.com/openlayers/ol3/pull/4960) - Simplify clipping of lower resolution regions ([@ahocevar](https://github.com/ahocevar))
* [#4950](https://github.com/openlayers/ol3/pull/4950) - Remove use of goog.Disposable(). ([@tschaub](https://github.com/tschaub))
* [#4963](https://github.com/openlayers/ol3/pull/4963) - Handle more XHR errors in the TileJSON source ([@tschaub](https://github.com/tschaub))
* [#4962](https://github.com/openlayers/ol3/pull/4962) - Skip tests where features are not available ([@tschaub](https://github.com/tschaub))
* [#4956](https://github.com/openlayers/ol3/pull/4956) - Fix Examples layout page ([@jonataswalker](https://github.com/jonataswalker))
* [#4958](https://github.com/openlayers/ol3/pull/4958) - Stop wheel events instead of DOMMouseScroll events ([@fredj](https://github.com/fredj))
* [#4947](https://github.com/openlayers/ol3/pull/4947) - IE support for ol.source.Raster. ([@tschaub](https://github.com/tschaub))
* [#4944](https://github.com/openlayers/ol3/pull/4944) - Update resemblejs to version 2.2.0 🚀 ([@openlayers](https://github.com/openlayers))
* [#4942](https://github.com/openlayers/ol3/pull/4942) - Remove unused files in examples/data/ ([@fredj](https://github.com/fredj))
* [#4805](https://github.com/openlayers/ol3/pull/4805) - Add new cacheSize option to ol.source ([@fredj](https://github.com/fredj))
* [#4940](https://github.com/openlayers/ol3/pull/4940) - Release v3.14.1 ([@openlayers](https://github.com/openlayers))
* [#4939](https://github.com/openlayers/ol3/pull/4939) - Fix rendering of opaque layers with opacity != 1 ([@ahocevar](https://github.com/ahocevar))
* [#4938](https://github.com/openlayers/ol3/pull/4938) - Get rid of goog.dom.getFirstElementChild ([@fredj](https://github.com/fredj))
* [#4937](https://github.com/openlayers/ol3/pull/4937) - Get rid of goog.json ([@fredj](https://github.com/fredj))
* [#4936](https://github.com/openlayers/ol3/pull/4936) - Remove jquery from getfeatureinfo-layers example ([@fredj](https://github.com/fredj))
* [#4930](https://github.com/openlayers/ol3/pull/4930) - Use ADVANCED instead of ADVANCED_OPTIMIZATIONS ([@fredj](https://github.com/fredj))
* [#4917](https://github.com/openlayers/ol3/pull/4917) - Make ol.source.Cluster more flexible by adding a geometryFunction option ([@ahocevar](https://github.com/ahocevar))
* [#4918](https://github.com/openlayers/ol3/pull/4918) - Don't change the canvas size to clear it ([@fredj](https://github.com/fredj))
* [#4923](https://github.com/openlayers/ol3/pull/4923) - Update custom-builds.md ([@xlhomme](https://github.com/xlhomme))
* [#4929](https://github.com/openlayers/ol3/pull/4929) - Update clean-css to version 3.4.10 🚀 ([@openlayers](https://github.com/openlayers))
* [#4928](https://github.com/openlayers/ol3/pull/4928) - Upgrade to JSTS 1.0.2 in example ([@bjornharrtell](https://github.com/bjornharrtell))
* [#4927](https://github.com/openlayers/ol3/pull/4927) - Upgrade JSTS in example. ([@bjornharrtell](https://github.com/bjornharrtell))
* [#4809](https://github.com/openlayers/ol3/pull/4809) - Fix multipolygon clone. ([@fperucic](https://github.com/fperucic))
* [#4924](https://github.com/openlayers/ol3/pull/4924) - Update coveralls to version 2.11.8 🚀 ([@openlayers](https://github.com/openlayers))
* [#4921](https://github.com/openlayers/ol3/pull/4921) - Unlisten before calling listener and bind to target by default ([@ahocevar](https://github.com/ahocevar))
* [#4868](https://github.com/openlayers/ol3/pull/4868) - Allow to refresh a source and reload its data. ([@sebasbaumh](https://github.com/sebasbaumh))
* [#4903](https://github.com/openlayers/ol3/pull/4903) - Remove use of goog.style.getRelativePosition ([@fredj](https://github.com/fredj))
* [#4902](https://github.com/openlayers/ol3/pull/4902) - Remove use of goog.style.getClientPosition ([@fredj](https://github.com/fredj))
* [#4916](https://github.com/openlayers/ol3/pull/4916) - Fix ol.format.GeoJSON#writeFeatureObject return type ([@fredj](https://github.com/fredj))
* [#4909](https://github.com/openlayers/ol3/pull/4909) - Add ol.renderer.dom.VectorLayer#clearFrame ([@fredj](https://github.com/fredj))
* [#4915](https://github.com/openlayers/ol3/pull/4915) - Use {} instead of Object ([@fredj](https://github.com/fredj))
* [#4914](https://github.com/openlayers/ol3/pull/4914) - Export ol.proj.equivalent ([@sebasbaumh](https://github.com/sebasbaumh))
* [#4908](https://github.com/openlayers/ol3/pull/4908) - Remove use of goog.math.Rect ([@fredj](https://github.com/fredj))
* [#4900](https://github.com/openlayers/ol3/pull/4900) - Make ol.format.XML a @struct ([@fredj](https://github.com/fredj))
* [#4880](https://github.com/openlayers/ol3/pull/4880) - Update closure-util to version 1.11.0 🚀 ([@openlayers](https://github.com/openlayers))
* [#4905](https://github.com/openlayers/ol3/pull/4905) - Remove use of goog.style.setPosition ([@fredj](https://github.com/fredj))
* [#4879](https://github.com/openlayers/ol3/pull/4879) - Update metalsmith-layouts to version 1.6.4 🚀 ([@openlayers](https://github.com/openlayers))
* [#4901](https://github.com/openlayers/ol3/pull/4901) - Release v3.14.0 ([@openlayers](https://github.com/openlayers))
* [#4899](https://github.com/openlayers/ol3/pull/4899) - Use ol.format.GMLBase#srsName instead of undeclared srsName_ ([@fredj](https://github.com/fredj))

9
changelog/v3.15.1.md Normal file
View File

@@ -0,0 +1,9 @@
# v3.15.1
## Summary
The v3.15.1 release is a patch release that addresses a regression in the v3.15.0 release. See the [v3.15.0 release notes](https://github.com/openlayers/ol3/releases/tag/v3.15.0) for details on upgrading from v3.14.x.
## Fixes
* [#5190](https://github.com/openlayers/ol3/pull/5190) - Revert "Batch polygon fill and stroke instructions" ([@ahocevar](https://github.com/ahocevar))

148
changelog/v3.16.0.md Normal file
View File

@@ -0,0 +1,148 @@
# v3.16.0
## Summary
The v3.16.0 release includes features and fixes from 95 pull requests since the v3.15.1 release. New features and improvements include:
* Add `ol.source.ImageArcGISRest` for ArcGIS REST image layer support (#3880)
* New `finishCondition` option for `ol.interaction.Draw` to control which action should finish a geometry when drawing (#5261)
* New filter API for `ol.format.WFS#writeGetFeature` for WFS queries with OGC filters (#5252)
* New `renderMode` option for `ol.layer.VectorTile` to balance between rendering performance and rendering quality (#5177)
* More flexibility for configuring attribution logos by allowing HTML elements (#5274)
* UTFGrid updates, now supporting Mapbox API v4 (#5329)
* New `condition` option for `ol.interaction.Modify` for better reliability when combining with other interactions (#5320)
In addition to these new features, the code base has been simplified and refactored in the process of removing the dependency on Closure Library and Compiler.
## Upgrade notes
#### Rendering change for tile sources
Previously, if you called `source.setUrl()` on a tile source, all currently rendered tiles would be cleared before new tiles were loaded and rendered. This clearing of the map is undesirable if you are trying to smoothly update the tiles used by a source. This behavior has now changed, and calling `source.setUrl()` (or `source.setUrls()`) will *not* clear currently rendered tiles before loading and rendering new tiles. Instead, previously rendered tiles remain rendered until new tiles have loaded and can replace them. If you want to achieve the old behavior (render a blank map before loading new tiles), you can call `source.refresh()` or you can replace the old source with a new one (using `layer.setSource()`).
#### Move of typedefs out of code and into separate file
This change should not affect the great majority of application developers, but it's possible there are edge cases when compiling application code together with the library which cause compiler errors or warnings. In this case, please raise a GitHub issue. `goog.require`s for typedefs should not be necessary.
Users compiling their code with the library should note that the following API `@typedef`s have been renamed; your code may need changing if you use these:
* `ol.format.WFS.FeatureCollectionMetadata` to `ol.WFSFeatureCollectionMetadata`
* `ol.format.WFS.TransactionResponse` to `ol.WFSTransactionResponse`
#### Removal of `opaque` option for `ol.source.VectorTile`
This option is no longer needed, so it was removed from the API.
#### XHR loading for `ol.source.TileUTFGrid`
The `ol.source.TileUTFGrid` now uses XMLHttpRequest to load UTFGrid tiles by default. This works out of the box with the v4 Mapbox API. To work with the v3 API, you must use the new `jsonp` option on the source. See the examples below for detail.
```js
// To work with the v4 API
var v4source = new ol.source.TileUTFGrid({
url: 'https://api.tiles.mapbox.com/v4/example.json?access_token=' + YOUR_KEY_HERE
});
// To work with the v3 API
var v3source = new ol.source.TileUTFGrid({
jsonp: true, // <--- this is required for v3
url: 'http://api.tiles.mapbox.com/v3/example.json'
});
```
## Full list of changes
* [#5377](https://github.com/openlayers/ol3/pull/5377) - Fix link to jspdf.min.js in export-pdf example ([@fredj](https://github.com/fredj))
* [#5372](https://github.com/openlayers/ol3/pull/5372) - Update jquery to version 2.2.4 🚀 ([@openlayers](https://github.com/openlayers))
* [#5364](https://github.com/openlayers/ol3/pull/5364) - Make it so things don't flash so much when you change the tile source URL. ([@tschaub](https://github.com/tschaub))
* [#5368](https://github.com/openlayers/ol3/pull/5368) - Move WFS typedefs to typedefs.js ([@probins](https://github.com/probins))
* [#5369](https://github.com/openlayers/ol3/pull/5369) - format/igc: Remove duplicate regex exec() call ([@Turbo87](https://github.com/Turbo87))
* [#5363](https://github.com/openlayers/ol3/pull/5363) - Convert all typedefs to CamelCase ([@probins](https://github.com/probins))
* [#5362](https://github.com/openlayers/ol3/pull/5362) - Update vector-tile to version 1.2.1 🚀 ([@openlayers](https://github.com/openlayers))
* [#5352](https://github.com/openlayers/ol3/pull/5352) - Add getResolutions() to ol.View ([@marlowp](https://github.com/marlowp))
* [#5359](https://github.com/openlayers/ol3/pull/5359) - Move upgrade notes to correct place ([@probins](https://github.com/probins))
* [#5343](https://github.com/openlayers/ol3/pull/5343) - Rename non-api sub-namespace typedefs ([@probins](https://github.com/probins))
* [#5361](https://github.com/openlayers/ol3/pull/5361) - Fix url to maki icons ([@fredj](https://github.com/fredj))
* [#5358](https://github.com/openlayers/ol3/pull/5358) - Handle multiple featureMember elements for different types (WFS format) ([@tsauerwein](https://github.com/tsauerwein))
* [#5355](https://github.com/openlayers/ol3/pull/5355) - Fix navigation-controls example description ([@fredj](https://github.com/fredj))
* [#5353](https://github.com/openlayers/ol3/pull/5353) - Add API definition to docs landing page ([@probins](https://github.com/probins))
* [#5356](https://github.com/openlayers/ol3/pull/5356) - Update rbush to version 1.4.3 🚀 ([@openlayers](https://github.com/openlayers))
* [#5354](https://github.com/openlayers/ol3/pull/5354) - Update eslint to version 2.10.2 🚀 ([@openlayers](https://github.com/openlayers))
* [#5347](https://github.com/openlayers/ol3/pull/5347) - Update eslint to version 2.10.1 🚀 ([@openlayers](https://github.com/openlayers))
* [#5344](https://github.com/openlayers/ol3/pull/5344) - Remove raster enum from test ([@probins](https://github.com/probins))
* [#5329](https://github.com/openlayers/ol3/pull/5329) - UTFGrid updates. ([@tschaub](https://github.com/tschaub))
* [#5335](https://github.com/openlayers/ol3/pull/5335) - Move typedefs to separate file ([@probins](https://github.com/probins))
* [#5332](https://github.com/openlayers/ol3/pull/5332) - Warn when viewing an outdated example, and offer a redirect to latest ([@ahocevar](https://github.com/ahocevar))
* [#5342](https://github.com/openlayers/ol3/pull/5342) - Fix incorrect source links ([@ahocevar](https://github.com/ahocevar))
* [#5339](https://github.com/openlayers/ol3/pull/5339) - Use a div instead of alert for version warning ([@ahocevar](https://github.com/ahocevar))
* [#5320](https://github.com/openlayers/ol3/pull/5320) - Add a 'condition' option to ol.interaction.Modify ([@fredj](https://github.com/fredj))
* [#5333](https://github.com/openlayers/ol3/pull/5333) - Improve code readability with better comments ([@openlayers](https://github.com/openlayers))
* [#5330](https://github.com/openlayers/ol3/pull/5330) - Fix source links, display version and warn about outdated docs ([@ahocevar](https://github.com/ahocevar))
* [#5324](https://github.com/openlayers/ol3/pull/5324) - Remove unneeded goog.provides/requires for typedefs ([@probins](https://github.com/probins))
* [#5328](https://github.com/openlayers/ol3/pull/5328) - Use Node 6 on Travis. ([@tschaub](https://github.com/tschaub))
* [#5313](https://github.com/openlayers/ol3/pull/5313) - Rastersource framestate extent ([@ahocevar](https://github.com/ahocevar))
* [#5326](https://github.com/openlayers/ol3/pull/5326) - Fix wording in tile-load-event example ([@tsauerwein](https://github.com/tsauerwein))
* [#5327](https://github.com/openlayers/ol3/pull/5327) - Update closure-util to version 1.13.1 🚀 ([@openlayers](https://github.com/openlayers))
* [#5289](https://github.com/openlayers/ol3/pull/5289) - Update fs-extra to version 0.30.0 🚀 ([@openlayers](https://github.com/openlayers))
* [#5319](https://github.com/openlayers/ol3/pull/5319) - Remove outdated fixme from framestate.js. ([@probins](https://github.com/probins))
* [#5274](https://github.com/openlayers/ol3/pull/5274) - Allow using elements in logo attribution options ([@samuellapointe](https://github.com/samuellapointe))
* [#5162](https://github.com/openlayers/ol3/pull/5162) - Improve docs/examples for loadingstrategy ([@probins](https://github.com/probins))
* [#5314](https://github.com/openlayers/ol3/pull/5314) - Update browserify to version 13.0.1 🚀 ([@openlayers](https://github.com/openlayers))
* [#5315](https://github.com/openlayers/ol3/pull/5315) - Remove unused ol.TileCoordTransformType ([@probins](https://github.com/probins))
* [#5310](https://github.com/openlayers/ol3/pull/5310) - Get raster sources working again. ([@tschaub](https://github.com/tschaub))
* [#5291](https://github.com/openlayers/ol3/pull/5291) - Allow once listeners to dispatch events of same type ([@ahocevar](https://github.com/ahocevar))
* [#5309](https://github.com/openlayers/ol3/pull/5309) - Update metalsmith-layouts to version 1.6.5 🚀 ([@openlayers](https://github.com/openlayers))
* [#5052](https://github.com/openlayers/ol3/pull/5052) - Update fs-extra to version 0.26.7 🚀 ([@openlayers](https://github.com/openlayers))
* [#5306](https://github.com/openlayers/ol3/pull/5306) - Make olx.view.FitOptions.padding optional ([@gberaudo](https://github.com/gberaudo))
* [#5302](https://github.com/openlayers/ol3/pull/5302) - Remove use of goog.partial ([@fredj](https://github.com/fredj))
* [#5304](https://github.com/openlayers/ol3/pull/5304) - Update sinon to version 1.17.4 🚀 ([@openlayers](https://github.com/openlayers))
* [#4644](https://github.com/openlayers/ol3/pull/4644) - Remove check-requires script ([@fredj](https://github.com/fredj))
* [#5298](https://github.com/openlayers/ol3/pull/5298) - Update eslint to version 2.9.0 🚀 ([@openlayers](https://github.com/openlayers))
* [#5296](https://github.com/openlayers/ol3/pull/5296) - Document handling of KML MultiGeometries ([@probins](https://github.com/probins))
* [#5293](https://github.com/openlayers/ol3/pull/5293) - Block removePoint while dragging ([@giohappy](https://github.com/giohappy))
* [#5285](https://github.com/openlayers/ol3/pull/5285) - Add more tests for the scaleline control ([@marcjansen](https://github.com/marcjansen))
* [#5287](https://github.com/openlayers/ol3/pull/5287) - Add and fix vectortile tests ([@ahocevar](https://github.com/ahocevar))
* [#5288](https://github.com/openlayers/ol3/pull/5288) - Expose removeVertex_ as removePoint ([@giohappy](https://github.com/giohappy))
* [#5286](https://github.com/openlayers/ol3/pull/5286) - Skip unnecessary render functions ([@ahocevar](https://github.com/ahocevar))
* [#5177](https://github.com/openlayers/ol3/pull/5177) - Add render options for vector tile layers ([@ahocevar](https://github.com/ahocevar))
* [#5278](https://github.com/openlayers/ol3/pull/5278) - Fix invalid generics type instantiation ([@fredj](https://github.com/fredj))
* [#5044](https://github.com/openlayers/ol3/pull/5044) - Snap interaction now handle feature without geometry properly ([@fblackburn](https://github.com/fblackburn))
* [#5277](https://github.com/openlayers/ol3/pull/5277) - Type cleanup ([@fredj](https://github.com/fredj))
* [#5275](https://github.com/openlayers/ol3/pull/5275) - Fix feature-layer association on replaced selections ([@ahocevar](https://github.com/ahocevar))
* [#5252](https://github.com/openlayers/ol3/pull/5252) - Add filter option to ol.format.WFS#writeGetFeature ([@tsauerwein](https://github.com/tsauerwein))
* [#5264](https://github.com/openlayers/ol3/pull/5264) - Fix for close draw polygon error ([@matjos](https://github.com/matjos))
* [#5267](https://github.com/openlayers/ol3/pull/5267) - Use ol.functions instead of goog.functions ([@ahocevar](https://github.com/ahocevar))
* [#5266](https://github.com/openlayers/ol3/pull/5266) - Document ol.colorlike ([@ahocevar](https://github.com/ahocevar))
* [#5261](https://github.com/openlayers/ol3/pull/5261) - add finishCondition to ol.interaction.Draw ([@giohappy](https://github.com/giohappy))
* [#5259](https://github.com/openlayers/ol3/pull/5259) - Include squash commit merges in changelog ([@ahocevar](https://github.com/ahocevar))
* [#5257](https://github.com/openlayers/ol3/pull/5257) - Add readFeatures and readProjection as MVT experimental API ([@bjornharrtell](https://github.com/bjornharrtell))
* [#3880](https://github.com/openlayers/ol3/pull/3880) - Add ol.source.ImageArcGISRest ([Anna Lambrechtsen](https://github.com/search?q=Anna Lambrechtsen&type=Users))
* [#5239](https://github.com/openlayers/ol3/pull/5239) - Update eslint to version 2.8.0 🚀 ([@openlayers](https://github.com/openlayers))
* [#5230](https://github.com/openlayers/ol3/pull/5230) - Reuse frame state arrays ([@fredj](https://github.com/fredj))
* [#5213](https://github.com/openlayers/ol3/pull/5213) - Remove unused ol.source.Source#setProjection function ([@fredj](https://github.com/fredj))
* [#5223](https://github.com/openlayers/ol3/pull/5223) - Create tmpSize_ before calling calculateTileRanges_ ([@fredj](https://github.com/fredj))
* [#5225](https://github.com/openlayers/ol3/pull/5225) - Remove unused ol.extent.transform2D function ([@fredj](https://github.com/fredj))
* [#5212](https://github.com/openlayers/ol3/pull/5212) - KML: fix GeometryCollection write ([@probins](https://github.com/probins))
* [#5228](https://github.com/openlayers/ol3/pull/5228) - Add 'layers' option to Translate interaction ([@adube](https://github.com/adube))
* [#5221](https://github.com/openlayers/ol3/pull/5221) - Update jquery, bootstrap and proj4js in examples ([@fredj](https://github.com/fredj))
* [#5227](https://github.com/openlayers/ol3/pull/5227) - Add a temporary ol.TileCoord in ol.renderer.canvas.TileLayer ([@fredj](https://github.com/fredj))
* [#5222](https://github.com/openlayers/ol3/pull/5222) - Remove unused private variables in ol.renderer.canvas.Map ([@fredj](https://github.com/fredj))
* [#5220](https://github.com/openlayers/ol3/pull/5220) - Externs cleanup ([@fredj](https://github.com/fredj))
* [#5224](https://github.com/openlayers/ol3/pull/5224) - Fix jsdoc tags indentation ([@fredj](https://github.com/fredj))
* [#5218](https://github.com/openlayers/ol3/pull/5218) - Add @api annotation to setConfig. ([@aisaacs](https://github.com/aisaacs))
* [#5215](https://github.com/openlayers/ol3/pull/5215) - Add an optional feature filter to getClosestFeatureToCoordinate ([@fredj](https://github.com/fredj))
* [#5132](https://github.com/openlayers/ol3/pull/5132) - Remove goog.string ([@nicholas-l](https://github.com/nicholas-l))
* [#5206](https://github.com/openlayers/ol3/pull/5206) - Minor correction of StyleFunction docs ([@probins](https://github.com/probins))
* [#4932](https://github.com/openlayers/ol3/pull/4932) - Remove undefined parameters to ol.format.WMSGetFeatureInfo#readFeatures_ ([@fredj](https://github.com/fredj))
* [#5207](https://github.com/openlayers/ol3/pull/5207) - Update clean-css to version 3.4.12 🚀 ([@openlayers](https://github.com/openlayers))
* [#5201](https://github.com/openlayers/ol3/pull/5201) - Small clarification for vector source loader docs ([@probins](https://github.com/probins))
* [#5200](https://github.com/openlayers/ol3/pull/5200) - Fix typo in rotate control for css classList ([@bartvde](https://github.com/bartvde))
* [#5178](https://github.com/openlayers/ol3/pull/5178) - Remove goog.global ([Nicholas Latham](https://github.com/search?q=Nicholas Latham&type=Users))
* [#5189](https://github.com/openlayers/ol3/pull/5189) - Add rendering tests to ensure correct circle and polygon rendering ([Andreas Hocevar](https://github.com/search?q=Andreas Hocevar&type=Users))
* [#5183](https://github.com/openlayers/ol3/pull/5183) - Update istanbul to version 0.4.3 🚀 ([@openlayers](https://github.com/openlayers))
* [#5187](https://github.com/openlayers/ol3/pull/5187) - Remove goog.functions.and from ol.interaction.Modify ([@fredj](https://github.com/fredj))
* [#5176](https://github.com/openlayers/ol3/pull/5176) - Update jquery to version 2.2.3 🚀 ([@openlayers](https://github.com/openlayers))
* [#5173](https://github.com/openlayers/ol3/pull/5173) - Use ol.dom.createCanvasContext2D ([@fredj](https://github.com/fredj))
* [#5171](https://github.com/openlayers/ol3/pull/5171) - Move olx.source.AttributionOption out of externs/olx.js ([@fredj](https://github.com/fredj))
* [#5170](https://github.com/openlayers/ol3/pull/5170) - Update eslint to version 2.7.0 🚀 ([@openlayers](https://github.com/openlayers))
* [#5167](https://github.com/openlayers/ol3/pull/5167) - Remove FastClick from mobile-full-screen example ([@fredj](https://github.com/fredj))
* [#5166](https://github.com/openlayers/ol3/pull/5166) - Remove jquery dependency from measure example ([@fredj](https://github.com/fredj))
* [#5164](https://github.com/openlayers/ol3/pull/5164) - Cartodb cleanup ([@fredj](https://github.com/fredj))

107
changelog/v3.17.0.md Normal file
View File

@@ -0,0 +1,107 @@
# v3.17.0
## Summary
The v3.17.0 release includes features and fixes from 60 pull requests since the v3.16.0 release. Most of the changes are bug fixes and continuing removal of the dependency on Closure Library.
## Upgrade notes
#### `ol.source.MapQuest` removal
Because of changes at MapQuest (see: https://lists.openstreetmap.org/pipermail/talk/2016-June/076106.html) we had to remove the MapQuest source for now (see https://github.com/openlayers/ol3/issues/5484 for details).
#### `ol.interaction.ModifyEvent` changes
The event object previously had a `mapBrowserPointerEvent` property, which has been renamed to `mapBrowserEvent`.
#### Removal of ol.raster namespace
Users compiling their code with the library and using types in the `ol.raster` namespace should note that this has now been removed. `ol.raster.Pixel` has been deleted, and the other types have been renamed as follows, and your code may need changing if you use these:
* `ol.raster.Operation` to `ol.RasterOperation`
* `ol.raster.OperationType` to `ol.RasterOperationType`
#### All typedefs now in ol namespace
Users compiling their code with the library should note that the following typedefs have been renamed; your code may need changing if you use these:
* ol.events.ConditionType to ol.EventsConditionType
* ol.events.EventTargetLike to ol.EventTargetLike
* ol.events.Key to ol.EventsKey
* ol.events.ListenerFunctionType to ol.EventsListenerFunctionType
* ol.interaction.DragBoxEndConditionType to ol.DragBoxEndConditionType
* ol.interaction.DrawGeometryFunctionType to ol.DrawGeometryFunctionType
* ol.interaction.SegmentDataType to ol.ModifySegmentDataType
* ol.interaction.SelectFilterFunction to ol.SelectFilterFunction
* ol.interaction.SnapResultType to ol.SnapResultType
* ol.interaction.SnapSegmentDataType to ol.SnapSegmentDataType
* ol.proj.ProjectionLike to ol.ProjectionLike
* ol.style.AtlasBlock to ol.AtlasBlock
* ol.style.AtlasInfo to ol.AtlasInfo
* ol.style.AtlasManagerInfo to ol.AtlasManagerInfo
* ol.style.CircleRenderOptions to ol.CircleRenderOptions
* ol.style.ImageOptions to ol.StyleImageOptions
* ol.style.GeometryFunction to ol.StyleGeometryFunction
* ol.style.RegularShapeRenderOptions to ol.RegularShapeRenderOptions
* ol.style.StyleFunction to ol.StyleFunction
## Full list of changes
* [#5539](https://github.com/openlayers/ol3/pull/5539) - Remove outdated comments re goog.dom ([@probins](https://github.com/probins))
* [#5543](https://github.com/openlayers/ol3/pull/5543) - Update rbush to 2.0.1 ([@tsauerwein](https://github.com/tsauerwein))
* [#5540](https://github.com/openlayers/ol3/pull/5540) - Remove MapQuest source ([@bartvde](https://github.com/bartvde))
* [#5538](https://github.com/openlayers/ol3/pull/5538) - Replace remaining goog.inherits ([@probins](https://github.com/probins))
* [#5536](https://github.com/openlayers/ol3/pull/5536) - Update to layer-extent example ([@tschaub](https://github.com/tschaub))
* [#5482](https://github.com/openlayers/ol3/pull/5482) - Fix for regression in tile layer extent ([@ischneider](https://github.com/ischneider))
* [#5475](https://github.com/openlayers/ol3/pull/5475) - Remove goog.provide from enums only used internally or in olx.js ([@probins](https://github.com/probins))
* [#5424](https://github.com/openlayers/ol3/pull/5424) - Don't dispatch select event if no feature is selected or deselected ([@fredj](https://github.com/fredj))
* [#5522](https://github.com/openlayers/ol3/pull/5522) - Add 'condition' option to ol.interaction.DragPanOptions in olx.js ([@SamuelBerger](https://github.com/SamuelBerger))
* [#5443](https://github.com/openlayers/ol3/pull/5443) - Remove olx.source.WMTSOptions#maxZoom option ([@fredj](https://github.com/fredj))
* [#5497](https://github.com/openlayers/ol3/pull/5497) - Update istanbul to version 0.4.4 🚀 ([@openlayers](https://github.com/openlayers))
* [#5523](https://github.com/openlayers/ol3/pull/5523) - Update closure-util to version 1.15.0 🚀 ([@openlayers](https://github.com/openlayers))
* [#5508](https://github.com/openlayers/ol3/pull/5508) - Fix problems with ol.format.WFS in compiled mode ([@tsauerwein](https://github.com/tsauerwein))
* [#5512](https://github.com/openlayers/ol3/pull/5512) - Use forEachTileCoord name instead of forEachTileCoordInExtentAndZ ([@ahocevar](https://github.com/ahocevar))
* [#5513](https://github.com/openlayers/ol3/pull/5513) - Add getters for min and max resolution of the view ([@bartvde](https://github.com/bartvde))
* [#5471](https://github.com/openlayers/ol3/pull/5471) - Fix GPX write of xsi ns ([@probins](https://github.com/probins))
* [#5134](https://github.com/openlayers/ol3/pull/5134) - Remove goog.dom ([@nicholas-l](https://github.com/nicholas-l))
* [#5511](https://github.com/openlayers/ol3/pull/5511) - Do not optimize lines away entirely ([@ahocevar](https://github.com/ahocevar))
* [#5509](https://github.com/openlayers/ol3/pull/5509) - Make it easier to work with tile ranges in custom source implementations ([@ahocevar](https://github.com/ahocevar))
* [#5498](https://github.com/openlayers/ol3/pull/5498) - Update eslint to version 2.13.1 🚀 ([@openlayers](https://github.com/openlayers))
* [#5495](https://github.com/openlayers/ol3/pull/5495) - Get rid of goog.isFunction ([@fredj](https://github.com/fredj))
* [#5499](https://github.com/openlayers/ol3/pull/5499) - Update glob to version 7.0.5 🚀 ([@openlayers](https://github.com/openlayers))
* [#5125](https://github.com/openlayers/ol3/pull/5125) - Remove goog style ([@nicholas-l](https://github.com/nicholas-l))
* [#5494](https://github.com/openlayers/ol3/pull/5494) - Remove goog.global ([@probins](https://github.com/probins))
* [#5492](https://github.com/openlayers/ol3/pull/5492) - Update eslint to version 2.13.0 🚀 ([@openlayers](https://github.com/openlayers))
* [#5490](https://github.com/openlayers/ol3/pull/5490) - Update glob to version 7.0.4 🚀 ([@openlayers](https://github.com/openlayers))
* [#5460](https://github.com/openlayers/ol3/pull/5460) - Update eslint to version 2.12.0 🚀 ([@openlayers](https://github.com/openlayers))
* [#5479](https://github.com/openlayers/ol3/pull/5479) - Update slimerjs to version 0.906.2 🚀 ([@openlayers](https://github.com/openlayers))
* [#5474](https://github.com/openlayers/ol3/pull/5474) - Update clean-css to version 3.4.18 🚀 ([@openlayers](https://github.com/openlayers))
* [#5450](https://github.com/openlayers/ol3/pull/5450) - Remove sub-namespaces from all remaining typedefs ([@probins](https://github.com/probins))
* [#5465](https://github.com/openlayers/ol3/pull/5465) - Fix custom icon positions and rotation ([@ahocevar](https://github.com/ahocevar))
* [#5469](https://github.com/openlayers/ol3/pull/5469) - Fix typo ([@gberaudo](https://github.com/gberaudo))
* [#5453](https://github.com/openlayers/ol3/pull/5453) - Reference ol.MapBrowserEvent instead of ol.MapBrowserPointerEvent ([@ahocevar](https://github.com/ahocevar))
* [#5208](https://github.com/openlayers/ol3/pull/5208) - Stop GPX writing rtept properties ([@probins](https://github.com/probins))
* [#5452](https://github.com/openlayers/ol3/pull/5452) - Update eslint-config-openlayers to version 5.0.0 🚀 ([@openlayers](https://github.com/openlayers))
* [#5432](https://github.com/openlayers/ol3/pull/5432) - Remove use of goog.uri ([@bjornharrtell](https://github.com/bjornharrtell))
* [#5449](https://github.com/openlayers/ol3/pull/5449) - Make example data/ paths absolute for source view and JSFiddle ([@ahocevar](https://github.com/ahocevar))
* [#5399](https://github.com/openlayers/ol3/pull/5399) - Remove ol.raster namespace ([@probins](https://github.com/probins))
* [#5270](https://github.com/openlayers/ol3/pull/5270) - Load erroneous image in ol.Image#load and ol.ImageTile#load ([@fredj](https://github.com/fredj))
* [#5194](https://github.com/openlayers/ol3/pull/5194) - Get rid of goog.inherits and goog.base ([@fredj](https://github.com/fredj))
* [#5427](https://github.com/openlayers/ol3/pull/5427) - Document typedefs and enums used by API symbols ([@ahocevar](https://github.com/ahocevar))
* [#5438](https://github.com/openlayers/ol3/pull/5438) - Don't make ol.format.ogc.filter.Filter inherit from ol.Object ([@fredj](https://github.com/fredj))
* [#5433](https://github.com/openlayers/ol3/pull/5433) - Update clean-css to version 3.4.17 🚀 ([@openlayers](https://github.com/openlayers))
* [#5434](https://github.com/openlayers/ol3/pull/5434) - Fix externs in closure compiler tutorial ([@tsauerwein](https://github.com/tsauerwein))
* [#5426](https://github.com/openlayers/ol3/pull/5426) - Fix icon example to anchor popup to feature location ([@frankrowe](https://github.com/frankrowe))
* [#5421](https://github.com/openlayers/ol3/pull/5421) - Correct typo in config/jsdoc/api/readme.md ([@probins](https://github.com/probins))
* [#5417](https://github.com/openlayers/ol3/pull/5417) - Update clean-css to version 3.4.16 🚀 ([@openlayers](https://github.com/openlayers))
* [#5413](https://github.com/openlayers/ol3/pull/5413) - Update clean-css to version 3.4.15 🚀 ([@openlayers](https://github.com/openlayers))
* [#5410](https://github.com/openlayers/ol3/pull/5410) - Update eslint to version 2.11.1 🚀 ([@openlayers](https://github.com/openlayers))
* [#5408](https://github.com/openlayers/ol3/pull/5408) - Update pbf to version 2.0.1 🚀 ([@openlayers](https://github.com/openlayers))
* [#5404](https://github.com/openlayers/ol3/pull/5404) - Update eslint to version 2.11.0 🚀 ([@openlayers](https://github.com/openlayers))
* [#5402](https://github.com/openlayers/ol3/pull/5402) - Pass in srsName option to writeTransaction ([@anzhihun](https://github.com/anzhihun))
* [#5393](https://github.com/openlayers/ol3/pull/5393) - Update mocha to version 2.5.3 🚀 ([@openlayers](https://github.com/openlayers))
* [#5394](https://github.com/openlayers/ol3/pull/5394) - Update resemblejs to version 2.2.1 🚀 ([@openlayers](https://github.com/openlayers))
* [#5390](https://github.com/openlayers/ol3/pull/5390) - Fix the requestEncoding automatic selection ([@fredj](https://github.com/fredj))
* [#5392](https://github.com/openlayers/ol3/pull/5392) - Update closure-util to version 1.14.0 🚀 ([@openlayers](https://github.com/openlayers))
* [#5388](https://github.com/openlayers/ol3/pull/5388) - Update mocha to version 2.5.2 🚀 ([@openlayers](https://github.com/openlayers))
* [#5382](https://github.com/openlayers/ol3/pull/5382) - Handle UTC midnight wrap around, fixes #5371 ([@twpayne](https://github.com/twpayne))
* [#5381](https://github.com/openlayers/ol3/pull/5381) - Update mocha to version 2.5.1 🚀 ([@openlayers](https://github.com/openlayers))
* [#5383](https://github.com/openlayers/ol3/pull/5383) - Update clean-css to version 3.4.13 🚀 ([@openlayers](https://github.com/openlayers))

View File

@@ -1,3 +0,0 @@
{
"library_url": "https://github.com/google/closure-library/archive/5b25e65.zip"
}

View File

@@ -12,11 +12,11 @@
],
"externs": [
"externs/bingmaps.js",
"externs/cartodb.js",
"externs/bootstrap.js",
"externs/closure-compiler.js",
"externs/esrijson.js",
"externs/example.js",
"externs/fastclick.js",
"externs/geojson.js",
"externs/jquery-1.9.js",
"externs/proj4js.js",
@@ -24,17 +24,14 @@
"externs/topojson.js"
],
"define": [
"goog.dom.ASSUME_STANDARDS_MODE=true",
"goog.json.USE_NATIVE_JSON=true",
"goog.DEBUG=false"
],
"jscomp_error": [
"*"
],
"jscomp_off": [
"useOfGoogBase",
"unnecessaryCasts",
"lintChecks",
"analyzerChecks",
"missingProvide",
"unknownDefines"
],

View File

@@ -13,29 +13,25 @@
"externs": [
"externs/bingmaps.js",
"externs/bootstrap.js",
"externs/cartodb.js",
"externs/closure-compiler.js",
"externs/esrijson.js",
"externs/example.js",
"externs/fastclick.js",
"externs/geojson.js",
"externs/jspdf.js",
"externs/jquery-1.9.js",
"externs/proj4js.js",
"externs/tilejson.js",
"externs/topojson.js"
],
"define": [
"goog.dom.ASSUME_STANDARDS_MODE=true",
"goog.json.USE_NATIVE_JSON=true",
"goog.DEBUG=false"
],
"jscomp_error": [
"*"
],
"jscomp_off": [
"useOfGoogBase",
"unnecessaryCasts",
"lintChecks"
"lintChecks",
"analyzerChecks"
],
"extra_annotation_name": [
"api", "observable"

View File

@@ -5,13 +5,13 @@
<meta http-equiv="X-UA-Compatible" content="IE=Edge">
<meta name="viewport" content="initial-scale=1.0, user-scalable=no, width=device-width">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css" type="text/css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css" type="text/css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" type="text/css">
<link rel="stylesheet" href="./resources/prism/prism.css" type="text/css">
<link rel="stylesheet" href="../css/ol.css" type="text/css">
<link rel="stylesheet" href="./resources/layout.css" type="text/css">
{{{ extraHead.local }}}
{{{ css.tag }}}
<script src="https://cdn.polyfill.io/v2/polyfill.min.js?features=fetch,requestAnimationFrame"></script>
<script src="https://cdn.polyfill.io/v2/polyfill.min.js?features=fetch,requestAnimationFrame,Element.prototype.classList"></script>
<script src="./resources/zeroclipboard/ZeroClipboard.min.js"></script>
<title>{{ title }}</title>
</head>
@@ -20,19 +20,27 @@
<header class="navbar" role="navigation">
<div class="container">
<div class="display-table pull-left" id="navbar-logo-container">
<a class="navbar-brand" href="./"><img src="./resources/logo-70x70.png">&nbsp;OpenLayers 3 Examples</a>
<a class="navbar-brand" href="./"><img src="./resources/logo-70x70.png">&nbsp;OpenLayers Examples</a>
</div>
<ul class="nav navbar-nav pull-right">
<li><a href="../doc">Docs</a></li>
<li><a class="active" href="index.html">Examples</a></li>
<li><a href="../apidoc">API</a></li>
<li><a href="https://github.com/openlayers/ol3">Code</a></li>
</ul>
<!-- menu items that get hidden below 768px width -->
<nav class='collapse navbar-collapse navbar-responsive-collapse'>
<ul class="nav navbar-nav pull-right">
<li><a href="../doc">Docs</a></li>
<li><a class="active" href="index.html">Examples</a></li>
<li><a href="../apidoc">API</a></li>
<li><a href="https://github.com/openlayers/ol3">Code</a></li>
</ul>
</nav>
</div>
</header>
<div class="container-fluid">
<div id="latest-check" class="alert alert-warning alert-dismissible" role="alert" style="display:none">
<button id="latest-dismiss" type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">&times;</span></button>
This example uses OpenLayers v<span>{{ olVersion }}</span>. The <a id="latest-link" href="#" class="alert-link">latest</a> is v<span id="latest-version"></span>.
</div>
<div class="row-fluid">
<div class="span12">
<h4 id="title">{{ title }}</h4>
@@ -82,4 +90,30 @@
<script src="./resources/prism/prism.min.js"></script>
{{{ js.tag }}}
</body>
<script>
var packageUrl = 'https://raw.githubusercontent.com/openlayers/openlayers.github.io/build/package.json';
fetch(packageUrl).then(function(response) {
return response.json();
}).then(function(json) {
var latestVersion = json.version;
document.getElementById('latest-version').innerHTML = latestVersion;
var url = window.location.href;
var branchSearch = url.match(/\/([^\/]*)\/examples\//);
var cookieText = 'dismissed=-' + latestVersion + '-';
var dismissed = document.cookie.indexOf(cookieText) != -1;
if (!dismissed && /^v[0-9\.]*$/.test(branchSearch[1]) && '{{ olVersion }}' != latestVersion) {
var link = url.replace(branchSearch[0], '/latest/examples/');
fetch(link, {method: 'head'}).then(function(response) {
var a = document.getElementById('latest-link');
a.href = response.status == 200 ? link : '../../latest/examples/';
});
var latestCheck = document.getElementById('latest-check');
latestCheck.style.display = '';
document.getElementById('latest-dismiss').onclick = function() {
latestCheck.style.display = 'none';
document.cookie = cookieText;
}
}
});
</script>
</html>

View File

@@ -39,3 +39,26 @@ Interactions for [vector features](ol.Feature.html)
[ol.Geolocation](ol.Geolocation.html)<br>
[ol.Overlay](ol.Overlay.html)<br></td>
</tr></table>
&nbsp;
#### API change policy
The OpenLayers 3.x API consists of
* names of classes, class methods and properties
* names of static functions and constants
* order and types of function arguments
* types of function return values
API elements marked as `experimental` provide stable and functioning code, but may change.
Any changes will be documented in upgrade notes so application code can be changed appropriately
before using the new version of the library. All other API elements will remain compatible throughout the 3.x releases so that no changes to existing application code are necessary when upgrading to a later version.
*Note*: The API change policy does not cover CSS class names that are used to theme the
OpenLayers UI.
*Note for Closure Compiler users compiling their application code together with OpenLayers*:
The names of types other than those in the list above (e.g. `ol.Pixel`) are subject to change. It
is therefore recommended to either use the resolved type as listed in the API docs (e.g.
`Array.<number>` instead of `ol.Pixel`), or pay attention to the upgrade notes, which will list
the changes for those types.

View File

@@ -11,6 +11,7 @@ exports.defineTags = function(dictionary) {
canHaveType: false,
canHaveName: false,
onTagged: function(doclet, tag) {
includeTypes(doclet);
var level = tag.text || "experimental";
if (levels.indexOf(level) >= 0) {
doclet.stability = level;
@@ -25,11 +26,15 @@ exports.defineTags = function(dictionary) {
/*
* Based on @stability annotations, and assuming that items with no @stability
* annotation should not be documented, this plugin removes undocumented symbols
* Based on @api annotations, and assuming that items with no @api annotation
* should not be documented, this plugin removes undocumented symbols
* from the documentation.
*/
var api = [];
var classes = {};
var types = {};
function hasApiMembers(doclet) {
return doclet.longname.split('#')[0] == this.longname;
}
@@ -71,8 +76,30 @@ function includeAugments(doclet) {
}
}
var api = [];
var classes = {};
function extractTypes(item) {
item.type.names.forEach(function(type) {
var match = type.match(/^(.*<)?([^>]*)>?$/);
if (match) {
types[match[2]] = true;
}
});
}
function includeTypes(doclet) {
if (doclet.params && doclet.kind != 'class') {
doclet.params.forEach(extractTypes);
}
if (doclet.returns) {
doclet.returns.forEach(extractTypes);
}
if (doclet.isEnum) {
types[doclet.meta.code.name] = true;
}
if (doclet.type && doclet.meta.code.type == 'MemberExpression') {
// types in olx.js
extractTypes(doclet);
}
}
exports.handlers = {
@@ -80,6 +107,9 @@ exports.handlers = {
var doclet = e.doclet;
// Keep track of api items - needed in parseComplete to determine classes
// with api members.
if (doclet.meta.filename == 'olx.js' && doclet.kind == 'typedef') {
doclet.undocumented = false;
}
if (doclet.stability) {
api.push(doclet);
}
@@ -120,7 +150,7 @@ exports.handlers = {
// constructor from the docs.
doclet._hideConstructor = true;
includeAugments(doclet);
} else if (!doclet._hideConstructor) {
} else if (doclet.undocumented !== false && !doclet._hideConstructor && !(doclet.kind == 'typedef' && doclet.longname in types)) {
// Remove all other undocumented symbols
doclet.undocumented = true;
}

View File

@@ -89,10 +89,6 @@ exports.handlers = {
newDoclet: function(e) {
var doclet = e.doclet;
if (doclet.meta.filename == 'olx.js') {
// do nothing if not marked @api
if (!doclet.stability) {
return;
}
if (doclet.kind == 'typedef') {
lastOlxTypedef = doclet;
olxTypeNames.push(doclet.longname);

View File

@@ -24,7 +24,7 @@ The second line tells the Closure compiler the type of the argument.
The third line (`@api`) marks the method as part of the api and thus exportable. The stability can be added as value, e.g. `@api stable`. Without such an api annotation, the method will not be documented in the generated API documentation. Symbols without an api annotation will also not be exportable (unless they are explicitly exported with a `goog.exportProperty` call).
The `@api` annotation can be used in conjunciton with the `@inheritDoc` annotation to export a symbol that is documented on a parent class (where the method may be abstract). In general, `@api` annotations should never be used on abstract methods (only on their implementations).
The `@api` annotation can be used in conjunction with the `@inheritDoc` annotation to export a symbol that is documented on a parent class (where the method may be abstract). In general, `@api` annotations should never be used on abstract methods (only on their implementations).
### Events

View File

@@ -113,7 +113,8 @@ function generate(title, docs, filename, resolveLinks) {
var docData = {
filename: filename,
title: title,
docs: docs
docs: docs,
packageInfo: ( find({kind: 'package'}) || [] ) [0]
};
var outpath = path.join(outdir, filename),
@@ -327,11 +328,6 @@ exports.publish = function(taffyData, opts, tutorials) {
}
});
// update outdir if necessary, then create outdir
var packageInfo = ( find({kind: 'package'}) || [] ) [0];
if (packageInfo && packageInfo.name) {
outdir = path.join(outdir, packageInfo.name, packageInfo.version);
}
fs.mkPath(outdir);
// copy the template's static files to outdir
@@ -439,13 +435,10 @@ exports.publish = function(taffyData, opts, tutorials) {
if (members.globals.length) { generate('Global', [{kind: 'globalobj'}], globalUrl); }
// index page displays information from package.json and lists files
var files = find({kind: 'file'}),
packages = find({kind: 'package'});
var files = find({kind: 'file'});
generate('Index',
packages.concat(
[{kind: 'mainpage', readme: opts.readme, longname: (opts.mainpagetitle) ? opts.mainpagetitle : 'Main Page'}]
).concat(files),
[{kind: 'mainpage', readme: opts.readme, longname: (opts.mainpagetitle) ? opts.mainpagetitle : 'Main Page'}].concat(files),
indexUrl);
// set up the lists that we'll use to generate pages

View File

@@ -53,20 +53,44 @@ $(function () {
$(window).on('resize', _onResize);
_onResize();
var currentVersion = document.getElementById('package-version').innerHTML;
// warn about outdated version
var packageUrl = 'https://raw.githubusercontent.com/openlayers/openlayers.github.io/build/package.json';
fetch(packageUrl).then(function(response) {
return response.json();
}).then(function(json) {
var latestVersion = json.version;
document.getElementById('latest-version').innerHTML = latestVersion;
var url = window.location.href;
var branchSearch = url.match(/\/([^\/]*)\/apidoc\//);
var cookieText = 'dismissed=-' + latestVersion + '-';
var dismissed = document.cookie.indexOf(cookieText) != -1;
if (!dismissed && /^v[0-9\.]*$/.test(branchSearch[1]) && currentVersion != latestVersion) {
var link = url.replace(branchSearch[0], '/latest/apidoc/');
fetch(link, {method: 'head'}).then(function(response) {
var a = document.getElementById('latest-link');
a.href = response.status == 200 ? link : '../../latest/apidoc/';
});
var latestCheck = document.getElementById('latest-check');
latestCheck.style.display = '';
document.getElementById('latest-dismiss').onclick = function() {
latestCheck.style.display = 'none';
document.cookie = cookieText;
}
}
});
// create source code links to github
var srcLinks = $('div.tag-source');
var masterSearch = window.location.href.match(/\/([^\/]*\/)apidoc\//);
if (masterSearch && masterSearch.length) {
var branch = masterSearch[1];
srcLinks.each(function(i, el) {
var textParts = el.innerHTML.trim().split(', ');
var link = 'https://github.com/openlayers/ol3/blob/' + branch +
textParts[0];
el.innerHTML = '<a href="' + link + '">' + textParts[0] + '</a>, ' +
'<a href="' + link + textParts[1].replace('line ', '#l') + '">' +
textParts[1] + '</a>';
});
}
srcLinks.each(function(i, el) {
var textParts = el.innerHTML.trim().split(', ');
var link = 'https://github.com/openlayers/ol3/blob/v' + currentVersion + '/' +
textParts[0];
el.innerHTML = '<a href="' + link + '">' + textParts[0] + '</a>, ' +
'<a href="' + link + textParts[1].replace('line ', '#l') + '">' +
textParts[1] + '</a>';
});
// show/hide unstable items
var links = $('a[href^="ol."]');

View File

@@ -416,3 +416,7 @@ footer {
left: 250px;
font-weight: normal;
}
#latest-check {
margin-top: -10px;
margin-bottom: 10px;
}

View File

@@ -1,8 +1,12 @@
<?js
var version = obj.packageInfo.version;
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>OpenLayers 3 API Reference - <?js= title ?></title>
<title>OpenLayers v<?js= version ?> API - <?js= title ?></title>
<script src="https://cdn.polyfill.io/v2/polyfill.min.js?features=fetch"></script>
<script src="scripts/prettify/prettify.js"> </script>
<script src="scripts/prettify/lang-css.js"> </script>
<script src="scripts/jquery.min.js"> </script>
@@ -36,6 +40,10 @@
<?js= this.partial('navigation.tmpl', this) ?>
<div class="main">
<h1 class="page-title" data-filename="<?js= filename ?>"><?js= title ?></h1>
<div id="latest-check" class="alert alert-warning alert-dismissible" role="alert" style="display:none">
<button id="latest-dismiss" type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">&times;</span></button>
This documentation is for OpenLayers v<span id="package-version"><?js= version ?></span>. The <a id="latest-link" href="#" class="alert-link">latest</a> is v<span id="latest-version"></span>.
</div>
<?js= content ?>
</div>
</div>

View File

@@ -39,7 +39,7 @@ var self = this;
<?js
item.typedefs.forEach(function (v) {
?>
<li data-name="<?js= v.longname ?>" class="<?js= v.stability !== 'stable' ? 'unstable' : ''?>">
<li data-name="<?js= v.longname ?>" class="<?js= (v.stability && v.stability !== 'stable') ? 'unstable' : ''?>">
<?js= self.linkto(v.longname, v.name) ?>
</li>
<?js
@@ -56,7 +56,7 @@ var self = this;
item.methods.forEach(function (v) {
?>
<li data-name="<?js= v.longname ?>" class="<?js= v.stability !== 'stable' ? 'unstable' : ''?>">
<li data-name="<?js= v.longname ?>" class="<?js= (v.stability && v.stability !== 'stable') ? 'unstable' : ''?>">
<?js= self.linkto(v.longname, v.name) ?>
</li>
<?js
@@ -73,7 +73,7 @@ var self = this;
item.fires.forEach(function (v) {
v = self.find({longname: v})[0] || {longname: v, name: v.split(/#?event:/)[1]};
?>
<li data-name="<?js= v.longname ?>" class="<?js= (v.stability != 'stable' ? 'unstable' : '') ?>">
<li data-name="<?js= v.longname ?>" class="<?js= (v.stability && v.stability != 'stable') ? 'unstable' : '' ?>">
<?js= self.linkto(v.longname, v.name) ?>
</li>
<?js

View File

@@ -21,7 +21,7 @@
var setter = prop.readonly ? 'no' : 'yes';
?>
<tr class="<?js= prop.stability !== 'stable' ? 'unstable' : '' ?>">
<tr class="<?js= (prop.stability && prop.stability !== 'stable') ? 'unstable' : '' ?>">
<td class="name"><code><?js= prop.name ?></code></td>
<td class="type">
<?js if (prop.type && prop.type.names) {?>

View File

@@ -2,6 +2,6 @@
var data = obj;
var self = this;
if (data.stability != 'stable') { ?>
if (data.stability && data.stability != 'stable') { ?>
<span class="stability <?js= data.stability ?>"><?js= data.stability ?></span>
<?js } ?>

View File

@@ -4,6 +4,7 @@
"compile": {
"externs": [
"externs/bingmaps.js",
"externs/cartodb.js",
"externs/closure-compiler.js",
"externs/esrijson.js",
"externs/geojson.js",
@@ -14,22 +15,14 @@
"externs/topojson.js"
],
"define": [
"goog.dom.ASSUME_STANDARDS_MODE=true",
"goog.json.USE_NATIVE_JSON=true",
"goog.DEBUG=false"
],
"jscomp_error": [
"*"
],
"jscomp_off": [
"useOfGoogBase",
"lintChecks"
],
"hide_warnings_for": [
"node_modules/closure-util"
],
"jscomp_warning": [
"unnecessaryCasts"
"lintChecks",
"analyzerChecks"
],
"extra_annotation_name": [
"api", "observable"

View File

@@ -161,6 +161,22 @@ var swissCoord = ol.proj.transform([8.23, 46.86], 'EPSG:4326', 'EPSG:21781');
## Why is the order of a coordinate [lon,lat], and not [lat,lon]?
Because of two different and incompatible conventions. Latitude and longitude
are normally given in that order. Maps are 2D representations/projections
of the earth's surface, with coordinates expressed in the `x,y` grid of the
[Cartesian system](https://en.wikipedia.org/wiki/Cartesian_coordinate_system).
As they are by convention drawn with west on the left and north at the top,
this means that `x` represents longitude, and `y` latitude. As stated above,
OpenLayers is designed to handle all projections, but the default view is in
projected Cartesian coordinates. It would make no sense to have duplicate
functions to handle coordinates in both the Cartesian `x,y` and `lat,lon`
systems, so the degrees of latitude and longitude should be entered as though
they were Cartesian, in other words, they are `lon,lat`.
If you have difficulty remembering which way round it is, use the language code
for English, `en`, as a mnemonic: East before North.
#### A practical example
So you want to center your map on a certain place on the earth and obviously you
need to have its coordinates for this. Let's assume you want your map centered
on Schladming, a beautiful place in Austria. Head over to the wikipedia

View File

@@ -31,7 +31,7 @@ Below you'll find a complete working example. Create a new file, copy in the co
target: 'map',
layers: [
new ol.layer.Tile({
source: new ol.source.MapQuest({layer: 'sat'})
source: new ol.source.OSM()
})
],
view: new ol.View({
@@ -85,7 +85,7 @@ The map in the application is contained in a [`<div>` HTML element](http://en.wi
target: 'map',
layers: [
new ol.layer.Tile({
source: new ol.source.MapQuest({layer: 'sat'})
source: new ol.source.OSM()
})
],
view: new ol.View({
@@ -95,7 +95,7 @@ The map in the application is contained in a [`<div>` HTML element](http://en.wi
});
```
With this JavaScript code, a map object is created with a MapQuest Open Aerial layer zoomed on the African East coast. Let's break this down:
With this JavaScript code, a map object is created with an OSM layer zoomed on the African East coast. Let's break this down:
The following line creates an OpenLayers `Map` object. Just by itself, this does nothing since there's no layers or interaction attached to it.
@@ -114,7 +114,7 @@ The `layers: [ ... ]` array is used to define the list of layers available in th
```js
layers: [
new ol.layer.Tile({
source: new ol.source.MapQuest({layer: 'sat'})
source: new ol.source.OSM()
})
]
```

View File

@@ -160,15 +160,15 @@ The minimum config file looks like this:
"closure_entry_point": "app",
"externs": [
"node_modules/openlayers/externs/bingmaps.js",
"node_modules/openlayers/externs/cartodb.js",
"node_modules/openlayers/externs/closure-compiler.js",
"node_modules/openlayers/externs/esrijson.js",
"node_modules/openlayers/externs/geojson.js",
"node_modules/openlayers/externs/proj4js.js",
"node_modules/openlayers/externs/tilejson.js",
"node_modules/openlayers/externs/topojson.js"
],
"define": [
"goog.dom.ASSUME_STANDARDS_MODE=true",
"goog.json.USE_NATIVE_JSON=true",
"goog.DEBUG=false",
"ol.ENABLE_DOM=false",
"ol.ENABLE_WEBGL=false"
@@ -177,9 +177,6 @@ The minimum config file looks like this:
"node_modules/openlayers/externs/olx.js",
"node_modules/openlayers/externs/oli.js"
],
"jscomp_off": [
"unknownDefines"
],
"extra_annotation_name": [
"api", "observable"
],
@@ -215,15 +212,15 @@ Here is a version of `config.json` with more compilation checks enabled:
"closure_entry_point": "app",
"externs": [
"node_modules/openlayers/externs/bingmaps.js",
"node_modules/openlayers/externs/cartodb.js",
"node_modules/openlayers/externs/closure-compiler.js",
"node_modules/openlayers/externs/esrijson.js",
"node_modules/openlayers/externs/geojson.js",
"node_modules/openlayers/externs/proj4js.js",
"node_modules/openlayers/externs/tilejson.js",
"node_modules/openlayers/externs/topojson.js"
],
"define": [
"goog.dom.ASSUME_STANDARDS_MODE=true",
"goog.json.USE_NATIVE_JSON=true",
"goog.DEBUG=false",
"ol.ENABLE_DOM=false",
"ol.ENABLE_WEBGL=false"
@@ -233,41 +230,12 @@ Here is a version of `config.json` with more compilation checks enabled:
"node_modules/openlayers/externs/oli.js"
],
"jscomp_error": [
"accessControls",
"ambiguousFunctionDecl",
"checkEventfulObjectDisposal",
"checkRegExp",
"checkTypes",
"checkVars",
"const",
"constantProperty",
"deprecated",
"duplicateMessage",
"es3",
"es5Strict",
"externsValidation",
"fileoverviewTags",
"globalThis",
"internetExplorerChecks",
"invalidCasts",
"misplacedTypeAnnotation",
"missingGetCssName",
"missingProperties",
"missingProvide",
"missingRequire",
"missingReturn",
"newCheckTypes",
"nonStandardJsDocs",
"suspiciousCode",
"strictModuleDepCheck",
"typeInvalidation",
"undefinedNames",
"undefinedVars",
"uselessCode",
"visibility"
"*"
],
"jscomp_off": [
"unknownDefines"
"unknownDefines",
"lintChecks",
"analyzerChecks"
],
"extra_annotation_name": [
"api", "observable"

View File

@@ -13,7 +13,7 @@ This particular tutorial explains how to create custom builds of OpenLayers 3.
## Requirements
OpenLayers 3's build tools use Node and Java, so you need to have Node and Java installed on your machine. You can run `node --version` and `java -version` to test that Node and Java are installed, respectively.
OpenLayers 3's build tools use Node and Java, so you need to have Node and Java installed on your machine. You can run `node --version` and `java -version` to test that Node and Java are installed, respectively. See [developing guide](https://github.com/openlayers/ol3/blob/master/DEVELOPING.md) for minimum version numbers required.
## Download OpenLayers
@@ -60,17 +60,12 @@ Creating a custom build requires writing a build configuration file. The format
"externs/topojson.js"
],
"define": [
"goog.dom.ASSUME_STANDARDS_MODE=true",
"goog.json.USE_NATIVE_JSON=true",
"goog.DEBUG=false"
],
"jscomp_off": [
"unknownDefines"
],
"extra_annotation_name": [
"api", "observable"
],
"compilation_level": "ADVANCED_OPTIMIZATIONS",
"compilation_level": "ADVANCED",
"manage_closure_dependencies": true
}
}
@@ -192,16 +187,19 @@ Now let's try a more complicated example: [`heatmaps-earthquakes`](http://openla
{
"exports": [
"ol.layer.Heatmap",
"ol.source.KML",
"ol.source.Vector",
"ol.format.KML",
"ol.layer.Heatmap#getSource",
"ol.source.KML#on",
"ol.source.Vector#on",
"ol.source.VectorEvent#feature",
"ol.Feature#get",
"ol.Feature#set",
"ol.layer.Tile",
"ol.source.Stamen",
"ol.Map",
"ol.View"
"ol.View",
"ol.layer.Heatmap#setRadius",
"ol.layer.Heatmap#setBlur"
],
"compile": {
"externs": [
@@ -213,10 +211,9 @@ Now let's try a more complicated example: [`heatmaps-earthquakes`](http://openla
"ol.ENABLE_WEBGL=false",
"ol.ENABLE_PROJ4JS=false",
"ol.ENABLE_IMAGE=false",
"goog.dom.ASSUME_STANDARDS_MODE=true",
"goog.DEBUG=false"
],
"compilation_level": "ADVANCED_OPTIMIZATIONS",
"compilation_level": "ADVANCED",
"manage_closure_dependencies": true
}
}
@@ -226,6 +223,10 @@ The exports are given here in the order in which they occur in the `heatmaps-ear
As this example uses a vector layer it is necessary to remove `"ol.ENABLE_VECTOR=false"` in the `define` section of the configuration.
## Maintaining the code
If you installed OpenLayers from the Node package, you can use `npm` to upgrade to the latest version. If you cloned the Github repo, simply pulling in the latest code may not be enough, as some of the packages used, for example, the compiler, may need upgrading too. Do this by using `npm install` rather than `npm update`.
## Conclusion
This tutorial should have given you the information you need to create custom builds, i.e. builds tailored to your application. See the [tasks readme](https://github.com/openlayers/ol3/tree/master/tasks/readme.md) for more information on the build scripts and the properties you can use in the build configuration file.

View File

@@ -24,7 +24,7 @@ Although Closure library functions are widely used within OL3, none of them are
Unlike in, say, Node, where a module's exports are fixed in the source, with Closure Compiler, exports can be defined at compile time. This makes it easy to create builds that are customized to the needs of a particular site or application: a __custom build__ only exports those properties and methods needed by the site or application. As the full build is large, and will probably become larger as new features are added to the API, it's recommended that sites create a custom build for production software.
## Renderers and Browser Support
The library currently includes three renderers: Canvas, DOM, and WebGL. All three support raster data from tile/image servers, but only the Canvas renderer currently supports vector data. This means that only those browsers that [support Canvas](http://caniuse.com/canvas) can handle vector data. In particular, this excludes Internet Explorer versions before 9, though there is some support for those in the DOM renderer. Clearly, the WebGL renderer can only be used on those devices and browsers supporting WebGL.
The library currently includes three renderers: Canvas, DOM, and WebGL. All three support both raster data from tile/image servers, and vector data; WebGL however only supports Point vectors and does not support labels. Clearly only those browsers that [support Canvas](http://caniuse.com/canvas) can use the Canvas renderer. Equally, the WebGL renderer can only be used on those devices and [browsers](http://caniuse.com/webgl) that support WebGL. Internet Explorer versions before 9 are not supported at all.
The library is intended for use on both desktop/laptop and mobile devices.

View File

@@ -45,7 +45,7 @@ The easiest way to use a custom projection is to add the [Proj4js](http://proj4j
Following example shows definition of a [British National Grid](http://epsg.io/27700):
``` html
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/proj4js/2.3.12/proj4.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/proj4js/2.3.14/proj4.js"></script>
```
``` javascript

View File

@@ -1,6 +1,5 @@
{
"globals": {
"FastClick": false,
"$": false,
"arc": false,
"common": false,

View File

@@ -0,0 +1,11 @@
---
layout: example.html
title: Image ArcGIS MapServer
shortdesc: Example of an image ArcGIS layer.
docs: >
This example shows how to use a dynamic ArcGIS REST MapService.
This source type supports Map and Image Services. For dyamic ArcGIS
services.
tags: arcgis, image, dynamiclayer"
---
<div id="map" class="map"></div>

30
examples/arcgis-image.js Normal file
View File

@@ -0,0 +1,30 @@
goog.require('ol.Map');
goog.require('ol.View');
goog.require('ol.layer.Tile');
goog.require('ol.layer.Image');
goog.require('ol.source.OSM');
goog.require('ol.source.ImageArcGISRest');
var url = 'http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/' +
'Specialty/ESRI_StateCityHighway_USA/MapServer';
var layers = [
new ol.layer.Tile({
source: new ol.source.OSM()
}),
new ol.layer.Image({
source: new ol.source.ImageArcGISRest({
ratio: 1,
params: {},
url: url
})
})
];
var map = new ol.Map({
layers: layers,
target: 'map',
view: new ol.View({
center: [-10997148, 4569099],
zoom: 4
})
});

View File

@@ -1,7 +1,7 @@
goog.require('ol.Map');
goog.require('ol.View');
goog.require('ol.layer.Tile');
goog.require('ol.source.MapQuest');
goog.require('ol.source.OSM');
goog.require('ol.source.TileArcGISRest');
var url = 'http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/' +
@@ -9,7 +9,7 @@ var url = 'http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/' +
var layers = [
new ol.layer.Tile({
source: new ol.source.MapQuest({layer: 'sat'})
source: new ol.source.OSM()
}),
new ol.layer.Tile({
extent: [-13884991, 2870341, -7455066, 6338219],

View File

@@ -6,7 +6,7 @@ docs: >
<p>When the Bing Maps tile service doesn't have tiles for a given resolution and region it returns "placeholder" tiles indicating that. Zoom the map beyond level 19 to see the "placeholder" tiles. If you want OpenLayers to display stretched tiles in place of "placeholder" tiles beyond zoom level 19 then set <code>maxZoom</code> to <code>19</code> in the options passed to <code>ol.source.BingMaps</code>.</p>
tags: "bing, bing-maps"
cloak:
AkGbxXx6tDWf1swIhPJyoAVp06H0s0gDTYslNWWHZ6RoPqMpB9ld5FY1WutX8UoF: Your Bing Maps Key from http://bingmapsportal.com/ here
AkGbxXx6tDWf1swIhPJyoAVp06H0s0gDTYslNWWHZ6RoPqMpB9ld5FY1WutX8UoF: Your Bing Maps Key from http://www.bingmapsportal.com/ here
---
<div id="map" class="map"></div>
<select id="layer-select">

View File

@@ -6,8 +6,8 @@ docs: >
This example shows how to customize the buttons tooltips with <a href="http://getbootstrap.com/javascript/#tooltips">Bootstrap</a>.
tags: "custom, tooltip"
resources:
- https://code.jquery.com/jquery-1.11.2.min.js
- https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css
- https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js
- https://code.jquery.com/jquery-2.2.3.min.js
- https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css
- https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js
---
<div id="map" class="map"></div>

26
examples/cartodb.html Normal file
View File

@@ -0,0 +1,26 @@
---
layout: example.html
title: CartoDB source example
shortdesc: Example of a cartodb map.
docs: >
A simple example with an anonymous cartodb map
tags: "simple, openstreetmap, attribution"
---
<div class="row-fluid">
<div class="span12">
<div id="map" class="map"></div>
<div>
<form class="form-horizontal">
<label>
Show countries larger than
<select id="country-area" class="form-control">
<option value="0" default>0 ㎢</option>
<option value="5000">5000 ㎢</option>
<option value="10000">10000 ㎢</option>
<option value="50000">50000 ㎢</option>
<option value="100000">100000 ㎢</option>
</select>
</label>
</form>
</div>
</div>

48
examples/cartodb.js Normal file
View File

@@ -0,0 +1,48 @@
goog.require('ol.Map');
goog.require('ol.View');
goog.require('ol.layer.Tile');
goog.require('ol.source.CartoDB');
goog.require('ol.source.OSM');
var mapConfig = {
'layers': [{
'type': 'cartodb',
'options': {
'cartocss_version': '2.1.1',
'cartocss': '#layer { polygon-fill: #F00; }',
'sql': 'select * from european_countries_e where area > 0'
}
}]
};
var cartoDBSource = new ol.source.CartoDB({
account: 'documentation',
config: mapConfig
});
var map = new ol.Map({
layers: [
new ol.layer.Tile({
source: new ol.source.OSM()
}),
new ol.layer.Tile({
source: cartoDBSource
})
],
target: 'map',
view: new ol.View({
center: [0, 0],
zoom: 2
})
});
function setArea(n) {
mapConfig.layers[0].options.sql =
'select * from european_countries_e where area > ' + n;
cartoDBSource.setConfig(mapConfig);
}
document.getElementById('country-area').addEventListener('change', function() {
setArea(this.value);
});

View File

@@ -5,7 +5,7 @@ goog.require('ol.geom.Point');
goog.require('ol.layer.Tile');
goog.require('ol.layer.Vector');
goog.require('ol.source.Cluster');
goog.require('ol.source.MapQuest');
goog.require('ol.source.OSM');
goog.require('ol.source.Vector');
goog.require('ol.style.Circle');
goog.require('ol.style.Fill');
@@ -62,7 +62,7 @@ var clusters = new ol.layer.Vector({
});
var raster = new ol.layer.Tile({
source: new ol.source.MapQuest({layer: 'sat'})
source: new ol.source.OSM()
});
var map = new ol.Map({

View File

@@ -22,8 +22,8 @@ var twoPi = 2 * Math.PI;
/**
* Convert an RGB pixel into an HCL pixel.
* @param {ol.raster.Pixel} pixel A pixel in RGB space.
* @return {ol.raster.Pixel} A pixel in HCL space.
* @param {Array.<number>} pixel A pixel in RGB space.
* @return {Array.<number>} A pixel in HCL space.
*/
function rgb2hcl(pixel) {
var red = rgb2xyz(pixel[0]);
@@ -57,8 +57,8 @@ function rgb2hcl(pixel) {
/**
* Convert an HCL pixel into an RGB pixel.
* @param {ol.raster.Pixel} pixel A pixel in HCL space.
* @return {ol.raster.Pixel} A pixel in RGB space.
* @param {Array.<number>} pixel A pixel in HCL space.
* @return {Array.<number>} A pixel in RGB space.
*/
function hcl2rgb(pixel) {
var h = pixel[0];

View File

@@ -0,0 +1,9 @@
---
layout: example.html
title: Custom Icon
shortdesc: Example using a custom attribution icon object
docs: >
This example creates a custom element for the attribution icon
tags: "icon, element"
---
<div id="map" class="map"><div id="popup"></div></div>

27
examples/custom-icon.js Normal file
View File

@@ -0,0 +1,27 @@
goog.require('ol.Map');
goog.require('ol.View');
goog.require('ol.layer.Tile');
goog.require('ol.source.OSM');
var logoElement = document.createElement('a');
logoElement.href = 'http://www.osgeo.org/';
logoElement.target = '_blank';
var logoImage = document.createElement('img');
logoImage.src = 'http://www.osgeo.org/sites/all/themes/osgeo/logo.png';
logoElement.appendChild(logoImage);
var map = new ol.Map({
layers: [
new ol.layer.Tile({
source: new ol.source.OSM()
})
],
target: 'map',
view: new ol.View({
center: [0, 0],
zoom: 2
}),
logo: logoElement
});

File diff suppressed because one or more lines are too long

View File

@@ -1,43 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<sld:StyledLayerDescriptor xmlns="http://www.opengis.net/sld" xmlns:sld="http://www.opengis.net/sld" xmlns:ogc="http://www.opengis.net/ogc" xmlns:gml="http://www.opengis.net/gml" version="1.0.0">
<sld:NamedLayer>
<sld:Name>countries</sld:Name>
<sld:UserStyle>
<sld:Name>countries</sld:Name>
<sld:Title>A sample style for countries</sld:Title>
<sld:IsDefault>1</sld:IsDefault>
<sld:Abstract>A sample style for countries</sld:Abstract>
<sld:FeatureTypeStyle>
<sld:Name>name</sld:Name>
<sld:Rule>
<sld:Name>Sample</sld:Name>
<sld:Title>Sample</sld:Title>
<sld:PolygonSymbolizer>
<sld:Fill>
<sld:CssParameter name="fill">#ff0000</sld:CssParameter>
<sld:CssParameter name="fill-opacity">0.6</sld:CssParameter>
</sld:Fill>
<sld:Stroke>
<sld:CssParameter name="stroke">#00FF00</sld:CssParameter>
<sld:CssParameter name="stroke-opacity">0.5</sld:CssParameter>
<sld:CssParameter name="stroke-width">4</sld:CssParameter>
</sld:Stroke>
</sld:PolygonSymbolizer>
</sld:Rule>
<sld:Rule>
<sld:MaxScaleDenominator>20000000</sld:MaxScaleDenominator>
<sld:TextSymbolizer>
<sld:Label>
<ogc:PropertyName>name</ogc:PropertyName>
</sld:Label>
<sld:Font>
<sld:CssParameter name="font-family">Arial</sld:CssParameter>
<sld:CssParameter name="font-size">10</sld:CssParameter>
<sld:CssParameter name="font-style">Normal</sld:CssParameter>
</sld:Font>
</sld:TextSymbolizer>
</sld:Rule>
</sld:FeatureTypeStyle>
</sld:UserStyle>
</sld:NamedLayer>
</sld:StyledLayerDescriptor>

View File

@@ -6,7 +6,7 @@ docs: >
Example of using the drag-and-drop interaction with a ol.source.ImageVector. Drag and drop GPX, GeoJSON, IGC, KML, or TopoJSON files on to the map. Each file is rendered to an image on the client.
tags: "drag-and-drop-image-vector, gpx, geojson, igc, kml, topojson, vector, image"
cloak:
AkGbxXx6tDWf1swIhPJyoAVp06H0s0gDTYslNWWHZ6RoPqMpB9ld5FY1WutX8UoF: Your Bing Maps Key from http://bingmapsportal.com/ here
AkGbxXx6tDWf1swIhPJyoAVp06H0s0gDTYslNWWHZ6RoPqMpB9ld5FY1WutX8UoF: Your Bing Maps Key from http://www.bingmapsportal.com/ here
---
<div id="map" class="map"></div>
<div id="info">&nbsp;</div>

View File

@@ -6,7 +6,7 @@ docs: >
Example of using the drag-and-drop interaction. Drag and drop GPX, GeoJSON, IGC, KML, or TopoJSON files on to the map. There is no projection transform support, so this will only work with data in EPSG:4326 and EPSG:3857.
tags: "drag-and-drop, gpx, geojson, igc, kml, topojson"
cloak:
AkGbxXx6tDWf1swIhPJyoAVp06H0s0gDTYslNWWHZ6RoPqMpB9ld5FY1WutX8UoF: Your Bing Maps Key from http://bingmapsportal.com/ here
AkGbxXx6tDWf1swIhPJyoAVp06H0s0gDTYslNWWHZ6RoPqMpB9ld5FY1WutX8UoF: Your Bing Maps Key from http://www.bingmapsportal.com/ here
---
<div id="map" class="map"></div>
<div id="info">&nbsp;</div>

View File

@@ -3,7 +3,7 @@ goog.require('ol.View');
goog.require('ol.interaction');
goog.require('ol.interaction.DragRotateAndZoom');
goog.require('ol.layer.Tile');
goog.require('ol.source.MapQuest');
goog.require('ol.source.OSM');
var map = new ol.Map({
@@ -12,7 +12,7 @@ var map = new ol.Map({
]),
layers: [
new ol.layer.Tile({
source: new ol.source.MapQuest({layer: 'sat'})
source: new ol.source.OSM()
})
],
renderer: common.getRendererFromQueryString(),

View File

@@ -6,7 +6,7 @@ goog.require('ol.interaction.Draw');
goog.require('ol.interaction.Modify');
goog.require('ol.layer.Tile');
goog.require('ol.layer.Vector');
goog.require('ol.source.MapQuest');
goog.require('ol.source.OSM');
goog.require('ol.source.Vector');
goog.require('ol.style.Circle');
goog.require('ol.style.Fill');
@@ -14,7 +14,7 @@ goog.require('ol.style.Stroke');
goog.require('ol.style.Style');
var raster = new ol.layer.Tile({
source: new ol.source.MapQuest({layer: 'sat'})
source: new ol.source.OSM()
});
var map = new ol.Map({

View File

@@ -4,7 +4,7 @@ goog.require('ol.geom.Polygon');
goog.require('ol.interaction.Draw');
goog.require('ol.layer.Tile');
goog.require('ol.layer.Vector');
goog.require('ol.source.MapQuest');
goog.require('ol.source.OSM');
goog.require('ol.source.Vector');
goog.require('ol.style.Circle');
goog.require('ol.style.Fill');
@@ -12,7 +12,7 @@ goog.require('ol.style.Stroke');
goog.require('ol.style.Style');
var raster = new ol.layer.Tile({
source: new ol.source.MapQuest({layer: 'sat'})
source: new ol.source.OSM()
});
var source = new ol.source.Vector({wrapX: false});

View File

@@ -4,7 +4,7 @@ goog.require('ol.View');
goog.require('ol.geom.MultiPoint');
goog.require('ol.geom.Point');
goog.require('ol.layer.Tile');
goog.require('ol.source.MapQuest');
goog.require('ol.source.OSM');
goog.require('ol.style.Circle');
goog.require('ol.style.Fill');
goog.require('ol.style.Stroke');
@@ -14,7 +14,7 @@ goog.require('ol.style.Style');
var map = new ol.Map({
layers: [
new ol.layer.Tile({
source: new ol.source.MapQuest({layer: 'sat'})
source: new ol.source.OSM()
})
],
renderer: common.getRendererFromQueryString(),
@@ -25,11 +25,13 @@ var map = new ol.Map({
})
});
var imageStyle = new ol.style.Circle({
radius: 5,
snapToPixel: false,
fill: new ol.style.Fill({color: 'yellow'}),
stroke: new ol.style.Stroke({color: 'red', width: 1})
var imageStyle = new ol.style.Style({
image: new ol.style.Circle({
radius: 5,
snapToPixel: false,
fill: new ol.style.Fill({color: 'yellow'}),
stroke: new ol.style.Stroke({color: 'red', width: 1})
})
});
var headInnerImageStyle = new ol.style.Style({
@@ -40,10 +42,12 @@ var headInnerImageStyle = new ol.style.Style({
})
});
var headOuterImageStyle = new ol.style.Circle({
radius: 5,
snapToPixel: false,
fill: new ol.style.Fill({color: 'black'})
var headOuterImageStyle = new ol.style.Style({
image: new ol.style.Circle({
radius: 5,
snapToPixel: false,
fill: new ol.style.Fill({color: 'black'})
})
});
var n = 200;
@@ -63,16 +67,16 @@ map.on('postcompose', function(event) {
var y = (R + r) * Math.sin(t) + p * Math.sin((R + r) * t / r);
coordinates.push([x, y]);
}
vectorContext.setImageStyle(imageStyle);
vectorContext.drawMultiPointGeometry(
new ol.geom.MultiPoint(coordinates), null);
vectorContext.setStyle(imageStyle);
vectorContext.drawGeometry(new ol.geom.MultiPoint(coordinates));
var headPoint = new ol.geom.Point(coordinates[coordinates.length - 1]);
var headFeature = new ol.Feature(headPoint);
vectorContext.drawFeature(headFeature, headInnerImageStyle);
vectorContext.setImageStyle(headOuterImageStyle);
vectorContext.drawMultiPointGeometry(headPoint, null);
vectorContext.setStyle(headOuterImageStyle);
vectorContext.drawGeometry(headPoint);
vectorContext.setStyle(headInnerImageStyle);
vectorContext.drawGeometry(headPoint);
map.render();
});

View File

@@ -9,7 +9,6 @@
}
.tooltip.in {
opacity: 1;
filter: alpha(opacity=100);
}
.tooltip.top .tooltip-arrow {
border-top-color: white;

View File

@@ -13,6 +13,12 @@ goog.require('ol.style.Stroke');
goog.require('ol.style.Style');
var symbol = [[0, 0], [4, 2], [6, 0], [10, 5], [6, 3], [4, 5], [0, 0]];
var scale;
var scaleFunction = function(coordinate) {
return [coordinate[0] * scale, coordinate[1] * scale];
};
var styleCache = {};
var styleFunction = function(feature) {
// 2012_Earthquakes_Mag5.kml stores the magnitude of each earthquake in a
@@ -21,22 +27,23 @@ var styleFunction = function(feature) {
var name = feature.get('name');
var magnitude = parseFloat(name.substr(2));
var size = parseInt(10 + 40 * (magnitude - 5), 10);
scale = size / 10;
var style = styleCache[size];
if (!style) {
var canvas =
/** @type {HTMLCanvasElement} */ (document.createElement('canvas'));
var render = ol.render.toContext(
var vectorContext = ol.render.toContext(
/** @type {CanvasRenderingContext2D} */ (canvas.getContext('2d')),
{size: [size + 2, size + 2], pixelRatio: size / 10});
render.setFillStrokeStyle(
new ol.style.Fill({color: 'rgba(255, 153, 0, 0.4)'}),
new ol.style.Stroke({color: 'rgba(255, 204, 0, 0.2)', width: 1}));
render.drawPolygonGeometry(new ol.geom.Polygon(
[[[0, 0], [4, 2], [6, 0], [10, 5], [6, 3], [4, 5], [0, 0]]]));
{size: [size, size], pixelRatio: 1});
vectorContext.setStyle(new ol.style.Style({
fill: new ol.style.Fill({color: 'rgba(255, 153, 0, 0.4)'}),
stroke: new ol.style.Stroke({color: 'rgba(255, 204, 0, 0.2)', width: 2})
}));
vectorContext.drawGeometry(new ol.geom.Polygon([symbol.map(scaleFunction)]));
style = new ol.style.Style({
image: new ol.style.Icon({
img: canvas,
imgSize: [canvas.width, canvas.height],
imgSize: [size, size],
rotation: 1.2
})
});

View File

@@ -6,7 +6,7 @@ docs: >
Example of exporting a map as a PDF using the <a href="https://github.com/MrRio/jsPDF" target="_blank">jsPDF</a> library.
tags: "export, pdf, openstreetmap"
resources:
- http://mrrio.github.io/jsPDF/dist/jspdf.min.js
- https://cdnjs.cloudflare.com/ajax/libs/jspdf/1.2.61/jspdf.min.js
---
<div class="row-fluid">
<div class="span12">

View File

@@ -1,3 +1,4 @@
// NOCOMPILE
goog.require('ol.Map');
goog.require('ol.View');
goog.require('ol.control');

View File

@@ -12,6 +12,7 @@ goog.require('ol.source.OSM');
goog.require('ol.source.Vector');
goog.require('ol.style.Circle');
goog.require('ol.style.Stroke');
goog.require('ol.style.Style');
var map = new ol.Map({
@@ -67,17 +68,19 @@ function flash(feature) {
var radius = ol.easing.easeOut(elapsedRatio) * 25 + 5;
var opacity = ol.easing.easeOut(1 - elapsedRatio);
var flashStyle = new ol.style.Circle({
radius: radius,
snapToPixel: false,
stroke: new ol.style.Stroke({
color: 'rgba(255, 0, 0, ' + opacity + ')',
width: 1
var style = new ol.style.Style({
image: new ol.style.Circle({
radius: radius,
snapToPixel: false,
stroke: new ol.style.Stroke({
color: 'rgba(255, 0, 0, ' + opacity + ')',
width: 0.25 + opacity
})
})
});
vectorContext.setImageStyle(flashStyle);
vectorContext.drawPointGeometry(flashGeom, null);
vectorContext.setStyle(style);
vectorContext.drawGeometry(flashGeom);
if (elapsed > duration) {
ol.Observable.unByKey(listenerKey);
return;

View File

@@ -27,12 +27,11 @@ var map = new ol.Map({
})
});
var defaultStroke = new ol.style.Stroke({
color: '#EAE911',
width: 2
});
var defaultStyle = new ol.style.Style({
stroke: defaultStroke
var style = new ol.style.Style({
stroke: new ol.style.Stroke({
color: '#EAE911',
width: 2
})
});
var flightsSource;
@@ -47,14 +46,13 @@ var pointsPerMs = 0.1;
var animateFlights = function(event) {
var vectorContext = event.vectorContext;
var frameState = event.frameState;
vectorContext.setFillStrokeStyle(null, defaultStroke);
vectorContext.setStyle(style);
var features = flightsSource.getFeatures();
for (var i = 0; i < features.length; i++) {
var feature = features[i];
if (!feature.get('finished')) {
// only draw the lines for which the animation has not
// finished yet
// only draw the lines for which the animation has not finished yet
var coords = feature.getGeometry().getCoordinates();
var elapsedTime = frameState.time - feature.get('start');
var elapsedPoints = elapsedTime * pointsPerMs;
@@ -67,19 +65,17 @@ var animateFlights = function(event) {
var currentLine = new ol.geom.LineString(coords.slice(0, maxIndex));
// directly draw the line with the vector context
vectorContext.drawLineStringGeometry(currentLine, feature);
vectorContext.drawGeometry(currentLine);
}
}
// tell OL3 to continue the postcompose animation
// tell OL3 to continue the animation
map.render();
};
flightsSource = new ol.source.Vector({
wrapX: false,
attributions: [new ol.Attribution({
html: 'Flight data by ' +
'<a href="http://openflights.org/data.html">OpenFlights</a>,'
})],
attributions: 'Flight data by ' +
'<a href="http://openflights.org/data.html">OpenFlights</a>,',
loader: function() {
var url = 'data/openflights/flights.json';
fetch(url).then(function(response) {
@@ -121,7 +117,7 @@ var flightsLayer = new ol.layer.Vector({
// if the animation is still active for a feature, do not
// render the feature with the layer style
if (feature.get('finished')) {
return defaultStyle;
return style;
} else {
return null;
}

View File

@@ -33,7 +33,7 @@ var map = new ol.Map({
});
function makeFractal(depth) {
var geometry = /** @type {ol.geom.LineString} */ (triangle.clone());
var geometry = triangle.clone();
var graph = coordsToGraph(geometry.getCoordinates());
for (var i = 0; i < depth; ++i) {
var node = graph;

View File

@@ -7,6 +7,6 @@ docs: >
<p>If there is no button on the map, your browser does not support the <a href="http://caniuse.com/#feat=fullscreen">Full Screen API</a>.</p>
tags: "full-screen, drag, rotate, zoom, bing, bing-maps"
cloak:
AkGbxXx6tDWf1swIhPJyoAVp06H0s0gDTYslNWWHZ6RoPqMpB9ld5FY1WutX8UoF: Your Bing Maps Key from http://bingmapsportal.com/ here
AkGbxXx6tDWf1swIhPJyoAVp06H0s0gDTYslNWWHZ6RoPqMpB9ld5FY1WutX8UoF: Your Bing Maps Key from http://www.bingmapsportal.com/ here
---
<div id="map" class="map"></div>

View File

@@ -7,6 +7,6 @@ docs: >
<p>If there is no button on the map, your browser does not support the <a href="http://caniuse.com/#feat=fullscreen">Full Screen API</a>.</p>
tags: "full-screen, bing, bing-maps"
cloak:
AkGbxXx6tDWf1swIhPJyoAVp06H0s0gDTYslNWWHZ6RoPqMpB9ld5FY1WutX8UoF: Your Bing Maps Key from http://bingmapsportal.com/ here
AkGbxXx6tDWf1swIhPJyoAVp06H0s0gDTYslNWWHZ6RoPqMpB9ld5FY1WutX8UoF: Your Bing Maps Key from http://www.bingmapsportal.com/ here
---
<div id="map" class="map"></div>

View File

@@ -10,7 +10,7 @@ tags: "fullscreen, geolocation, orientation, mobile"
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="chrome=1">
<meta name="viewport" content="initial-scale=1.0, user-scalable=no, width=device-width">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css" type="text/css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" type="text/css">
<link rel="stylesheet" href="../css/ol.css" type="text/css">
<link rel="stylesheet" href="./resources/layout.css" type="text/css">
<title>Mobile Geolocation Tracking with Orientation</title>
@@ -44,7 +44,7 @@ tags: "fullscreen, geolocation, orientation, mobile"
<button id="geolocate">Geolocate Me!</button>
<button id="simulate">Simulate</button>
</div>
<script src="http://code.jquery.com/jquery-1.9.1.min.js" type="text/javascript"></script>
<script src="http://code.jquery.com/jquery-2.2.3.min.js" type="text/javascript"></script>
<script src="./resources/common.js" type="text/javascript"></script>
<script src="loader.js?id=geolocation-orientation" type="text/javascript"></script>
</body>

View File

@@ -9,8 +9,6 @@ docs: >
`ol.format.WMSGetFeatureInfo` format object, which allows features returned
by a single WMS GetFeatureInfo request that asks for more than one layer
to be read by layer name.
resources:
- https://code.jquery.com/jquery-1.11.2.min.js
---
<table id="info">
<tr>

View File

@@ -1,24 +1,23 @@
goog.require('ol.format.WMSGetFeatureInfo');
$.ajax({
url: './data/wmsgetfeatureinfo/osm-restaurant-hotel.xml',
success: function(response) {
fetch('data/wmsgetfeatureinfo/osm-restaurant-hotel.xml').then(function(response) {
return response.text();
}).then(function(response) {
// this is the standard way to read the features
var allFeatures = new ol.format.WMSGetFeatureInfo().readFeatures(response);
$('#all').html(allFeatures.length.toString());
// this is the standard way to read the features
var allFeatures = new ol.format.WMSGetFeatureInfo().readFeatures(response);
document.getElementById('all').innerText = allFeatures.length.toString();
// when specifying the 'layers' options, only the features of those
// layers are returned by the format
var hotelFeatures = new ol.format.WMSGetFeatureInfo({
layers: ['hotel']
}).readFeatures(response);
$('#hotel').html(hotelFeatures.length.toString());
// when specifying the 'layers' options, only the features of those
// layers are returned by the format
var hotelFeatures = new ol.format.WMSGetFeatureInfo({
layers: ['hotel']
}).readFeatures(response);
document.getElementById('hotel').innerText = hotelFeatures.length.toString();
var restaurantFeatures = new ol.format.WMSGetFeatureInfo({
layers: ['restaurant']
}).readFeatures(response);
$('#restaurant').html(restaurantFeatures.length.toString());
var restaurantFeatures = new ol.format.WMSGetFeatureInfo({
layers: ['restaurant']
}).readFeatures(response);
document.getElementById('restaurant').innerText = restaurantFeatures.length.toString();
}
});

View File

@@ -6,7 +6,7 @@ docs: >
Example of using the GPX source.
tags: "GPX"
cloak:
AkGbxXx6tDWf1swIhPJyoAVp06H0s0gDTYslNWWHZ6RoPqMpB9ld5FY1WutX8UoF: Your Bing Maps Key from http://bingmapsportal.com/ here
AkGbxXx6tDWf1swIhPJyoAVp06H0s0gDTYslNWWHZ6RoPqMpB9ld5FY1WutX8UoF: Your Bing Maps Key from http://www.bingmapsportal.com/ here
---
<div id="map" class="map"></div>
<div id="info">&nbsp;</div>

View File

@@ -6,8 +6,8 @@ docs: >
Example using an icon to symbolize a point.
tags: "vector, style, icon, marker, popup"
resources:
- https://code.jquery.com/jquery-1.11.2.min.js
- https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css
- https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js
- https://code.jquery.com/jquery-2.2.3.min.js
- https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css
- https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js
---
<div id="map" class="map"><div id="popup"></div></div>

View File

@@ -59,7 +59,8 @@ var element = document.getElementById('popup');
var popup = new ol.Overlay({
element: element,
positioning: 'bottom-center',
stopEvent: false
stopEvent: false,
offset: [0, -50]
});
map.addOverlay(popup);
@@ -70,7 +71,8 @@ map.on('click', function(evt) {
return feature;
});
if (feature) {
popup.setPosition(evt.coordinate);
var coordinates = feature.getGeometry().getCoordinates();
popup.setPosition(coordinates);
$(element).popover({
'placement': 'top',
'html': true,

View File

@@ -86,10 +86,7 @@ var map = new ol.Map({
new ol.layer.Tile({
source: new ol.source.OSM({
attributions: [
new ol.Attribution({
html: 'All maps &copy; ' +
'<a href="http://www.opencyclemap.org/">OpenCycleMap</a>'
}),
'All maps © <a href="http://www.opencyclemap.org/">OpenCycleMap</a>',
ol.source.OSM.ATTRIBUTION
],
url: 'http://{a-c}.tile.opencyclemap.org/cycle/{z}/{x}/{y}.png'
@@ -155,27 +152,26 @@ map.on('click', function(evt) {
displaySnap(evt.coordinate);
});
var imageStyle = new ol.style.Circle({
radius: 5,
fill: null,
stroke: new ol.style.Stroke({
color: 'rgba(255,0,0,0.9)',
width: 1
})
});
var strokeStyle = new ol.style.Stroke({
var stroke = new ol.style.Stroke({
color: 'rgba(255,0,0,0.9)',
width: 1
});
var style = new ol.style.Style({
stroke: stroke,
image: new ol.style.Circle({
radius: 5,
fill: null,
stroke: stroke
})
});
map.on('postcompose', function(evt) {
var vectorContext = evt.vectorContext;
vectorContext.setStyle(style);
if (point !== null) {
vectorContext.setImageStyle(imageStyle);
vectorContext.drawPointGeometry(point);
vectorContext.drawGeometry(point);
}
if (line !== null) {
vectorContext.setFillStrokeStyle(null, strokeStyle);
vectorContext.drawLineStringGeometry(line);
vectorContext.drawGeometry(line);
}
});
@@ -187,8 +183,7 @@ var featureOverlay = new ol.layer.Vector({
radius: 5,
fill: new ol.style.Fill({
color: 'rgba(255,0,0,0.9)'
}),
stroke: null
})
})
})
});

View File

@@ -8,7 +8,7 @@ docs: >
In this example, the <code>postcompose</code> listener applies a filter to the image data.</p>
tags: "filter, image manipulation"
cloak:
AkGbxXx6tDWf1swIhPJyoAVp06H0s0gDTYslNWWHZ6RoPqMpB9ld5FY1WutX8UoF: Your Bing Maps Key from http://bingmapsportal.com/ here
AkGbxXx6tDWf1swIhPJyoAVp06H0s0gDTYslNWWHZ6RoPqMpB9ld5FY1WutX8UoF: Your Bing Maps Key from http://www.bingmapsportal.com/ here
---
<div id="map" class="map"></div>
<select id="kernel" name="kernel">

View File

@@ -5,7 +5,7 @@ goog.require('ol.layer.Image');
goog.require('ol.layer.Tile');
goog.require('ol.layer.Vector');
goog.require('ol.source.ImageVector');
goog.require('ol.source.MapQuest');
goog.require('ol.source.OSM');
goog.require('ol.source.Vector');
goog.require('ol.style.Fill');
goog.require('ol.style.Stroke');
@@ -15,7 +15,7 @@ goog.require('ol.style.Style');
var map = new ol.Map({
layers: [
new ol.layer.Tile({
source: new ol.source.MapQuest({layer: 'sat'})
source: new ol.source.OSM()
}),
new ol.layer.Image({
source: new ol.source.ImageVector({

View File

@@ -4,7 +4,7 @@
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="chrome=1">
<meta name="viewport" content="initial-scale=1.0, user-scalable=no, width=device-width">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css" type="text/css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" type="text/css">
<link rel="stylesheet" href="../css/ol.css" type="text/css">
<link rel="stylesheet" href="./resources/layout.css" type="text/css">
<style>
@@ -190,12 +190,15 @@
<span id="count"></span>
</form>
</div>
<ul class="nav navbar-nav pull-right">
<li><a href="../doc">Docs</a></li>
<li><a class="active" href="index.html">Examples</a></li>
<li><a href="../apidoc">API</a></li>
<li><a href="https://github.com/openlayers/ol3">Code</a></li>
</ul>
<!-- menu items that get hidden below 768px width -->
<nav class='collapse navbar-collapse navbar-responsive-collapse'>
<ul class="nav navbar-nav pull-right">
<li><a href="../doc">Docs</a></li>
<li><a class="active" href="index.html">Examples</a></li>
<li><a href="../apidoc">API</a></li>
<li><a href="https://github.com/openlayers/ol3">Code</a></li>
</ul>
</nav>
</div>
</header>

View File

@@ -7,7 +7,6 @@ docs: >
with OpenLayers 3.
tags: "vector, jsts, buffer"
resources:
- https://cdn.rawgit.com/bjornharrtell/jsts/gh-pages/lib/0.17.0/javascript.util.min.js
- https://cdn.rawgit.com/bjornharrtell/jsts/gh-pages/lib/0.17.0/jsts.min.js
- https://cdn.rawgit.com/bjornharrtell/jsts/gh-pages/1.0.2/jsts.min.js
---
<div id="map" class="map"></div>

View File

@@ -7,7 +7,7 @@ goog.require('ol.format.GeoJSON');
goog.require('ol.layer.Tile');
goog.require('ol.layer.Vector');
goog.require('ol.proj');
goog.require('ol.source.MapQuest');
goog.require('ol.source.OSM');
goog.require('ol.source.Vector');
@@ -18,7 +18,7 @@ fetch('data/geojson/roads-seoul.geojson').then(function(response) {
var format = new ol.format.GeoJSON();
var features = format.readFeatures(json, {featureProjection: 'EPSG:3857'});
var parser = new jsts.io.olParser();
var parser = new jsts.io.OL3Parser();
for (var i = 0; i < features.length; i++) {
var feature = features[i];
@@ -39,9 +39,7 @@ var vectorLayer = new ol.layer.Vector({
});
var rasterLayer = new ol.layer.Tile({
source: new ol.source.MapQuest({
layer: 'osm'
})
source: new ol.source.OSM()
});
var map = new ol.Map({

View File

@@ -9,7 +9,6 @@
}
.tooltip.in {
opacity: 1;
filter: alpha(opacity=100);
}
.tooltip.top .tooltip-arrow {
border-top-color: white;

View File

@@ -6,8 +6,8 @@ docs: >
This example parses a KML file and renders the features as a vector layer. The layer is given a <code>style</code> that renders earthquake locations with a size relative to their magnitude.
tags: "KML, vector, style, tooltip"
resources:
- https://code.jquery.com/jquery-1.11.2.min.js
- https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css
- https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js
- https://code.jquery.com/jquery-2.2.3.min.js
- https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css
- https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js
---
<div id="map" class="map"><div id="info"></div></div>

View File

@@ -7,8 +7,8 @@ docs: >
yellow with an opacity calculated based on the current offset to local noon.
tags: "KML, vector, style"
resources:
- https://code.jquery.com/jquery-1.11.2.min.js
- https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css
- https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js
- https://code.jquery.com/jquery-2.2.3.min.js
- https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css
- https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js
---
<div id="map" class="map"><div id="info"></div></div>

View File

@@ -6,7 +6,7 @@ docs: >
This example uses the <code>ol.format.KML</code> to parse KML for rendering with a vector source.
tags: "KML"
cloak:
AkGbxXx6tDWf1swIhPJyoAVp06H0s0gDTYslNWWHZ6RoPqMpB9ld5FY1WutX8UoF: Your Bing Maps Key from http://bingmapsportal.com/ here
AkGbxXx6tDWf1swIhPJyoAVp06H0s0gDTYslNWWHZ6RoPqMpB9ld5FY1WutX8UoF: Your Bing Maps Key from http://www.bingmapsportal.com/ here
---
<div id="map" class="map"></div>
<div id="info">&nbsp;</div>

View File

@@ -4,13 +4,12 @@ title: Limited Layer Extent
shortdesc: Restricting layer rendering to a limited extent.
docs: >
This example uses the <code>layer.setExtent()</code> method to
modify the extent of the overlay layer. Use the controls below
to limit rendering based on an extent.
modify the extent of the overlay layer. Use the controls above
to limit rendering based on an extent (approximate country bounds).
tags: "extent, tilejson"
---
<div id="map" class="map"></div>
<button type="button" class="btn btn-default" id="northwest">northwest</button>
<button type="button" class="btn btn-default" id="northeast">northeast</button>
<button type="button" class="btn btn-default" id="southeast">southeast</button>
<button type="button" class="btn btn-default" id="southwest">southwest</button>
<button type="button" class="btn btn-default" id="world">world</button>
<button type="button" class="btn btn-default" id="India">India</button>
<button type="button" class="btn btn-default" id="Argentina">Argentina</button>
<button type="button" class="btn btn-default" id="Nigeria">Nigeria</button>
<button type="button" class="btn btn-default" id="Sweden">Sweden</button>

View File

@@ -9,26 +9,25 @@ function transform(extent) {
}
var extents = {
northwest: transform([-180, 0, 0, 85]),
northeast: transform([0, 0, 180, 85]),
southeast: transform([0, -85, 180, 0]),
southwest: transform([-180, -85, 0, 0]),
world: transform([-180, -85, 180, 85])
India: transform([68.17665, 7.96553, 97.40256, 35.49401]),
Argentina: transform([-73.41544, -55.25, -53.62835, -21.83231]),
Nigeria: transform([2.6917, 4.24059, 14.57718, 13.86592]),
Sweden: transform([11.02737, 55.36174, 23.90338, 69.10625])
};
var base = new ol.layer.Tile({
source: new ol.source.TileJSON({
url: 'http://api.tiles.mapbox.com/v3/' +
'mapbox.world-black.json',
'mapbox.world-light.json',
crossOrigin: 'anonymous'
})
});
var overlay = new ol.layer.Tile({
extent: extents.northwest,
extent: extents.India,
source: new ol.source.TileJSON({
url: 'http://api.tiles.mapbox.com/v3/' +
'mapbox.world-glass.json',
'mapbox.world-black.json',
crossOrigin: 'anonymous'
})
});

View File

@@ -6,13 +6,13 @@ docs: >
Example of a map with layer group.
tags: "tilejson, input, bind, group, layergroup"
resources:
- https://code.jquery.com/jquery-1.11.2.min.js
- https://code.jquery.com/jquery-2.2.3.min.js
---
<div id="map" class="map"></div>
<div id="layertree">
<h5>Click on layer nodes below to change their properties.</h5>
<ul>
<li><span>OpenAerial layer</span>
<li><span>OSM layer</span>
<fieldset id="layer0">
<label class="checkbox" for="visible0">
<input id="visible0" class="visible" type="checkbox"/>visibility

View File

@@ -3,13 +3,13 @@ goog.require('ol.View');
goog.require('ol.layer.Group');
goog.require('ol.layer.Tile');
goog.require('ol.proj');
goog.require('ol.source.MapQuest');
goog.require('ol.source.OSM');
goog.require('ol.source.TileJSON');
var map = new ol.Map({
layers: [
new ol.layer.Tile({
source: new ol.source.MapQuest({layer: 'sat'})
source: new ol.source.OSM()
}), new ol.layer.Group({
layers: [
new ol.layer.Tile({

View File

@@ -10,6 +10,6 @@ docs: >
<p>Move around the map to see the effect. Use the ↑ up and ↓ down arrow keys to adjust the spyglass size.</p>
tags: "spy, image manipulation"
cloak:
AkGbxXx6tDWf1swIhPJyoAVp06H0s0gDTYslNWWHZ6RoPqMpB9ld5FY1WutX8UoF: Your Bing Maps Key from http://bingmapsportal.com/ here
AkGbxXx6tDWf1swIhPJyoAVp06H0s0gDTYslNWWHZ6RoPqMpB9ld5FY1WutX8UoF: Your Bing Maps Key from http://www.bingmapsportal.com/ here
---
<div id="map" class="map"></div>

View File

@@ -6,7 +6,7 @@ docs: >
Example of a Layer swipe map.
tags: "swipe, openstreetmap"
cloak:
AkGbxXx6tDWf1swIhPJyoAVp06H0s0gDTYslNWWHZ6RoPqMpB9ld5FY1WutX8UoF: Your Bing Maps Key from http://bingmapsportal.com/ here
AkGbxXx6tDWf1swIhPJyoAVp06H0s0gDTYslNWWHZ6RoPqMpB9ld5FY1WutX8UoF: Your Bing Maps Key from http://www.bingmapsportal.com/ here
---
<div id="map" class="map"></div>
<input id="swipe" type="range" style="width: 100%">

View File

@@ -1,9 +1,9 @@
goog.require('ol.Map');
goog.require('ol.View');
goog.require('ol.layer.Tile');
goog.require('ol.source.MapQuest');
goog.require('ol.source.OSM');
var source = new ol.source.MapQuest({layer: 'sat'});
var source = new ol.source.OSM();
var layer = new ol.layer.Tile();

View File

@@ -4,14 +4,14 @@ goog.require('ol.geom.Point');
goog.require('ol.interaction.Draw');
goog.require('ol.layer.Tile');
goog.require('ol.layer.Vector');
goog.require('ol.source.MapQuest');
goog.require('ol.source.OSM');
goog.require('ol.source.Vector');
goog.require('ol.style.Icon');
goog.require('ol.style.Stroke');
goog.require('ol.style.Style');
var raster = new ol.layer.Tile({
source: new ol.source.MapQuest({layer: 'sat'})
source: new ol.source.OSM()
});
var source = new ol.source.Vector();

View File

@@ -9,10 +9,7 @@ goog.require('ol.source.OSM');
var openCycleMapLayer = new ol.layer.Tile({
source: new ol.source.OSM({
attributions: [
new ol.Attribution({
html: 'All maps &copy; ' +
'<a href="http://www.opencyclemap.org/">OpenCycleMap</a>'
}),
'All maps © <a href="http://www.opencyclemap.org/">OpenCycleMap</a>',
ol.source.OSM.ATTRIBUTION
],
url: 'http://{a-c}.tile.opencyclemap.org/cycle/{z}/{x}/{y}.png'
@@ -22,10 +19,7 @@ var openCycleMapLayer = new ol.layer.Tile({
var openSeaMapLayer = new ol.layer.Tile({
source: new ol.source.OSM({
attributions: [
new ol.Attribution({
html: 'All maps &copy; ' +
'<a href="http://www.openseamap.org/">OpenSeaMap</a>'
}),
'All maps © <a href="http://www.openseamap.org/">OpenSeaMap</a>',
ol.source.OSM.ATTRIBUTION
],
opaque: false,

View File

@@ -43,13 +43,12 @@ function tileUrlFunction(tileCoord) {
var map = new ol.Map({
layers: [
new ol.layer.VectorTile({
renderMode: 'vector',
preload: Infinity,
source: new ol.source.VectorTile({
attributions: [new ol.Attribution({
html: '© <a href="https://www.mapbox.com/map-feedback/">Mapbox</a> ' +
'© <a href="http://www.openstreetmap.org/copyright">' +
'OpenStreetMap contributors</a>'
})],
attributions: '© <a href="https://www.mapbox.com/map-feedback/">Mapbox</a> ' +
'© <a href="http://www.openstreetmap.org/copyright">' +
'OpenStreetMap contributors</a>',
format: new ol.format.MVT(),
tileGrid: new ol.tilegrid.TileGrid({
extent: ol.proj.get('EPSG:3857').getExtent(),

View File

@@ -17,11 +17,9 @@ var map = new ol.Map({
layers: [
new ol.layer.VectorTile({
source: new ol.source.VectorTile({
attributions: [new ol.Attribution({
html: '© <a href="https://www.mapbox.com/map-feedback/">Mapbox</a> ' +
'© <a href="http://www.openstreetmap.org/copyright">' +
'OpenStreetMap contributors</a>'
})],
attributions: '© <a href="https://www.mapbox.com/map-feedback/">Mapbox</a> ' +
'© <a href="http://www.openstreetmap.org/copyright">' +
'OpenStreetMap contributors</a>',
format: new ol.format.MVT(),
tileGrid: ol.tilegrid.createXYZ({maxZoom: 22}),
tilePixelRatio: 16,

View File

@@ -1,14 +0,0 @@
---
layout: example.html
title: MapQuest
shortdesc: Example of a MapQuest map.Shows how to create custom controls.
docs: >
Example of a MapQuest map.
tags: "mapquest"
---
<div id="map" class="map"></div>
<select id="layer-select">
<option value="Aerial">Aerial</option>
<option value="AerialWithLabels">Aerial with labels</option>
<option value="Road" selected>Road</option>
</select>

View File

@@ -1,56 +0,0 @@
goog.require('ol.Map');
goog.require('ol.View');
goog.require('ol.layer.Group');
goog.require('ol.layer.Tile');
goog.require('ol.proj');
goog.require('ol.source.MapQuest');
var layers = [
new ol.layer.Tile({
style: 'Road',
source: new ol.source.MapQuest({layer: 'osm'})
}),
new ol.layer.Tile({
style: 'Aerial',
visible: false,
source: new ol.source.MapQuest({layer: 'sat'})
}),
new ol.layer.Group({
style: 'AerialWithLabels',
visible: false,
layers: [
new ol.layer.Tile({
source: new ol.source.MapQuest({layer: 'sat'})
}),
new ol.layer.Tile({
source: new ol.source.MapQuest({layer: 'hyb'})
})
]
})
];
var map = new ol.Map({
layers: layers,
renderer: common.getRendererFromQueryString(),
target: 'map',
view: new ol.View({
center: ol.proj.transform(
[-73.979378, 40.702222], 'EPSG:4326', 'EPSG:3857'),
zoom: 9
})
});
var select = document.getElementById('layer-select');
function onChange() {
var style = select.value;
var i, ii;
for (i = 0, ii = layers.length; i < ii; ++i) {
layers[i].set('visible', (layers[i].get('style') == style));
}
}
select.addEventListener('change', onChange);
onChange();

View File

@@ -1,19 +1,17 @@
---
layout: example.html
title: Measure
shortdesc: Example of using the ol.interaction.Draw interaction for creating simple measuring application.
shortdesc: Example of using the ol.interaction.Draw interaction to create a simple measuring application.
docs: >
<p><i>NOTE: If use geodesic measures is not checked, measure is done in simple way on projected plane. Earth curvature is not taken into account</i></p>
<p><i>NOTE: By default, length and area are calculated using the projected coordinates. This is not accurate for projections like Mercator where the projected meters do not correspond to meters on the ground. To get a standarized measurement across all projections, use the geodesic measures.</i></p>
tags: "draw, edit, measure, vector"
resources:
- https://code.jquery.com/jquery-1.11.2.min.js
---
<div id="map" class="map"></div>
<form class="form-inline">
<label>Geometry type &nbsp;</label>
<label>Measurement type &nbsp;</label>
<select id="type">
<option value="length">Length</option>
<option value="area">Area</option>
<option value="length">Length (LineString)</option>
<option value="area">Area (Polygon)</option>
</select>
<label class="checkbox">
<input type="checkbox" id="geodesic">

View File

@@ -9,7 +9,7 @@ goog.require('ol.interaction.Draw');
goog.require('ol.layer.Tile');
goog.require('ol.layer.Vector');
goog.require('ol.proj');
goog.require('ol.source.MapQuest');
goog.require('ol.source.OSM');
goog.require('ol.source.Vector');
goog.require('ol.style.Circle');
goog.require('ol.style.Fill');
@@ -20,7 +20,7 @@ goog.require('ol.style.Style');
var wgs84Sphere = new ol.Sphere(6378137);
var raster = new ol.layer.Tile({
source: new ol.source.MapQuest({layer: 'sat'})
source: new ol.source.OSM()
});
var source = new ol.source.Vector();
@@ -117,7 +117,7 @@ var pointerMoveHandler = function(evt) {
helpTooltipElement.innerHTML = helpMsg;
helpTooltip.setPosition(evt.coordinate);
$(helpTooltipElement).removeClass('hidden');
helpTooltipElement.classList.remove('hidden');
};
@@ -132,8 +132,8 @@ var map = new ol.Map({
map.on('pointermove', pointerMoveHandler);
$(map.getViewport()).on('mouseout', function() {
$(helpTooltipElement).addClass('hidden');
map.getViewport().addEventListener('mouseout', function() {
helpTooltipElement.classList.add('hidden');
});
var typeSelect = document.getElementById('type');
@@ -174,7 +174,7 @@ var formatLength = function(line) {
/**
* Format length output.
* Format area output.
* @param {ol.geom.Polygon} polygon The polygon.
* @return {string} Formatted area.
*/
@@ -243,10 +243,10 @@ function addInteraction() {
var geom = evt.target;
var output;
if (geom instanceof ol.geom.Polygon) {
output = formatArea(/** @type {ol.geom.Polygon} */ (geom));
output = formatArea(geom);
tooltipCoord = geom.getInteriorPoint().getCoordinates();
} else if (geom instanceof ol.geom.LineString) {
output = formatLength(/** @type {ol.geom.LineString} */ (geom));
output = formatLength(geom);
tooltipCoord = geom.getLastCoordinate();
}
measureTooltipElement.innerHTML = output;

View File

@@ -4,7 +4,7 @@ title: Full-Screen Mobile
shortdesc: Example of a full screen map.
tags: "fullscreen, geolocation, mobile"
cloak:
AkGbxXx6tDWf1swIhPJyoAVp06H0s0gDTYslNWWHZ6RoPqMpB9ld5FY1WutX8UoF: Your Bing Maps Key from http://bingmapsportal.com/ here
AkGbxXx6tDWf1swIhPJyoAVp06H0s0gDTYslNWWHZ6RoPqMpB9ld5FY1WutX8UoF: Your Bing Maps Key from http://www.bingmapsportal.com/ here
---
<!doctype html>
<html lang="en">
@@ -24,9 +24,8 @@ cloak:
</head>
<body>
<div id="map" class="map"></div>
<script src="https://code.jquery.com/jquery-1.9.1.min.js" type="text/javascript"></script>
<script src="https://code.jquery.com/jquery-2.2.3.min.js" type="text/javascript"></script>
<script src="./resources/common.js" type="text/javascript"></script>
<script src="http://cdnjs.cloudflare.com/ajax/libs/fastclick/1.0.6/fastclick.min.js" type="text/javascript"></script>
<script src="loader.js?id=mobile-full-screen" type="text/javascript"></script>
</body>
</html>

View File

@@ -32,11 +32,3 @@ geolocation.once('change:position', function() {
view.setCenter(geolocation.getPosition());
view.setResolution(2.388657133911758);
});
// Use FastClick to eliminate the 300ms delay between a physical tap
// and the firing of a click event on mobile browsers.
// See http://updates.html5rocks.com/2013/12/300ms-tap-delay-gone-away
// for more information.
document.addEventListener('DOMContentLoaded', function() {
FastClick.attach(document.body);
});

View File

@@ -6,14 +6,12 @@ goog.require('ol.interaction.Modify');
goog.require('ol.interaction.Select');
goog.require('ol.layer.Tile');
goog.require('ol.layer.Vector');
goog.require('ol.source.MapQuest');
goog.require('ol.source.OSM');
goog.require('ol.source.Vector');
var raster = new ol.layer.Tile({
source: new ol.source.MapQuest({
layer: 'sat'
})
source: new ol.source.OSM()
});
var vector = new ol.layer.Vector({

View File

@@ -3,8 +3,7 @@ layout: example.html
title: Navigation Controls
shortdesc: Shows how to add navigation controls.
docs: >
<p>This example shows how to use the beforeRender function on the Map to run one
or more animations.</p>
<p>This example shows how to use the <code>ol.control.ZoomToExtent</code> control.</p>
<p>The following navigation controls are added to the map:</p>
<ul>
<li><code>ol.control.Zoom</code> (added by default)</li>

View File

@@ -4,11 +4,11 @@ title: Overlay
shortdesc: Demonstrates overlays.
docs: >
<p>The popups are created using <a href="http://getbootstrap.com/javascript/#popovers">Popovers</a> from Bootstrap.</p>
tags: "overlay, popup, bootstrap, popover, mapquest, openaerial"
tags: "overlay, popup, bootstrap, popover"
resources:
- https://code.jquery.com/jquery-1.11.2.min.js
- https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css
- https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js
- https://code.jquery.com/jquery-2.2.3.min.js
- https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css
- https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js
---
<div id="map" class="map"></div>
<div style="display: none;">

View File

@@ -4,11 +4,11 @@ goog.require('ol.View');
goog.require('ol.coordinate');
goog.require('ol.layer.Tile');
goog.require('ol.proj');
goog.require('ol.source.MapQuest');
goog.require('ol.source.OSM');
var layer = new ol.layer.Tile({
source: new ol.source.MapQuest({layer: 'sat'})
source: new ol.source.OSM()
});
var map = new ol.Map({

View File

@@ -6,7 +6,7 @@ docs: >
<p>
Click on the map to get a popup. The popup is composed of a few basic elements: a container, a close button, and a place for the content. To anchor the popup to the map, an <code>ol.Overlay</code> is created with the popup container. A listener is registered for the map's <code>click</code> event to display the popup, and another listener is set as the <code>click</code> handler for the close button to hide the popup.
</p>
tags: "overlay, popup, mapquest, openaerial"
tags: "overlay, popup"
---
<div id="map" class="map"></div>
<div id="popup" class="ol-popup">

View File

@@ -6,7 +6,7 @@ docs: >
<p>The map on the top preloads low resolution tiles. The map on the bottom does not use any preloading. Try zooming out and panning to see the difference.</p>
tags: "preload, bing"
cloak:
AkGbxXx6tDWf1swIhPJyoAVp06H0s0gDTYslNWWHZ6RoPqMpB9ld5FY1WutX8UoF: Your Bing Maps Key from http://bingmapsportal.com/ here
AkGbxXx6tDWf1swIhPJyoAVp06H0s0gDTYslNWWHZ6RoPqMpB9ld5FY1WutX8UoF: Your Bing Maps Key from http://www.bingmapsportal.com/ here
---
<div id="map1" class="map"></div>
<div id="map2" class="map"></div>

View File

@@ -22,7 +22,7 @@ tags: "raster, pixel"
resources:
- http://d3js.org/d3.v3.min.js
cloak:
AkGbxXx6tDWf1swIhPJyoAVp06H0s0gDTYslNWWHZ6RoPqMpB9ld5FY1WutX8UoF: Your Bing Maps Key from http://bingmapsportal.com/ here
AkGbxXx6tDWf1swIhPJyoAVp06H0s0gDTYslNWWHZ6RoPqMpB9ld5FY1WutX8UoF: Your Bing Maps Key from http://www.bingmapsportal.com/ here
---
<div class="rel">
<div id="map" class="map"></div>

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