Compare commits

...

873 Commits

Author SHA1 Message Date
Andreas Hocevar
849ef07639 Add version and dist for v4.6.4-backports.2 2018-01-22 16:39:58 +01:00
Andreas Hocevar
3696237894 Merge pull request #7661 from ahocevar/background-fill-stroke
Background fill stroke
2018-01-22 16:03:42 +01:00
Andreas Hocevar
af013db6d8 Update backport dist 2018-01-18 12:09:42 +01:00
Andreas Hocevar
9b0cd2a7c8 Backport changes for #7703 2018-01-18 12:04:04 +01:00
Andreas Hocevar
f7a1aba38e Merge pull request #7703 from ahocevar/draw-state
Improved drawing experience on touch devices
2018-01-18 11:32:28 +01:00
Andreas Hocevar
6e9fc2cbad Backport changes for #7668 2018-01-18 11:15:26 +01:00
Andreas Hocevar
61245fb83a Merge pull request #7668 from ahocevar/hit-detect-text-background
Hit detect text background
2018-01-18 10:50:32 +01:00
Andreas Hocevar
e065c851de Add dist for backport 2017-12-28 12:31:11 +01:00
Andreas Hocevar
ed29dde552 Clone backgroundFill and backgroundStroke 2017-12-27 11:51:34 +01:00
Andreas Hocevar
8a73db9331 Apply fill and stroke only when set 2017-12-27 09:31:41 +01:00
Andreas Hocevar
72ca7b28c6 Update package version to 4.6.4 2017-12-11 11:31:38 +01:00
Andreas Hocevar
f11d55fde6 Changelog for v4.6.4 2017-12-11 11:29:50 +01:00
Andreas Hocevar
48217bc218 Handle skipping and unskipping features with renderMode: 'image' 2017-12-11 11:23:34 +01:00
Andreas Hocevar
c76c445e43 Update package version to 4.6.3 2017-12-08 11:17:36 +01:00
Andreas Hocevar
3bba8ef061 Changelog for v4.6.3 2017-12-08 11:16:52 +01:00
Andreas Hocevar
a699cc348b Fix pull request link 2017-12-08 11:14:24 +01:00
Andreas Hocevar
f010f7b9c1 Only compose image vector frame when the replay group has changed 2017-12-08 11:12:05 +01:00
Andreas Hocevar
5d27dcc27c Update package version to 4.6.2 2017-12-07 08:36:40 +01:00
Andreas Hocevar
52bbebf9aa Changelog for v4.6.2 2017-12-07 08:36:03 +01:00
Andreas Hocevar
578f900435 Revert "Merge pull request #7530 from raiyni/crossing-dateline"
This reverts commit fca0b0771d, reversing
changes made to c3db3e2f6f.
2017-12-07 08:33:19 +01:00
Andreas Hocevar
3bc1de3f6c Make sure we do not request features for wrapped extent 2017-12-07 08:33:09 +01:00
Andreas Hocevar
992bfdc126 Update package version to 4.6.1 2017-12-06 21:43:24 +01:00
Andreas Hocevar
a96b8c5ca6 Changelog for v4.6.1 2017-12-06 21:42:35 +01:00
Andreas Hocevar
2bce90470e Merge pull request #7543 from ahocevar/interiorpoint-donut
Donut polygon labels do not get a chance to get rendered
2017-12-06 21:39:34 +01:00
Andreas Hocevar
50053c1b3f Merge pull request #7542 from ahocevar/overflow
Still respect deprecated exceedLength option
2017-12-06 21:39:14 +01:00
Andreas Hocevar
0c5134b789 Merge pull request #7541 from ahocevar/vectorrendertype-case
Fix case of vectorrendertype.js
2017-12-06 21:38:52 +01:00
Andreas Hocevar
ca3e11a10b Merge pull request #7539 from openlayers/release-v4.6.0
Release v4.6.0
2017-12-06 15:55:14 +01:00
Andreas Hocevar
7245805c90 Update package version to 4.6.0 2017-12-06 14:40:04 +01:00
Andreas Hocevar
5234a4dd21 Changelog for v4.6.0 2017-12-06 14:36:55 +01:00
Andreas Hocevar
b262b8535e Merge pull request #7538 from ahocevar/rem_from_loaded_ext
removeFromLoadedExtents to remove extents that failed to load
2017-12-06 14:22:11 +01:00
Andreas Hocevar
45ae731aa6 Add test 2017-12-06 13:39:35 +01:00
Andreas Hocevar
8bc61504c8 Give method a better name and add docs 2017-12-06 13:30:49 +01:00
geonux
5641430590 RemoveFromLoadedExtent to remove extent to the list of loaded extent in case of server error/restriction. 2017-12-06 12:53:14 +01:00
Frédéric Junod
2e2d8ea3d7 Merge pull request #7537 from walkermatt/removeLastPoint
Fix Draw.removeLastPoint exception when no points to remove
2017-12-06 11:51:14 +01:00
Frédéric Junod
d4f23e0ea9 Merge pull request #7536 from openlayers/greenkeeper/fs-extra-4.0.3
Update fs-extra to the latest version 🚀
2017-12-05 16:51:16 +01:00
greenkeeper[bot]
607e836df4 fix(package): update fs-extra to version 4.0.3 2017-12-05 15:03:48 +00:00
Bart van den Eijnden
8afcd1c2ff Merge pull request #7461 from oterral/teo_wmts
Use the matrixSet projection by default
2017-12-05 10:51:11 +01:00
Frédéric Junod
ebfdddbb8e Merge pull request #5883 from bylexus/master
Fixes setUrl() for WMTS sources (ol.source.WMTS)
2017-12-04 10:49:55 +01:00
Frederic Junod
14e3fd9214 Fix eslint errors 2017-12-04 10:06:00 +01:00
Frederic Junod
9c8c9c1a17 Store createFromWMTSTemplate into a private variable 2017-12-04 09:30:12 +01:00
Alexander Schenkel
c7cb26a066 Fixes setUrl() for WMTS sources (ol.source.WMTS)
See Issue #5881: setUrl was inherited from ol.source UrlTile, which creates a wrong tileUrlFunction: The official WMTS URL Template variables were no longer replaced.
2017-12-04 09:11:28 +01:00
Andreas Hocevar
b4a5142aaa Merge pull request #7531 from ahocevar/package-readme
Update the ol package readme
2017-12-02 17:42:20 +01:00
Tim Schaub
e96d190e1e Merge pull request #7533 from openlayers/greenkeeper/marked-0.3.7
Update marked to the latest version 🚀
2017-12-02 09:24:46 -07:00
greenkeeper[bot]
41efec1e74 chore(package): update marked to version 0.3.7 2017-12-01 18:30:04 +00:00
Andreas Hocevar
7941a33069 Merge pull request #7372 from notnotse/iconimagecache-setmaxcachesize
Add method to set max cache size in ol.style.IconImageCache
2017-12-01 18:00:36 +01:00
Andreas Hocevar
8a9f32fa09 Rename method and make it appear in the API docs 2017-12-01 17:03:28 +01:00
Matt Walker
90d8224a08 Fix Draw.removeLastPoint exception when no points to remove 2017-12-01 15:50:21 +00:00
Andreas Hocevar
55f7468c68 Update the ol package readme 2017-12-01 13:41:45 +01:00
Andreas Hocevar
fca0b0771d Merge pull request #7530 from raiyni/crossing-dateline
Check forward/back 1 world if wrapping
2017-12-01 09:20:39 +01:00
Ron Young
19bceff077 Check forward/back 1 world if wrapping 2017-11-30 14:23:42 -06:00
Tim Schaub
c3db3e2f6f Merge pull request #7526 from tschaub/stop-click
Allow clicks to be stopped while drawing
2017-11-30 09:21:06 -07:00
Andreas Hocevar
73f64a9e89 Merge pull request #7524 from ahocevar/view-pixel
Snap view center to pixel
2017-11-30 15:13:45 +01:00
Frédéric Junod
4990119f86 Merge pull request #7527 from openlayers/greenkeeper/eslint-4.12.1
Update eslint to the latest version 🚀
2017-11-30 08:27:18 +01:00
greenkeeper[bot]
741baa8d20 chore(package): update eslint to version 4.12.1 2017-11-30 06:05:47 +00:00
Andreas Hocevar
74bf846ffe Add pixel ratio to label cache key 2017-11-30 01:20:49 +01:00
Andreas Hocevar
4e8714d619 Fix tests 2017-11-30 01:03:15 +01:00
Andreas Hocevar
9307c35c17 Improve vertical font placement in Firefox 2017-11-30 01:03:15 +01:00
Andreas Hocevar
3bb62a2c41 Snap view center to pixel 2017-11-30 01:03:15 +01:00
Tim Schaub
b58073dd06 Allow clicks to be stopped while drawing 2017-11-29 16:58:26 -07:00
Andreas Hocevar
45d2f8debb Merge pull request #7521 from cs09g/patch-1
fix setMinZoom/setMaxZoom
2017-11-28 13:47:58 +01:00
cs09g
e745c63383 clamp when resolution is defined 2017-11-28 16:51:11 +09:00
Andreas Hocevar
5ed2f32621 Merge pull request #7519 from ahocevar/declutter-hit-detection
Reuse declutter tree for hit detection
2017-11-28 08:50:01 +01:00
Frédéric Junod
6e39926dd0 Merge pull request #7499 from openlayers/rm_attributions_FrameState
Remove attributions from olx.FrameState instances
2017-11-28 08:24:23 +01:00
cs09g
466d63ac41 fix setMinZoom/setMaxZoom
when view has resolutions property, setMinZoom/setMaxZoom doesn't work.
2017-11-28 16:20:26 +09:00
Andreas Hocevar
ac195c46b1 Reuse declutter tree for hit detection
Replaying for hit detection no longer declutters, but uses the declutter tree
from the previous rendered frame.
2017-11-28 01:36:47 +01:00
Andreas Hocevar
841e79b0e8 Merge pull request #7501 from ahocevar/vector-layer-image
Option to render vector layers as images
2017-11-27 18:11:10 +01:00
Andreas Hocevar
3c806f924e Address review comments 2017-11-27 17:54:16 +01:00
Andreas Hocevar
dde81d8585 Add renderMode option to ol.layer.Vector
This also deprecates ol.source.ImageVector.
2017-11-27 09:48:52 +01:00
Andreas Hocevar
29e3dd39e4 Merge pull request #7516 from ahocevar/overflow
Deprecate exceedLength and replace with overflow
2017-11-27 09:42:59 +01:00
Andreas Hocevar
674868a683 Deprecate exceedLength and replace with overflow 2017-11-27 09:25:41 +01:00
Andreas Hocevar
7ffed344d1 Merge pull request #7510 from ahocevar/states-no-fade
Do not fade the states layer
2017-11-27 08:47:40 +01:00
Andreas Hocevar
dce56ac73a Merge pull request #7513 from ahocevar/stroke-key
Make strokeKey safer
2017-11-27 08:47:09 +01:00
Andreas Hocevar
101b53e135 Merge pull request #7514 from ahocevar/less-aggressive-prune
Prune the label cache less aggressively
2017-11-27 08:46:42 +01:00
Andreas Hocevar
66d5d66129 Prune the label cache less aggressively 2017-11-26 23:30:58 +01:00
Andreas Hocevar
f426c1cd18 Make strokeKey safer 2017-11-26 12:50:14 +01:00
Andreas Hocevar
ceab6444b9 Merge pull request #7511 from openlayers/greenkeeper/rollup-0.52.0
Update rollup to the latest version 🚀
2017-11-26 10:47:41 +01:00
Marc Jansen
5085cd8d6a Merge pull request #7512 from openlayers/greenkeeper/eslint-4.12.0
Update eslint to the latest version 🚀
2017-11-26 10:25:07 +01:00
greenkeeper[bot]
4e0d52806c chore(package): update eslint to version 4.12.0 2017-11-26 05:41:40 +00:00
greenkeeper[bot]
ee8ccc33e0 fix(package): update rollup to version 0.52.0 2017-11-25 20:21:18 +00:00
Andreas Hocevar
5e43208d93 Do not fade the states layer 2017-11-25 10:08:43 +01:00
Frédéric Junod
7fbada28ac Merge pull request #7505 from fredj/rm_api_link
Remove ol.DeviceOrientation link from API index
2017-11-24 15:26:11 +01:00
Frederic Junod
2278715f85 Remove ol.DeviceOrientation link from API index
`ol.DeviceOrientation` is now deprecated
2017-11-24 12:39:05 +01:00
Frederic Junod
4f5613d2fa Remove attributions from olx.FrameState instances 2017-11-23 12:00:12 +01:00
Andreas Hocevar
c48685565d Merge pull request #7497 from nicholas-l/patch-1
Use getGeometry
2017-11-23 09:38:54 +01:00
Andreas Hocevar
0b3a92d89e Merge pull request #7495 from ahocevar/remove-layer-renderers-with-viewport
Remove layer renderers when viewport is removed
2017-11-23 08:58:18 +01:00
Frédéric Junod
53e675725b Merge pull request #7492 from fredj/type_cast_examples
Remove unneeded type cast from examples
2017-11-23 08:26:00 +01:00
Nicholas Latham
397c03a6b6 Use getGeometry
Use getGeometry for compatibility between RenderFeature and Feature
2017-11-23 15:13:47 +13:00
Andreas Hocevar
3e574529ad Remove layer renderers when viewport is removed 2017-11-22 23:56:28 +01:00
Frederic Junod
8aa591c04d Remove unneeded type cast from examples 2017-11-22 14:00:00 +01:00
Frédéric Junod
5d71dde8dd Merge pull request #7489 from fredj/draw_type_string
Allow string to be passed as ol.interaction.Draw type
2017-11-22 08:58:45 +01:00
Frederic Junod
c0d57ad005 Allow string to be passed as ol.interaction.Draw type 2017-11-21 09:55:54 +01:00
Frédéric Junod
ae6ba195f7 Merge pull request #7484 from openlayers/greenkeeper/closure-util-1.26.0
Update closure-util to the latest version 🚀
2017-11-17 15:01:06 +01:00
greenkeeper[bot]
f5c0ea3a28 fix(package): update closure-util to version 1.26.0 2017-11-17 12:32:57 +00:00
Frédéric Junod
f139b7001a Merge pull request #7445 from fredj/fs_css
Load css rules from full-screen.css in examples
2017-11-17 10:41:07 +01:00
Frédéric Junod
3e590f81ae Merge pull request #7481 from gberaudo/make_zoom_to_extent_extensible
Make zoom to extent control extensible
2017-11-17 09:10:50 +01:00
oterral
9cc7cca447 Fix #6835: doesn't break if Constraint does not exist 2017-11-17 09:00:44 +01:00
Andreas Hocevar
0bf7e95619 Merge pull request #7477 from ahocevar/text-style-keys
Make text states available for replay time
2017-11-16 19:59:45 +01:00
Andreas Hocevar
1aa54b52b0 Merge pull request #7482 from ahocevar/vectortile-unrotate
Reset rotation after rendering
2017-11-16 17:57:01 +01:00
Andreas Hocevar
006f8d49ec Reset rotation after rendering 2017-11-16 17:22:05 +01:00
Guillaume Beraudo
94e821f9bf Make zoom to extent control extensible 2017-11-16 15:54:13 +01:00
Andreas Hocevar
cbf24ebc4c Merge pull request #7480 from ahocevar/load-imagetile
Create a new image when loading tile after an error
2017-11-16 15:09:45 +01:00
Andreas Hocevar
f1aeb76ce8 Create a new image when loading after an error 2017-11-16 14:45:54 +01:00
Andreas Hocevar
000acfe854 Do not pass inexistent argument 2017-11-16 14:45:54 +01:00
Andreas Hocevar
8e9b69cb9b Merge pull request #7476 from ahocevar/reset-measurements
Reset text measurements when available fonts change
2017-11-16 13:43:04 +01:00
Andreas Hocevar
c35789ba73 Add and improve tests 2017-11-16 11:52:26 +01:00
Andreas Hocevar
ad8e4debbe Make text states available for replay time 2017-11-16 00:39:27 +01:00
Andreas Hocevar
febbba78dc Reset text measurements when available fonts change 2017-11-15 18:44:26 +01:00
Andreas Hocevar
4b0281bc8a Merge pull request #7454 from ahocevar/text-background-padding
Add text background rendering and text padding
2017-11-15 08:27:38 +01:00
Andreas Hocevar
c7f6c28d8e Merge pull request #7468 from chrismayer/chg-here-key
Add new API-key for HERE example
2017-11-14 12:34:17 +01:00
Christian Mayer
169e9583dd Add new HERE API-key to 'cloak' section
This adds the new API-key for the 'HERE Map Tile API' example to the
'cloak' section, so it is not visible in the example's code view.
2017-11-14 09:56:26 +01:00
Christian Mayer
b9540460ff Add new API-key for HERE example
Replace the existing API-key for the 'HERE Map Tile API' example
with a new one with a longer validity.
2017-11-14 09:09:17 +01:00
Frédéric Junod
697406cf59 Merge pull request #7465 from fredj/export_getAxisOrientation
Export ol.proj.Projection#getAxisOrientation function
2017-11-14 08:19:24 +01:00
Frederic Junod
c490fd4af8 Export ol.proj.Projection#getAxisOrientation function 2017-11-13 17:19:50 +01:00
Andreas Hocevar
53b85a9192 Add rendering tests 2017-11-13 13:58:11 +01:00
Andreas Hocevar
a77d01945f Merge pull request #7462 from ahocevar/scaleline-meters-per-unit
Respect metersPerUnit in ScaleLine control
2017-11-13 11:39:32 +01:00
Andreas Hocevar
9c45f9a8d6 Respect metersPerUnit in ScaleLine control 2017-11-13 11:09:54 +01:00
oterral
5a252e628b Fix #7460: use the matrixSet projection by default 2017-11-13 11:06:31 +01:00
Tim Schaub
a73170ca1d Merge pull request #7458 from tschaub/release-v4.5.0
Release v4.5.0
2017-11-12 17:19:14 -07:00
Andreas Hocevar
df90f1b78c Reuse more code 2017-11-12 22:49:32 +01:00
Andreas Hocevar
1afc686af9 Add text background rendering and text padding 2017-11-12 22:49:32 +01:00
Tim Schaub
c811bd488e Collapsed list of dependency changes 2017-11-12 11:35:32 -07:00
Tim Schaub
ce051b78a9 Update package version to 4.5.0 2017-11-12 11:25:08 -07:00
Tim Schaub
1103779432 Changelog for v4.5.0 2017-11-12 11:24:26 -07:00
Tim Schaub
bbec759c5e Merge pull request #7456 from tschaub/connect-retries
Retry if sauce connect fails
2017-11-12 07:29:49 -07:00
Tim Schaub
a2c5ce6925 Retry if sauce connect fails 2017-11-11 10:54:13 -07:00
Tim Schaub
54c69ae1c6 Merge pull request #7455 from openlayers/greenkeeper/eslint-4.11.0
Update eslint to the latest version 🚀
2017-11-10 20:13:19 -07:00
greenkeeper[bot]
0bd989e917 chore(package): update eslint to version 4.11.0 2017-11-11 00:00:58 +00:00
Frédéric Junod
93abd6fe57 Merge pull request #7447 from openlayers/greenkeeper/rollup-plugin-commonjs-8.2.6
chore(package): update rollup-plugin-commonjs to version 8.2.6
2017-11-10 11:14:53 +01:00
Frédéric Junod
3d8f39804e Merge pull request #7448 from openlayers/greenkeeper/debounce-1.1.0
chore(package): update debounce to version 1.1.0
2017-11-10 10:57:58 +01:00
greenkeeper[bot]
b2ef54d4a7 chore(package): update debounce to version 1.1.0 2017-11-10 10:35:55 +01:00
greenkeeper[bot]
09a324bc6b chore(package): update rollup-plugin-commonjs to version 8.2.6 2017-11-10 10:34:29 +01:00
Frédéric Junod
07631e4d1f Merge pull request #7451 from openlayers/greenkeeper/karma-1.7.1
chore(package): update karma to version 1.7.1
2017-11-10 10:32:14 +01:00
Frederic Junod
2825436983 Add missing .map:-ms-fullscreen css rule in example 2017-11-10 10:21:08 +01:00
greenkeeper[bot]
4aee919de2 chore(package): update karma to version 1.7.1 2017-11-10 10:18:42 +01:00
Andreas Hocevar
6cc3c47d95 Merge pull request #7440 from ahocevar/font-load
Attempt to make font loading tests more stable
2017-11-10 10:09:42 +01:00
Andreas Hocevar
55692c3da5 Merge pull request #7446 from openlayers/greenkeeper/rollup-0.51.3
fix(package): update rollup to version 0.51.3
2017-11-10 09:47:01 +01:00
Andreas Hocevar
dbfca19e09 Merge pull request #7444 from ahocevar/simpler-style-management
Simpler style management
2017-11-10 08:44:25 +01:00
Andreas Hocevar
4324d49813 Attempt to make font loading tests more stable
Also changes things to use setInterval() instead of setTimeout().
2017-11-10 08:34:30 +01:00
greenkeeper[bot]
2da2ae0154 fix(package): update rollup to version 0.51.3
Closes #7432
2017-11-10 07:14:09 +00:00
Andreas Hocevar
c6eca804f9 Refactor stroke style management to reuse code 2017-11-10 01:16:18 +01:00
Andreas Hocevar
47e6918072 Refactor setTextStyle() for better readability 2017-11-09 16:42:41 +01:00
Andreas Hocevar
c1181bdfe7 Merge pull request #7438 from ahocevar/source-projection
Call getProjection() only once
2017-11-09 14:44:20 +01:00
Tim Schaub
9a8afff0fa Merge pull request #7430 from tschaub/hexa
Add support for hex colors with alpha
2017-11-09 06:38:27 -07:00
Andreas Hocevar
0ec05f5795 Call getProjection() only once 2017-11-09 08:08:41 +01:00
Tim Schaub
6668d03122 Add support for hex colors with alpha 2017-11-08 09:53:22 -07:00
Tim Schaub
3a6fc7a1f2 Merge pull request #7431 from tschaub/defined-zoom
Avoid returning undefined zoom
2017-11-08 09:32:33 -07:00
Andreas Hocevar
be06224756 Merge pull request #7436 from pjeweb/patch-1
Always use source projection loading image tiles
2017-11-08 17:01:33 +01:00
Frédéric Junod
9fe032b49c Merge pull request #7433 from fredj/hints
Don't use getHints if it's not needed
2017-11-08 14:46:31 +01:00
pjeweb
b9313e76f4 Always use source projection loading image tiles
Use the defined source projection despite it being equivalent to the rendering projection to enable using the specified alias code name instead of the code provided by the renderer's projection object. For example: The server only knows the name "EPSG:900913", which is an alias for the equivalent "EPSG:3857", that the renderer uses (by default).
2017-11-08 14:36:46 +01:00
Frederic Junod
0d01a4ca0f Don't use getHints if it's not needed
memory optimization: `getHints` creates a copy of the hints array.
2017-11-08 11:47:29 +01:00
Frederic Junod
82da43af35 Use getAnimating and getInteracting from ol.View 2017-11-08 11:47:29 +01:00
Tim Schaub
967118e699 Avoid returning undefined zoom 2017-11-07 18:40:58 -07:00
Andreas Hocevar
0fceb2f3e3 Merge pull request #7428 from openlayers/greenkeeper/sinon-4.1.2
Update sinon to the latest version 🚀
2017-11-07 22:52:54 +01:00
Andreas Hocevar
ccab7be20a Merge pull request #7362 from Alexandre27/master
Added option to the ol.format.GeoJSON to allow the reading of the geometry_name from the geojson
2017-11-07 22:52:30 +01:00
greenkeeper[bot]
39e3e9f915 chore(package): update sinon to version 4.1.2 2017-11-07 17:41:49 +00:00
Alexandre Silva
cd5e5039e9 Changed option name to extractGeometryName 2017-11-07 10:24:10 +00:00
Andreas Hocevar
36fd49334c Merge pull request #7425 from openlayers/greenkeeper/async-2.6.0
Update async to the latest version 🚀
2017-11-07 08:18:54 +01:00
Andreas Hocevar
2e982deba6 Merge pull request #7426 from glen-nu/update-handleEvent-docs
Update InteractionOptions.prototype.handleEvent docs
2017-11-07 08:18:29 +01:00
glen-nu
2ebb1ce8fa update InteractionOptions.prototype.handleEvent docs
`InteractionOptions.prototype.handleEvent` stops propagation on falsy return, not explicit `false`
2017-11-07 14:16:01 +08:00
greenkeeper[bot]
d7bf98f49f fix(package): update async to version 2.6.0 2017-11-07 03:29:08 +00:00
Tim Schaub
2b09dc8b70 Merge pull request #7423 from tschaub/get-wrapped-features
Get rendered features by coordinate when wrapping
2017-11-06 17:14:52 -07:00
Tim Schaub
dbeef9f73e Use wrapped tile coord for getting feature at coordinate 2017-11-06 10:53:44 -07:00
Tim Schaub
8a6fe81f09 Example demonstrating how to get feature properties from vector tiles 2017-11-06 09:57:16 -07:00
Tim Schaub
4ea72c2483 Merge pull request #7421 from tschaub/one-world
Keep longitude between -180 and 180
2017-11-06 08:15:23 -07:00
Bart van den Eijnden
d15a85c402 Merge pull request #7420 from TDesjardins/master
Fix MapGuide example resolves #7325
2017-11-06 14:53:54 +01:00
Tim Schaub
42da3f18dd Keep longitude between -180 and 180 2017-11-06 06:39:17 -07:00
Alexandre Silva
260327341c Documented the default value. 2017-11-06 11:10:49 +00:00
Tino Desjardins
7cb8b526a9 Format source code 2017-11-04 14:53:21 +01:00
Tino Desjardins
02016cf244 Fix MapGuide example 2017-11-04 14:38:36 +01:00
Andreas Hocevar
4a6317dde3 Merge pull request #7340 from ahocevar/check-font-loaded
Clear label cache when fonts become available
2017-11-03 14:23:38 +01:00
Andreas Hocevar
129350d863 Fix return type 2017-11-03 13:54:41 +01:00
Andreas Hocevar
72eb8ab5e8 Define font as variable 2017-11-03 13:52:06 +01:00
Andreas Hocevar
5483fa3181 More efficient font checking loop 2017-11-03 13:52:06 +01:00
Andreas Hocevar
8c46f6d1f0 Workaround for a Safari issue 2017-11-03 13:04:06 +01:00
Andreas Hocevar
7f865b8520 Check if fonts are available and redraw when label cache was cleared 2017-11-03 13:04:06 +01:00
Tim Schaub
dea8a340a6 Add utility method for extracting font families from a font spec 2017-11-03 12:55:12 +01:00
Tim Schaub
06728ab0fa Quote font names with spaces 2017-11-03 12:55:12 +01:00
Andreas Hocevar
a80458f2c3 Show dynamic font loading in the ugly vector-labels example 2017-11-03 12:55:12 +01:00
Andreas Hocevar
2451c8f1d0 Merge pull request #7414 from ahocevar/preserve-ligatures
Only split text at line angle changes
2017-11-03 12:13:10 +01:00
Andreas Hocevar
431d570b91 Only split text at line angle changes 2017-11-03 11:26:38 +01:00
Frédéric Junod
ddba26b193 Merge pull request #7411 from fredj/getset_layers
Add getLayers and setLayers functions to ol.format.WMSGetFeatureInfo
2017-11-03 11:22:29 +01:00
Andreas Hocevar
f05511cff7 Merge pull request #7328 from ahocevar/declutter
Declutter text and images
2017-11-03 11:22:08 +01:00
Frédéric Junod
e55985818f Merge pull request #7418 from openlayers/greenkeeper/sinon-4.1.1
Update sinon to the latest version 🚀
2017-11-03 10:58:02 +01:00
Frederic Junod
8a9d6b417f Add getLayers and setLayers functions to ol.format.WMSGetFeatureInfo 2017-11-03 10:51:25 +01:00
Andreas Hocevar
306851d6ee Consistent naming of declutterTree 2017-11-03 10:36:28 +01:00
greenkeeper[bot]
70dc35cc6c chore(package): update sinon to version 4.1.1 2017-11-03 08:56:02 +00:00
Andreas Hocevar
bfebc50a48 Merge pull request #7406 from lasselaakkonen/7390-zoomify-custom-extent
Add option to Zoomify source for setting custom extent
2017-11-03 07:17:22 +01:00
Andreas Hocevar
50b50ae21f Merge pull request #7416 from openlayers/greenkeeper/sinon-4.1.0
Update sinon to the latest version 🚀
2017-11-03 07:13:34 +01:00
Andreas Hocevar
a5625955a8 Merge pull request #7417 from openlayers/greenkeeper/phantomjs-prebuilt-2.1.16
Update phantomjs-prebuilt to the latest version 🚀
2017-11-03 07:13:16 +01:00
greenkeeper[bot]
47a1aed750 chore(package): update phantomjs-prebuilt to version 2.1.16 2017-11-02 20:27:57 +00:00
greenkeeper[bot]
4afb5bfd40 chore(package): update sinon to version 4.1.0 2017-11-02 17:12:29 +00:00
Frédéric Junod
8ef9b8feea Merge pull request #7410 from fredj/getset_getFeatureType
Add getFeatureType and setFeatureType functions to ol.format.WFS
2017-11-01 15:32:25 +01:00
Frederic Junod
daea26ec50 Add getFeatureType and setFeatureType functions to ol.format.WFS 2017-11-01 14:07:54 +01:00
Lasse Laakkonen
1cf8631889 Add extent property definition to olx.source.ZoomifyOptions definition. 2017-11-01 00:30:20 +02:00
Lasse Laakkonen
eefb3f9207 Add option to Zoomify source for setting custom extent.
https://github.com/openlayers/openlayers/issues/7390
2017-11-01 00:20:43 +02:00
Andreas Hocevar
e6ae029d08 Improve text rendering performance 2017-10-31 11:33:48 +01:00
Andreas Hocevar
6ce201c429 Do not render text along oversimplified geometries 2017-10-31 11:33:48 +01:00
Andreas Hocevar
b29e74d1ab Measure height only once per font 2017-10-31 11:33:48 +01:00
Andreas Hocevar
4a73754b93 Entertain the compiler 2017-10-31 11:33:48 +01:00
Andreas Hocevar
dfa3cbf4e2 Use native decluttering in vector-label-decluttering example 2017-10-31 11:33:48 +01:00
Andreas Hocevar
29ebdde314 Test decluttering for vector tile layers 2017-10-31 11:33:48 +01:00
Andreas Hocevar
912e908032 Test decluttered hit detection 2017-10-31 11:33:48 +01:00
Andreas Hocevar
53a2cf55f1 Fix hit detection for decluttered layers 2017-10-31 11:33:48 +01:00
Andreas Hocevar
f4506d87eb Use existing sort function 2017-10-31 11:33:48 +01:00
Andreas Hocevar
22e4ba06a6 Add rendering tests 2017-10-31 11:33:48 +01:00
Andreas Hocevar
80e67bac7a Give lower z-index priority (painter's order) 2017-10-31 11:33:48 +01:00
Andreas Hocevar
b3f9e4e8ef Improve documentation 2017-10-31 11:33:48 +01:00
Andreas Hocevar
08af207724 Add decluttering for images and text 2017-10-31 11:33:48 +01:00
Andreas Hocevar
5ebc969599 Support line and polygon label points for ol.render.Feature 2017-10-31 11:33:48 +01:00
Andreas Hocevar
dbeb3d2795 Only render parts of source tile that are needed for the view tile 2017-10-31 11:33:48 +01:00
Andreas Hocevar
742a71cd4b Only render images when visible 2017-10-31 11:33:48 +01:00
Andreas Hocevar
1a1d45fdd1 Merge pull request #7379 from lasselaakkonen/6608-zoomify-custom-tile-size
Add support for custom tile size to Zoomify source
2017-10-31 10:50:37 +01:00
Andreas Hocevar
da2a23aacd Always use ol.Size tile size array 2017-10-31 10:36:20 +01:00
Lasse Laakkonen
3c8c7db8f3 Fix using multiple Zoomify sources at a time.. 2017-10-31 11:12:18 +02:00
Lasse Laakkonen
2836f9511f Remove unnecessary changes to Tile and ImageTile for changing Zoomify source tile size. 2017-10-31 09:31:38 +02:00
Lasse Laakkonen
e2581931a7 Add tileSize property definition to olx.source.ZoomifyOptions definition. 2017-10-30 21:53:52 +02:00
Frédéric Junod
435f93a197 Merge pull request #7376 from virtualcitySYSTEMS/feature-overlay-visibility
changed visibility of overlay properties to protected
2017-10-30 08:37:40 +01:00
Frédéric Junod
27eaa0d8c0 Merge pull request #7399 from openlayers/greenkeeper/eslint-4.10.0
Update eslint to the latest version 🚀
2017-10-30 08:29:35 +01:00
greenkeeper[bot]
00807ea98f chore(package): update eslint to version 4.10.0 2017-10-27 23:38:25 +00:00
Jannes Bolling
a802f5937b changed visibility of overlay properties to protected,
added new getOptions function to overlay, to get the original options

remove trailing underscore from protected properties and functions
2017-10-27 16:10:39 +02:00
Frédéric Junod
485680919e Merge pull request #7395 from openlayers/greenkeeper/closure-util-1.25.0
Update closure-util to the latest version 🚀
2017-10-27 10:12:12 +02:00
greenkeeper[bot]
cae6a07aa7 fix(package): update closure-util to version 1.25.0 2017-10-27 07:29:23 +00:00
Frédéric Junod
d33e41d322 Merge pull request #7392 from openlayers/greenkeeper/sinon-4.0.2
Update sinon to the latest version 🚀
2017-10-26 08:58:00 +02:00
greenkeeper[bot]
8d59b5d301 chore(package): update sinon to version 4.0.2 2017-10-25 17:20:30 +00:00
Frédéric Junod
5a6fafd85b Merge pull request #7377 from notnotse/overlay-classname
Add support to specify CSS class name when creating ol.Overlay
2017-10-25 15:32:24 +02:00
Bobo Häggström
343a4085a0 Add method to set max cache size in ol.style.IconImageCache 2017-10-24 16:04:55 +02:00
Andreas Hocevar
eeb20cf4ad Merge pull request #7383 from ahocevar/null-tilecoord
Handle null tile coordinates correctly
2017-10-22 21:59:35 +02:00
Frédéric Junod
35a357ee80 Merge pull request #7375 from fredj/ows_more_ServiceIdentification
Read 'Abstract', 'AccessConstraints' and 'Fees' in ol.format.OWS
2017-10-22 08:49:06 +02:00
Andreas Hocevar
6da92d5f71 Handle null tile coordinates correctly 2017-10-21 21:41:56 +02:00
Frédéric Junod
a625d1f1a8 Merge pull request #7378 from notnotse/fix-raster-source-docs
Fix incorrect docs about ol.source.Raster
2017-10-20 16:51:05 +02:00
Andreas Hocevar
10f59fc81c Merge pull request #7380 from openlayers/greenkeeper/rollup-plugin-cleanup-2.0.0
Update rollup-plugin-cleanup to the latest version 🚀
2017-10-20 10:55:14 +02:00
greenkeeper[bot]
0c9e2458e6 fix(package): update rollup-plugin-cleanup to version 2.0.0 2017-10-19 21:40:58 +00:00
Lasse Laakkonen
b8589acc6e Add test for initializing Zoomify source with custom tile size. 2017-10-19 17:54:46 +03:00
Bobo Häggström
7a800d4b39 Add support to specify CSS class name when creating ol.Overlay 2017-10-19 16:06:24 +02:00
itjope
f7b6682832 Fix incorrect docs about ol.source.Raster 2017-10-19 15:37:00 +02:00
Lasse Laakkonen
e41693816a Add support for custom tile size to Zoomify layer.
https://github.com/openlayers/openlayers/issues/6608
2017-10-19 15:39:47 +03:00
Andreas Hocevar
8d5a8665b2 Merge pull request #7371 from notnotse/vt-missing-api-annotation
Add @api annotation to ol.VectorTile.getExtent
2017-10-19 12:57:20 +02:00
Frederic Junod
e235c83231 Read 'Abstract', 'AccessConstraints' and 'Fees' in ol.format.OWS 2017-10-19 12:03:02 +02:00
Bobo Häggström
cdea7040ee Add @api annotation to ol.VectorTile.getExtent 2017-10-19 08:38:54 +02:00
Frédéric Junod
0e9bd75bc6 Merge pull request #7369 from fredj/bing_culture
Always request the Bing API with the 'culture' value
2017-10-19 08:25:31 +02:00
Frederic Junod
2e2e63a3e0 Always request the Bing API with the 'culture' value 2017-10-18 17:07:33 +02:00
Frédéric Junod
a121806715 Merge pull request #7366 from openlayers/greenkeeper/handlebars-4.0.11
Update handlebars to the latest version 🚀
2017-10-18 08:23:46 +02:00
greenkeeper[bot]
2268cbe90f chore(package): update handlebars to version 4.0.11 2017-10-17 21:05:07 +00:00
Frédéric Junod
82b7116f81 Merge pull request #7364 from fredj/rm_geojson_geoserver_workaround
Remove GeoJSON workaround for GeoServer
2017-10-17 16:52:59 +02:00
Tim Schaub
ab85a91efd Merge pull request #7355 from marcosox/master
Pass pixel tolerance as a parameter to constructor of ol.interaction.Extent
2017-10-17 08:44:42 -06:00
Frederic Junod
bcfad6ea8b Remove GeoJSON workaround for GeoServer
See #1569
See https://osgeo-org.atlassian.net/browse/GEOS-5996
2017-10-17 08:32:16 +02:00
Alexandre Silva
011285aefe Added option to the ol.format.GeoJSON to allow the reading of the geometry_name from the geojson. 2017-10-16 14:51:55 +01:00
marcosox
850aaf96f2 Add pixelTolerance to olx.interaction.ExtentOptions 2017-10-16 15:46:12 +02:00
marcosox
d40dd695cb Pass pixel tolerance as a parameter to constructor of ol.interaction.Extent
This adds the pixelTolerance option parameter to the constructor of ol.interaction.Extent.
In this way the user can override the current default value of 10.
2017-10-16 15:36:42 +02:00
Tim Schaub
382c6b9832 Merge pull request #7360 from openlayers/greenkeeper/eslint-4.9.0
Update eslint to the latest version 🚀
2017-10-14 16:58:32 -06:00
greenkeeper[bot]
660a661aa1 chore(package): update eslint to version 4.9.0 2017-10-14 21:19:32 +00:00
Tim Schaub
924780abf1 Merge pull request #7356 from EduardoNogueira/master
Fix documentation for target option in the controls
2017-10-14 12:13:37 -06:00
Tim Schaub
7d8a74ee5a Merge pull request #7359 from akkumar/rollup_options_fix
Rename entry to input - regarding options to rollup lib - Issue #7358
2017-10-14 12:09:34 -06:00
Karthik Kumar A
02b899869d rename entry to input - regarding options to rollup lib - Issue #7358 2017-10-14 14:18:20 +05:30
Tim Schaub
1f34f17436 Merge pull request #7357 from tschaub/release-v4.4.2
Release v4.4.2
2017-10-13 17:27:20 -06:00
Tim Schaub
f6eeee37d2 Bumping versions and logging changes for v4.4.2 2017-10-13 14:48:25 -06:00
Andreas Hocevar
d47dc52382 Calculate correct text box size 2017-10-13 14:45:27 -06:00
Andreas Hocevar
4d4afa1790 Pre-render text images for configured scale 2017-10-13 14:28:52 -06:00
Andreas Hocevar
1141c82da1 Handle different lineWidth scaling in Safari 2017-10-13 14:28:43 -06:00
Andreas Hocevar
637cf7c65f Allow reference image creation without existing reference image 2017-10-13 14:28:27 -06:00
Andreas Hocevar
84f083af86 Take pixel ratio into account for text stroke 2017-10-13 14:28:15 -06:00
Tim Schaub
90b08cdc1c Set time and handle frame animation in raster source 2017-10-13 14:24:08 -06:00
Tim Schaub
623dcd881f Avoid unnecessary transition on raster sources 2017-10-13 14:23:59 -06:00
Tim Schaub
177fcc7bcc Consistent use of ol.tilecoord.getKeyZXY() 2017-10-13 14:23:25 -06:00
Tim Schaub
5a1effb483 Get rid of unnecessary coord key prefix 2017-10-13 14:23:25 -06:00
Tim Schaub
97745c50af Prune all except for the most recent z on URL change 2017-10-13 14:23:25 -06:00
Tim Schaub
a4e0c54200 Maintain rendering order in the LRU cache 2017-10-13 14:23:24 -06:00
Tim Schaub
c679e3042e Functions to get key from coord and coord from key 2017-10-13 14:23:24 -06:00
Tim Schaub
b0f291973b Method for peeking at the newest cache entry key 2017-10-13 14:23:24 -06:00
Tim Schaub
168e6db951 Allow items to be removed from the cache 2017-10-13 14:23:24 -06:00
Eduardo Nogueira
ad29aa742e Fix documentation for target option in the controls 2017-10-13 18:20:45 +01:00
Frédéric Junod
d2e6acd478 Merge pull request #7354 from openlayers/greenkeeper/closure-util-1.24.2
Update closure-util to the latest version 🚀
2017-10-13 16:10:28 +02:00
greenkeeper[bot]
80d5cc87c4 fix(package): update closure-util to version 1.24.2 2017-10-13 13:42:29 +00:00
Andreas Hocevar
fe1d01a3cb Merge pull request #7350 from ahocevar/text-box
Calculate correct text box size
2017-10-12 07:04:39 +02:00
Andreas Hocevar
c2926df045 Merge pull request #7349 from ahocevar/vectortile-url
Do not use tileUrlFunction for renderer tile coordinates
2017-10-12 07:04:00 +02:00
Andreas Hocevar
8dbaf29fca Calculate correct text box size 2017-10-12 00:35:22 +02:00
Andreas Hocevar
ffb7d72c90 Do not use tileUrlFunction for renderer tile coordinates 2017-10-11 19:44:08 +02:00
Andreas Hocevar
e6534894fd Merge pull request #7305 from oterral/teo_info
Fix #7304: Re-calculate the resolution when the WMS source is reprojected
2017-10-11 17:04:33 +02:00
Andreas Hocevar
d74bef9fd7 Merge pull request #7346 from ahocevar/text-scale
Pre-render text images for configured scale
2017-10-11 16:06:04 +02:00
Andreas Hocevar
380690a6a3 Pre-render text images for configured scale 2017-10-11 15:51:15 +02:00
Andreas Hocevar
dcf38c22e2 Merge pull request #7345 from ahocevar/line-width
Handle different lineWidth scaling in Safari
2017-10-11 08:56:34 +02:00
Andreas Hocevar
b81952f142 Merge pull request #7344 from ahocevar/measure-width
Make text height detection independent of css settings
2017-10-11 08:56:02 +02:00
Andreas Hocevar
d0092ecd18 Handle different lineWidth scaling in Safari 2017-10-11 00:40:14 +02:00
Andreas Hocevar
1fcb94a29c Make text height detection independent of css settings 2017-10-11 00:21:29 +02:00
Tim Schaub
80dbedf946 Merge pull request #7341 from tschaub/raster-fix
Proper rendering of raster sources when there is a tile transition
2017-10-10 03:31:00 -06:00
Andreas Hocevar
609bd23eff Merge pull request #7339 from ahocevar/text-stroke
Use correct text stroke on HiDPI devices
2017-10-10 07:40:29 +02:00
Tim Schaub
373179ad82 Avoid unnecessary transition on raster sources 2017-10-09 18:24:21 -06:00
Tim Schaub
88ca77b8c7 Set time and handle frame animation in raster source 2017-10-09 18:24:15 -06:00
Tim Schaub
55b5d0c719 Merge pull request #7327 from tschaub/tile-management
Prune the tile cache after updating a source's URL
2017-10-09 17:01:12 -06:00
Tim Schaub
5558994827 Merge pull request #7333 from waxenegger/pluggable_calling
Pluggable Map/Layers - function calls to handles and create
2017-10-09 16:59:59 -06:00
Andreas Hocevar
1aafd8320d Allow reference image creation without existing reference image 2017-10-09 18:51:57 +02:00
Andreas Hocevar
02e23e3cd0 Take pixel ratio into account for text stroke 2017-10-09 18:51:45 +02:00
Tim Schaub
9b8232f65b Merge pull request #7329 from tschaub/attribution
Reworked attribution handling
2017-10-09 08:26:30 -06:00
Andreas Hocevar
83cfb77407 Merge pull request #7337 from ahocevar/blank-image
Always create a new blank image to avoid CSP violations
2017-10-09 13:24:49 +02:00
Andreas Hocevar
590dd6f1cf Always create a new blank image to avoid CSP violations 2017-10-09 12:46:34 +02:00
Harald Waxenegger
01b17de36d access functions via bracked/string to avoid compilation mangling 2017-10-09 15:23:56 +10:00
Tim Schaub
b94b8cc40d Add deprecation notes for ol.Attribution 2017-10-08 20:29:12 -06:00
Tim Schaub
2dd8fdb5b7 Reworked attribution handling 2017-10-08 20:29:02 -06:00
Tim Schaub
a5a0f5b98b Merge pull request #7330 from tschaub/upgrade-notes
Add upgrade notes to 4.4.0 changelog
2017-10-08 15:21:36 -06:00
Tim Schaub
2eb8ed047a Add upgrade notes to 4.4.0 changelog 2017-10-08 15:11:19 -06:00
Tim Schaub
bedec9d596 Consistent use of ol.tilecoord.getKeyZXY() 2017-10-08 09:08:20 -06:00
Tim Schaub
dbaf24ec39 Get rid of unnecessary coord key prefix 2017-10-08 09:08:20 -06:00
Tim Schaub
c96c9cfc6d Prune all except for the most recent z on URL change 2017-10-08 09:08:14 -06:00
Tim Schaub
c692b98fa9 Maintain rendering order in the LRU cache 2017-10-08 08:51:09 -06:00
Tim Schaub
9fb7778156 Functions to get key from coord and coord from key 2017-10-08 08:50:19 -06:00
Tim Schaub
177156c293 Method for peeking at the newest cache entry key 2017-10-08 08:43:53 -06:00
Tim Schaub
10af59bfce Allow items to be removed from the cache 2017-10-08 08:42:10 -06:00
Tim Schaub
ad5f21fa5c Merge pull request #7321 from tschaub/release-v4.4.1
Release v4.4.1
2017-10-06 11:13:29 -06:00
Tim Schaub
77892c435f Update versions for v4.4.1 2017-10-06 09:34:54 -06:00
Tim Schaub
917359107d Changes for v4.4.1 2017-10-06 09:34:36 -06:00
Tim Schaub
c4f460bcc2 Only clear the canvas when needed 2017-10-06 09:33:11 -06:00
Tim Schaub
c5a05f1abd Merge pull request #7323 from tschaub/flashless
Only clear the canvas when needed
2017-10-06 09:31:50 -06:00
Tim Schaub
ad4a258c87 Only clear the canvas when needed 2017-10-06 09:12:52 -06:00
Tim Schaub
6e78148174 Use lowercase module identifiers until ol@5 2017-10-06 08:52:22 -06:00
Frédéric Junod
7d8e2a7372 Merge pull request #7319 from openlayers/greenkeeper/closure-util-1.24.1
Update closure-util to the latest version 🚀
2017-10-06 15:24:38 +02:00
greenkeeper[bot]
adbc64507f fix(package): update closure-util to version 1.24.1 2017-10-06 13:03:07 +00:00
Tim Schaub
be32b0f769 Merge pull request #7313 from tschaub/patch
Use lowercase module identifiers until ol@5
2017-10-06 02:31:15 -06:00
Tim Schaub
57a5ffa40b Merge pull request #7316 from mprins/patch-1
fix copy-paste error in 4.4.0 changelog
2017-10-06 02:30:41 -06:00
Mark Prins
9c6c14a55c fix copy-paste error in 4.4.0 changelog
Also IMHO it doesn't make much sense to have issues of previous patch releases eg. 4.3.4 in here as these have their own release notes already, but I'll leave that for your debate
2017-10-06 09:14:56 +02:00
Frédéric Junod
ae906c7aff Merge pull request #7315 from fredj/contains_filter
Add new ol.format.filter.Contains spatial operator
2017-10-06 09:02:33 +02:00
Frédéric Junod
a7729cc602 Merge pull request #7314 from openlayers/greenkeeper/mocha-4.0.1
Update mocha to the latest version 🚀
2017-10-06 08:46:26 +02:00
Frederic Junod
dfe9e9b59a Add new ol.format.filter.Contains spatial operator 2017-10-06 08:45:17 +02:00
greenkeeper[bot]
a6a6ce9879 chore(package): update mocha to version 4.0.1 2017-10-06 05:15:58 +00:00
Tim Schaub
0802f50bc6 Use lowercase module identifiers until ol@5 2017-10-05 16:42:45 -06:00
Tim Schaub
9a50f9ff75 Merge pull request #7311 from tschaub/release-v4.4.0
Release v4.4.0
2017-10-05 15:55:10 -06:00
Tim Schaub
757fd8bde4 Updating package versions 2017-10-05 14:58:54 -06:00
Tim Schaub
633e70b67d Changelog for v4.4.0 2017-10-05 14:58:37 -06:00
Tim Schaub
d4540c693d Merge pull request #7307 from openlayers/greenkeeper/sinon-4.0.1
Update sinon to the latest version 🚀
2017-10-05 07:53:06 -06:00
greenkeeper[bot]
16aed2b33e chore(package): update sinon to version 4.0.1 2017-10-04 09:23:20 +00:00
Tim Schaub
0f53f61741 Merge pull request #7306 from trevorblades/enable-wheel-in-freehand
Enable mouse wheel in freehand draw mode
2017-10-03 21:16:40 -06:00
Trevor Blades
62461bc1d2 Enable mouse wheel in freehand draw mode
Previously, events weren't being propagated if the active draw
interaction had its `freehand` property set to true. This means that
you can't use your mouse wheel to zoom the map in freehand mode.

This change sets the default `pass` value to true and adds additional
logic to determine when it should be set to false (and stop event
propagation).
2017-10-03 16:22:08 -07:00
Kogis IWI
232f56e229 Fix #7304: Re-calculate the resolution when the WMS source is reprojected 2017-10-03 17:25:44 +02:00
Andreas Hocevar
f9cf5a3523 Merge pull request #7302 from openlayers/greenkeeper/mocha-4.0.0
Update mocha to the latest version 🚀
2017-10-03 15:05:13 +02:00
greenkeeper[bot]
fedb575118 chore(package): update mocha to version 4.0.0 2017-10-03 08:15:14 +00:00
Andreas Hocevar
2e16d04bbe Merge pull request #7298 from openlayers/greenkeeper/eslint-4.8.0
Update eslint to the latest version 🚀
2017-09-30 09:35:01 +02:00
greenkeeper[bot]
f4de075c02 chore(package): update eslint to version 4.8.0 2017-09-29 22:40:35 +00:00
Andreas Hocevar
c54a1f5362 Merge pull request #7297 from ahocevar/multipoint-replay
Fix multipoint instruction set
2017-09-29 13:36:18 +02:00
Andreas Hocevar
fdacd368f7 Fix multipoint instruction set 2017-09-29 13:17:07 +02:00
Tim Schaub
27b4b1fff1 Merge pull request #7295 from openlayers/greenkeeper/coveralls-3.0.0
chore(package): update coveralls to version 3.0.0
2017-09-28 16:42:06 -06:00
greenkeeper[bot]
3494a51578 chore(package): update coveralls to version 3.0.0
Closes #7293
2017-09-28 17:29:41 +00:00
Tim Schaub
8354d5f0a6 Merge pull request #7267 from tschaub/fade
Render tiles with an opacity transition
2017-09-27 19:51:55 -07:00
Andreas Hocevar
64aa3c25a4 Merge pull request #7292 from ahocevar/polygon-labels
Only render polygon labels when they fit
2017-09-27 22:55:47 +02:00
Tim Schaub
68a1a497b0 Don't look for alt tiles if alpha is 1 2017-09-27 11:55:45 -06:00
Tim Schaub
3161e5bbaf Back to 250 ms for the transition 2017-09-27 11:55:45 -06:00
Tim Schaub
8033e25663 Vector tile rendering requires canvas to be cleared 2017-09-27 11:55:45 -06:00
Tim Schaub
22f0b30737 Doc typo 2017-09-27 11:55:45 -06:00
Tim Schaub
79e9dc8128 Render the view resolution tiles last 2017-09-27 11:55:45 -06:00
Tim Schaub
0f53d04361 Only clear canvas when necessary, add tests 2017-09-27 11:55:45 -06:00
Tim Schaub
ecc2a9059e Check for alt tiles when in transition, always prefer higher z 2017-09-27 11:55:45 -06:00
Tim Schaub
f7bfee8497 Ensure tile transitions complete 2017-09-27 11:55:45 -06:00
Tim Schaub
16e6d13700 Make tile transitions configurable 2017-09-27 11:55:45 -06:00
Tim Schaub
76726a3a6f Render tiles with an opacity transition 2017-09-27 11:55:45 -06:00
Andreas Hocevar
90ee1013ad Merge pull request #7291 from openlayers/greenkeeper/pbf-3.1.0
Update pbf to the latest version 🚀
2017-09-27 18:55:57 +02:00
Andreas Hocevar
0c617abf70 Update pbf for ol package 2017-09-27 18:40:19 +02:00
Andreas Hocevar
50568a6394 Simplify vector-layer example and always render labels 2017-09-27 18:06:57 +02:00
Andreas Hocevar
325fac6886 Consider polygon labels only when they fit the intersection length 2017-09-27 18:06:30 +02:00
Andreas Hocevar
7a3e11b9e4 Change getInteriorPoint type to XYM with intersection length as M 2017-09-27 18:06:05 +02:00
greenkeeper[bot]
9975528c76 fix(package): update pbf to version 3.1.0 2017-09-27 15:42:41 +00:00
Andreas Hocevar
c75040e7d8 Merge pull request #7290 from openlayers/greenkeeper/sinon-4.0.0
Update sinon to the latest version 🚀
2017-09-27 11:08:25 +02:00
greenkeeper[bot]
99d67b1d75 chore(package): update sinon to version 4.0.0 2017-09-26 08:52:18 +00:00
Tim Schaub
35a2f90ecd Merge pull request #7289 from openlayers/release-v4.3.4
Release v4.3.4
2017-09-25 22:48:40 -07:00
Tim Schaub
080b93f1b8 Changes for v4.3.4 2017-09-25 22:35:44 -07:00
Tim Schaub
521f001944 Convert pointerId to string for object lookups 2017-09-25 22:32:48 -07:00
Andreas Hocevar
7a87c15959 Merge pull request #7287 from ahocevar/text-line-baseline
Fix vertical stroke/fill alignment for text along lines
2017-09-25 08:25:20 +02:00
Andreas Hocevar
ca11fd00c1 Fix vertical stroke/fill alignment for text along lines 2017-09-24 22:54:45 +02:00
Tim Schaub
73b3213a96 Merge pull request #7285 from tschaub/ios-11-fix
Convert pointerId to string for object lookups
2017-09-24 11:17:48 -06:00
Tim Schaub
3a8c873fa1 Convert pointerId to string for object lookups 2017-09-23 09:56:04 -06:00
Frédéric Junod
0503e3384d Merge pull request #7280 from EduardoNogueira/master
Updated docs for deleteCondition
2017-09-22 08:45:00 +02:00
Frédéric Junod
357d96986a Merge pull request #7281 from openlayers/greenkeeper/eslint-4.7.2
Update eslint to the latest version 🚀
2017-09-22 08:21:00 +02:00
greenkeeper[bot]
d7a2446594 chore(package): update eslint to version 4.7.2 2017-09-21 21:25:56 +00:00
Eduardo Nogueira
481645ab88 Updated docs for deleteCondition 2017-09-21 17:58:30 +01:00
Bart van den Eijnden
272a05ff94 Merge pull request #7274 from bartvde/set-loader
Add ability to change the loader of a vector source
2017-09-20 16:43:21 +02:00
bartvde
bbde224f50 Add ability to change the loader of a vector source 2017-09-20 11:31:11 +02:00
Frédéric Junod
5c49371198 Merge pull request #7273 from openlayers/greenkeeper/clean-css-cli-4.1.10
Update clean-css-cli to the latest version 🚀
2017-09-19 12:02:00 +02:00
greenkeeper[bot]
308d6e9081 chore(package): update clean-css-cli to version 4.1.10 2017-09-19 09:41:22 +00:00
Frédéric Junod
510043d304 Merge pull request #7259 from fredj/missing_doc_param
Add missing param doc tag for ol.format.WKT.prototype.writeFeatures
2017-09-19 08:20:03 +02:00
Marc Jansen
bd5fad4982 Merge pull request #7272 from openlayers/greenkeeper/eslint-4.7.1
Update eslint to the latest version 🚀
2017-09-19 07:00:48 +02:00
greenkeeper[bot]
f4d8871936 chore(package): update eslint to version 4.7.1 2017-09-18 23:24:34 +00:00
Tim Schaub
34ffb7ee5b Merge pull request #7269 from openlayers/greenkeeper/sinon-3.3.0
Update sinon to the latest version 🚀
2017-09-18 06:30:30 -06:00
greenkeeper[bot]
a862351702 chore(package): update sinon to version 3.3.0 2017-09-18 10:32:07 +00:00
Tim Schaub
bc3c4d905d Merge pull request #7265 from openlayers/greenkeeper/rollup-0.50.0
Update rollup to the latest version 🚀
2017-09-16 11:58:22 -06:00
greenkeeper[bot]
82d0b2bb24 fix(package): update rollup to version 0.50.0 2017-09-16 13:54:59 +00:00
Andreas Hocevar
239b8f752e Merge pull request #7263 from openlayers/greenkeeper/eslint-4.7.0
Update eslint to the latest version 🚀
2017-09-16 06:36:26 +02:00
greenkeeper[bot]
f46fdb261d chore(package): update eslint to version 4.7.0 2017-09-15 22:23:48 +00:00
Tim Schaub
b689ca2318 Merge pull request #7260 from openlayers/release-v4.3.3
Release v4.3.3
2017-09-15 12:35:53 -06:00
Tim Schaub
288a284fdd Changes for v4.3.3 2017-09-15 06:15:49 -06:00
Andreas Hocevar
a5b3da1f8a Revert "Merge pull request #7098 from ahocevar/no-math-round"
This reverts commit 5b75666755, reversing
changes made to ff9ef481db.
2017-09-15 06:13:18 -06:00
Frédéric Junod
57909a730f Merge pull request #7254 from openlayers/greenkeeper/closure-util-1.24.0
Update closure-util to the latest version 🚀
2017-09-15 08:57:04 +02:00
Andreas Hocevar
e398896e9e Merge pull request #7258 from ahocevar/revert-7098
Revert changes made in #7098.
2017-09-15 08:56:29 +02:00
Frederic Junod
b200438a16 Add missing param doc tag for ol.format.WKT.prototype.writeFeatures 2017-09-15 08:55:58 +02:00
Andreas Hocevar
010dd87d49 Revert "Merge pull request #7098 from ahocevar/no-math-round"
This reverts commit 5b75666755, reversing
changes made to ff9ef481db.
2017-09-15 08:39:05 +02:00
Frédéric Junod
53937642c8 Merge pull request #7220 from fredj/abstract_filters
Mark ol.format.filter.Spatial as abstract class
2017-09-15 08:26:29 +02:00
Andreas Hocevar
6177c69a51 Merge pull request #7257 from openlayers/greenkeeper/jsdoc-3.5.5
Update jsdoc to the latest version 🚀
2017-09-14 09:34:10 +02:00
Andreas Hocevar
a0c96ea8ba Let Travis use the latest node v8 version again 2017-09-14 08:58:15 +02:00
greenkeeper[bot]
d7d31ac571 fix(package): update jsdoc to version 3.5.5 2017-09-14 03:03:49 +00:00
Frederic Junod
f0fd866eaf Add a deprecated warning in abstract filter classes 2017-09-13 16:31:08 +02:00
Frederic Junod
6ed414e8f7 Add missing 'abstract' tag in ol.format.filter classes 2017-09-13 16:20:45 +02:00
Tino Desjardins
e63214a2cc Mark ol.format.filter.Spatial as abstract class
Add missing abstract class description for class ol.format.filter.Spatial like in all other abstract classes.
2017-09-13 16:20:45 +02:00
greenkeeper[bot]
199b9d4b14 fix(package): update closure-util to version 1.24.0 2017-09-13 12:44:28 +00:00
Andreas Hocevar
0543b5a8d7 Merge pull request #7249 from ahocevar/rename-package-camelcase
Script to rename files so the case matches the module name
2017-09-13 14:37:22 +02:00
Andreas Hocevar
39ef72431a Merge pull request #7251 from openlayers/greenkeeper/fs-extra-4.0.2
Update fs-extra to the latest version 🚀
2017-09-13 14:29:22 +02:00
Andreas Hocevar
dc48a7d411 Merge pull request #7252 from wb14123/osm-way
fix osmxml to read ways before the definition of nodes
2017-09-13 14:27:31 +02:00
Andreas Hocevar
cd0de288e6 Fix node version to 8.4 until JSDoc is fixed 2017-09-13 14:18:27 +02:00
Andreas Hocevar
5e5c58b9be Merge pull request #7253 from openlayers/issue-template
Nicer wording in the issue template
2017-09-13 13:40:20 +02:00
Andreas Hocevar
d7307c565b Nicer wording in the issue template 2017-09-13 13:37:53 +02:00
Bin Wang
cd36c8e02f fix node to 8.4 in travis 2017-09-13 18:03:56 +08:00
Andreas Hocevar
1d84bc52c6 Use node 8.4 in Travis until JSDoc is fixed
See https://github.com/jsdoc3/jsdoc/issues/1438.
2017-09-13 08:26:49 +02:00
Bin Wang
e32e72f1a0 fix osmxml to read ways before the definition of nodes 2017-09-13 11:27:51 +08:00
greenkeeper[bot]
7729822253 fix(package): update fs-extra to version 4.0.2 2017-09-12 23:23:17 +00:00
Andreas Hocevar
5499028042 Rename before running transform 2017-09-12 21:13:58 +02:00
Andreas Hocevar
e876003684 Use the correct name in imports 2017-09-12 18:03:03 +02:00
Andreas Hocevar
d0e9fd68ff Rename files so the case matches the module name 2017-09-12 18:03:03 +02:00
Andreas Hocevar
b920b78afe Merge pull request #7236 from KlausBenndorf/cloneImage
reusing images in ol.style.Icon#clone
2017-09-12 13:15:04 +02:00
Marc Jansen
761f4318bc Merge pull request #7246 from marcjansen/fix-7244
Compare measured lengths with a tolerance
2017-09-12 12:43:07 +02:00
Marc Jansen
2d0805ca54 Merge pull request #7247 from marcjansen/fix-7245
Raise tolerance of rendering tests to pass on Firefox 55 (GNU/Linux)
2017-09-12 12:41:52 +02:00
simonseyock
f73cda8ef5 reusing images in ol.style.Icon#clone 2017-09-12 11:58:38 +02:00
Andreas Hocevar
c89bcae4c6 Merge pull request #7243 from openlayers/greenkeeper/mocha-3.5.3
Update mocha to the latest version 🚀
2017-09-12 11:57:39 +02:00
Andreas Hocevar
f5277c091b Merge pull request #7239 from ahocevar/linestring-text
Render text along lines
2017-09-12 11:42:35 +02:00
Andreas Hocevar
e2ebd05624 Use a stricter type for chars_ 2017-09-12 11:27:26 +02:00
Andreas Hocevar
2306d08cf4 Merge pull request #7242 from ahocevar/source-error-not-empty
Use EMPTY and LOADED state properly on ol.VectorImageTile
2017-09-12 11:19:53 +02:00
Marc Jansen
20e8a26b89 Raise tolerance of rendering tests to pass on Firefox 55 (GNU/Linux) 2017-09-12 09:41:13 +02:00
Marc Jansen
9abfa95735 Compare measured lengths with a tolerance 2017-09-12 09:34:53 +02:00
Andreas Hocevar
9898112709 Add sans-serif font fallback 2017-09-12 09:08:54 +02:00
greenkeeper[bot]
41cc3a58d3 chore(package): update mocha to version 3.5.3 2017-09-12 00:12:46 +00:00
Andreas Hocevar
8573a7ba64 Only set LOADED state when all source tiles loaded successfully 2017-09-11 23:23:54 +02:00
Andreas Hocevar
b65c6f7e8e Use ERROR instead of EMPTY state when source tiles have ERROR state 2017-09-11 22:15:42 +02:00
Andreas Hocevar
2907fc3297 Remove duplicate test 2017-09-11 22:14:56 +02:00
Andreas Hocevar
85bfeda50e Add rendering tests 2017-09-11 16:54:28 +02:00
Andreas Hocevar
7a30e495ba Make the vector-labels example even uglier
This example is a candidate for removal and replacement with rendering
tests.
2017-09-11 16:54:28 +02:00
Andreas Hocevar
94a4554083 Find longest straight chunk when textAlign is not set 2017-09-11 16:54:28 +02:00
Andreas Hocevar
abd50b8fcf Utility to get the longest straight chunk of a linestring 2017-09-11 16:54:28 +02:00
Andreas Hocevar
ad5ce25559 Use the placement: 'line' property in the street-labels example
This makes the code of the example much simpler.
2017-09-11 16:54:27 +02:00
Andreas Hocevar
efc86d59b0 Implement text rendering along paths
This commit also changes the TextReplay.drawText() signature, and moves
geometry calculation into drawText(). This improves performance where no
text needs to be rendered (TextStyle.getText() == ''), which is used often
in applications.
2017-09-11 16:54:27 +02:00
Andreas Hocevar
37dcd79a86 Add placement, maxAngle and exceedLength options to ol.style.Text 2017-09-11 15:51:06 +02:00
Marc Jansen
ec578fa58e Merge pull request #7240 from openlayers/greenkeeper/mocha-3.5.2
Update mocha to the latest version 🚀
2017-09-11 06:36:39 +02:00
greenkeeper[bot]
5c3c97ffa0 chore(package): update mocha to version 3.5.2 2017-09-10 23:39:18 +00:00
Marc Jansen
a28b128078 Merge pull request #7238 from openlayers/greenkeeper/mocha-3.5.1
Update mocha to the latest version 🚀
2017-09-10 19:57:15 +02:00
greenkeeper[bot]
4c32535ff3 chore(package): update mocha to version 3.5.1 2017-09-10 07:52:13 +00:00
Andreas Hocevar
b03bb2c2ce Merge pull request #7234 from ahocevar/tileload-events
Fix abort handling of tileload events
2017-09-08 07:13:28 +02:00
Andreas Hocevar
dde9fb5bc4 Fix abort handling of tileload events 2017-09-08 06:50:55 +02:00
Andreas Hocevar
416f7156e8 Merge pull request #7221 from thhomas/zoomify-update-iip
update zoomify source to accept tileIndex placeholders and handle iip…
2017-09-07 12:55:13 +02:00
Andreas Hocevar
d7c732419d Merge pull request #6871 from ath0mas/patch-1
Correct controls position in Center example
2017-09-07 11:32:36 +02:00
Andreas Hocevar
d9d371479a Avoid !important selectors 2017-09-07 09:16:03 +02:00
Andreas Hocevar
7c977e0c35 Merge pull request #7229 from ahocevar/jsdoc-paths
Fix JSDoc paths for custom builds
2017-09-07 09:06:55 +02:00
Andreas Hocevar
59417d4a52 Merge pull request #7230 from ahocevar/image-context
Remove unused context handling for ol.Image
2017-09-07 09:06:05 +02:00
Andreas Hocevar
9400d600ee Fix jsdoc paths 2017-09-06 21:13:45 +02:00
Andreas Hocevar
73e88fc465 Remove unused context handling for ol.Image 2017-09-06 21:13:11 +02:00
Andreas Hocevar
2925a9ceb3 Merge pull request #7225 from ahocevar/image-hitdetect
Fix hit detection for image layers
2017-09-06 21:09:25 +02:00
Andreas Hocevar
531115b67b Add regression test 2017-09-06 19:03:36 +02:00
Tim Schaub
34efcea5b1 Merge pull request #7223 from tschaub/transform-updates
Transform updates
2017-09-06 04:06:32 -06:00
Andreas Hocevar
e1783fc788 Fix travis build 2017-09-06 10:02:15 +02:00
Andreas Hocevar
c15aa414bd Fix hit detection for image layers 2017-09-06 07:33:07 +02:00
Tim Schaub
e412ba113c Add @module annotation to source modules 2017-09-05 14:46:09 -06:00
Tim Schaub
f118338c0a Add .js extension to import paths 2017-09-05 13:27:26 -06:00
Thomas Tilak
c43a46c5b7 update zoomify source to accept tileIndex placeholders and handle iipsource, update tests and examples 2017-09-05 18:27:35 +02:00
Frédéric Junod
ab59f79f6a Merge pull request #7219 from fredj/carto_domain
Change cartodb domain from cartodb.com to carto.com
2017-09-05 09:42:48 +02:00
Frederic Junod
2b0dfaeaed Change cartodb domain from cartodb.com to carto.com 2017-09-05 07:52:23 +02:00
Tim Schaub
08a27a358e Merge pull request #7212 from openlayers/greenkeeper/clean-css-cli-4.1.9
chore(package): update clean-css-cli to version 4.1.9
2017-09-04 11:29:04 -06:00
Andreas Hocevar
c1fb2d5d85 Merge pull request #7213 from openlayers/greenkeeper/eslint-4.6.1
Update eslint to the latest version 🚀
2017-09-04 06:32:58 +02:00
greenkeeper[bot]
2ba7abc419 chore(package): update eslint to version 4.6.1 2017-09-03 21:53:28 +00:00
Tim Schaub
05339618e2 Merge pull request #7210 from tschaub/optimize-for-2
Avoid unnecessary calculations for a zoom factor of 2
2017-09-03 08:08:01 -06:00
greenkeeper[bot]
6d0cf001b9 chore(package): update clean-css-cli to version 4.1.9
Closes #7211
2017-09-03 06:21:53 +00:00
Tim Schaub
d777edcc05 Fast path for parent range when zoom factor is 2 2017-09-02 20:46:51 -06:00
Tim Schaub
eb31b75caa Fast path for child range when zoom factor is 2 2017-09-02 20:37:33 -06:00
Tim Schaub
f77c9180a0 Merge pull request #7209 from tschaub/work-with-z
Remove grid.getTileRangeForExtentAndResolution()
2017-09-02 15:14:17 -06:00
Andreas Hocevar
f99300a83d Merge pull request #7201 from ahocevar/text-renderer
Prerender text to images
2017-09-02 22:57:48 +02:00
Tim Schaub
5e6a4e8cb7 Avoid unnecessary calls to tileGrid.getZForResolution() 2017-09-02 14:34:08 -06:00
Andreas Hocevar
3860ef0198 Merge pull request #7208 from ahocevar/no-coverage-locally
Do not calculate coverage when running tests locally
2017-09-02 18:09:32 +02:00
Andreas Hocevar
ab16457d90 Do not calculate coverage when running tests locally
Having the coverage calculation code in the test files makes it hard to debug
tests, so it is better to only analyze coverage on Travis, and not locally.
2017-09-02 17:19:04 +02:00
Frédéric Junod
46a7d6c969 Merge pull request #7207 from openlayers/greenkeeper/eslint-4.6.0
Update eslint to the latest version 🚀
2017-09-02 07:58:48 +02:00
greenkeeper[bot]
15922d3388 chore(package): update eslint to version 4.6.0 2017-09-01 23:06:25 +00:00
Andreas Hocevar
56a7f9f027 Help the compiler understand 2017-09-01 16:44:27 +02:00
Andreas Hocevar
ba3570a268 Remove unnecessary array creation 2017-09-01 13:56:14 +02:00
Andreas Hocevar
8f28398684 Merge pull request #7206 from ahocevar/vectortile-load-extent
Only load source tiles that intersect the source tile grid's extent
2017-09-01 12:01:48 +02:00
Andreas Hocevar
b24e4c4f65 Fix existing tests to use valid urlTileCoords 2017-09-01 11:48:00 +02:00
Andreas Hocevar
115b2eb937 Merge pull request #7203 from ahocevar/edge-testing
Enable Edge tests on SauceLabs
2017-09-01 11:34:07 +02:00
Andreas Hocevar
040e67d166 Only load source tiles that intersect the source tile grid's extent 2017-09-01 11:27:53 +02:00
Frédéric Junod
53e471fd1f Merge pull request #7194 from fredj/deprecate_deviceorientation
Deprecate ol.DeviceOrientation
2017-09-01 10:16:29 +02:00
Bart van den Eijnden
40ca32b393 Merge pull request #7198 from bartvde/wfs-update-geom-name
Use geometry name in WFS updates
2017-09-01 09:21:09 +02:00
bartvde
2d3fa05b91 Use geometry name in WFS updates 2017-09-01 09:00:34 +02:00
Frederic Junod
34428cfea6 Deprecate ol.DeviceOrientation 2017-09-01 08:49:41 +02:00
Tim Schaub
48bcaf395f Merge pull request #7205 from openlayers/release-v4.3.2
Release v4.3.2
2017-08-31 16:27:10 -06:00
Tim Schaub
6ed8a9229f Update package version to 4.3.2 2017-08-31 16:25:07 -06:00
Tim Schaub
60b2290add Changelog for v4.3.2 2017-08-31 16:24:14 -06:00
Frederic Junod
afcc86558c Export ol.Sphere.getLength and ol.Sphere.getArea 2017-08-31 16:20:15 -06:00
Andreas Hocevar
0410a32868 Merge pull request #7172 from f7o/ol-source-vectortile-clear
added clear method to vectortile source
2017-08-31 23:01:48 +02:00
Andreas Hocevar
39a26bf20f Merge pull request #7196 from ahocevar/overlay-tests
renderSync() to make sure overlay is initially visible
2017-08-31 22:53:18 +02:00
Andreas Hocevar
bfc3a14a2d Enable Edge tests on SauceLabs 2017-08-31 22:31:43 +02:00
Andreas Hocevar
60dfc1f96a renderSync() to make sure overlay is initially visible 2017-08-31 22:16:41 +02:00
Andreas Hocevar
b5966b8ff3 Add more text style tests 2017-08-31 22:14:51 +02:00
Andreas Hocevar
6469d3e864 Handle pixelRatio on replay creation instead of replay 2017-08-31 21:41:07 +02:00
Andreas Hocevar
35bd92b713 Prerender labels and cache them as images 2017-08-31 21:41:07 +02:00
Andreas Hocevar
5f2b729c74 Merge pull request #7193 from ahocevar/kml-uris
Fix KML links for documents created locally in Safari
2017-08-31 21:40:30 +02:00
Andreas Hocevar
097c7b689a Try a different configuration to make SauceConnect work in Travis again 2017-08-31 21:04:30 +02:00
Andreas Hocevar
683e46bd58 Enable Travis tests in Safari 2017-08-30 09:35:09 +02:00
Frédéric Junod
61af120cc7 Merge pull request #6977 from KlausBenndorf/modify-test-fix
Fixed modify feature test
2017-08-30 09:00:26 +02:00
Andreas Hocevar
99d933b66f Fix link handling in KML parser 2017-08-30 08:58:22 +02:00
Frédéric Junod
dd57b5a84b Merge pull request #7190 from openlayers/update_jsts
Use jsts version 1.4.0 in example
2017-08-30 08:51:12 +02:00
Andreas Hocevar
4987cf8ace Merge pull request #7191 from ahocevar/shader-templates
Fix provide/require for autogenerated shader files
2017-08-30 07:20:12 +02:00
Andreas Hocevar
5e42928937 Replace pyglslunit.py with a JavaScript rewrite 2017-08-29 23:11:24 +02:00
Andreas Hocevar
cf8c72c992 Fix provide/require structure for autogenerated shader files 2017-08-29 23:11:24 +02:00
Andreas Hocevar
5cfb1e4099 Merge pull request #7192 from viethang/patch-1
Fix typo
2017-08-29 23:10:50 +02:00
Viet Hang Nguyen
a4509e3246 Fix typo 2017-08-29 22:14:55 +02:00
Frederic Junod
9c0ea76be2 Use jsts version 1.4.0 in example 2017-08-29 16:21:59 +02:00
Bart van den Eijnden
09e9759753 Merge pull request #7133 from Sol1du2/issue/6991/WFSWriteDimension
Issue/6991/WFS Write Dimension
2017-08-29 09:57:44 +02:00
Bart van den Eijnden
6726e0a98c Merge pull request #7141 from Sol1du2/issue/6990/WFSReadSrsDimension
Issue/6990/Wfs Read srsDimension
2017-08-29 09:38:12 +02:00
Andreas Hocevar
d100ab1ef6 Merge pull request #7188 from openlayers/greenkeeper/rollup-0.49.1
fix(package): update rollup to version 0.49.1
2017-08-29 09:37:03 +02:00
Andreas Hocevar
ba867f8ff8 Merge pull request #7187 from ahocevar/simpler-tile-pixels
Simpler tile pixel handling and faster parsing for ol.format.MVT vector tiles
2017-08-29 09:16:54 +02:00
Florian Zouhar
bf2ff0ec8e added api annotation 2017-08-29 09:16:15 +02:00
Andreas Hocevar
a71946a7b5 Add missing extern
No idea why the compiler did not complain about this previously.
2017-08-29 08:51:06 +02:00
Andreas Hocevar
3cb5060497 Parse PBF directly in ol.format.MVT
This change also fixes a previous issue, where MultiPolygon geometries for
ol.Feature features were never created.
2017-08-29 08:51:06 +02:00
Tim Schaub
a0341f7c5b Merge pull request #7182 from tschaub/import-test-extensions
Avoid instanceof checks in global test extensions
2017-08-28 13:02:27 -06:00
Andreas Hocevar
4b4f383043 Transform tile-pixels coordinates only once
This allows us to simplify the vector tile renderer significantly, because
there are no more coordinates that need special tile-pixel handling.
2017-08-28 19:32:16 +02:00
Tim Schaub
0bfa59fb6f Avoid instanceof checks in global test extensions 2017-08-28 10:12:51 -06:00
greenkeeper[bot]
88415bae1a fix(package): update rollup to version 0.49.1
Closes #7183
2017-08-28 11:42:08 +00:00
Marc Jansen
989b047dc1 Merge pull request #7168 from gberaudo/cleaner_changelog
Exclude greenkeeper merges from changelog
2017-08-25 00:16:10 +02:00
Marc Jansen
5b13106cec Merge pull request #7162 from marcjansen/bring-back-coverage
Bring back coverage
2017-08-25 00:14:58 +02:00
Guillaume Beraudo
b4ffc8cf75 Put greekeeper changelog in a separate block 2017-08-23 08:07:36 +02:00
Marc Jansen
27baa3d698 Fix typo in where-function
I wonder how this has ever worked before. Black magic.
2017-08-22 21:31:15 +02:00
Marc Jansen
33adabf168 Bring back the progress reporter 2017-08-22 21:31:15 +02:00
Florian Zouhar
4476c1bb03 added clear method to vectortile source 2017-08-22 14:28:42 +02:00
Tim Schaub
46e17530bc Merge pull request #7165 from tschaub/test-fixes
More assorted test fixes
2017-08-21 11:20:34 -04:00
Tim Schaub
da60dafd7f Valid and unique URI for images in the tile queue 2017-08-21 10:32:05 -04:00
Tim Schaub
d23f000846 Correctly create image icons in the tests 2017-08-21 10:32:05 -04:00
Tim Schaub
cab34cb220 Avoid assertion about hardcoded "latest" url 2017-08-21 10:32:05 -04:00
Guillaume Beraudo
3b39ca350c Exclude greenkeeper merges from changelog
There is a great deal of lines about Greenkeeper merges in the changelog, making it
hard to find real changes to the code.

This commit modifies the changelog task to exclude such lines.
2017-08-21 14:55:43 +02:00
Andreas Hocevar
2421ae0254 Merge pull request #7142 from Sol1du2/issue/6992/UnitTest
Adds unit test to test the projection inside the geometry of esriJson
2017-08-21 12:00:53 +02:00
Andreas Hocevar
f3ccbeef18 Merge pull request #7163 from ahocevar/mapbox-style
Remove bundling magic for Mapbox styles script
2017-08-21 04:37:11 -04:00
Andreas Hocevar
2ef5f99599 Remove bundling magic for Mapbox styles script 2017-08-21 09:48:51 +02:00
Andreas Hocevar
1ed092e2fa Merge pull request #7166 from openlayers/greenkeeper/rollup-0.48.1
fix(package): update rollup to version 0.48.1
2017-08-20 13:39:05 -04:00
Andreas Hocevar
e0278334e2 Update rollup to v0.48.2 2017-08-20 13:23:22 -04:00
Andreas Hocevar
bd098c7821 Update rollup options object 2017-08-20 13:14:53 -04:00
greenkeeper[bot]
400f754e44 fix(package): update rollup to version 0.48.1
Closes #7164
2017-08-20 15:18:10 +00:00
Marc Jansen
d988e2871b Push coverage info to coveralls 2017-08-19 19:46:34 +02:00
Marc Jansen
53214f6ae1 Bring back coverage reporting 2017-08-19 19:46:34 +02:00
Marc Jansen
f36c557aca Ignore coverage output directory 2017-08-19 18:06:42 +02:00
Frédéric Junod
98b863604b Merge pull request #7161 from openlayers/greenkeeper/eslint-4.5.0
Update eslint to the latest version 🚀
2017-08-19 07:03:41 +02:00
greenkeeper[bot]
95e0e14794 chore(package): update eslint to version 4.5.0 2017-08-19 03:09:55 +00:00
Tim Schaub
f95e95a48d Merge pull request #7160 from tschaub/updates
Assorted test updates
2017-08-18 21:29:15 -04:00
Tim Schaub
93cfc063c3 Correctly create an icon image 2017-08-18 17:35:59 -04:00
Tim Schaub
b44db8eb26 Missing require in tileurlfunction.test.js 2017-08-18 16:53:46 -04:00
Tim Schaub
145505fa8a Missing require in epsg3857.test.js 2017-08-18 16:48:06 -04:00
Tim Schaub
670c6d9f3f Use window for global 2017-08-18 16:32:01 -04:00
Tim Schaub
6113821d7c Transform all test .js 2017-08-18 15:57:10 -04:00
Tim Schaub
521f06e91c Remove provide from tile.test.js 2017-08-18 15:56:20 -04:00
Tim Schaub
617e13f61a Merge pull request #7158 from tschaub/comments
Retain comments when replacing nodes
2017-08-18 11:39:21 -04:00
Tim Schaub
71370405c3 Retain comments when replacing 2017-08-18 11:20:13 -04:00
Tim Schaub
1e7f21f423 Merge pull request #7153 from tschaub/modules
Scripts for in-place transforms
2017-08-18 02:31:41 -04:00
Tim Schaub
9a9901b9bd Merge pull request #7154 from tschaub/more-unused
Unused require in examples/d3.js
2017-08-18 02:31:10 -04:00
Tim Schaub
55fb814ec8 Scripts for in-place transforms 2017-08-17 18:31:58 -04:00
Tim Schaub
908fdbc311 Unused require in examples/d3.js 2017-08-17 18:29:42 -04:00
Tim Schaub
83f87a1f1e Merge pull request #7151 from tschaub/useless-exports
Get rid of useless test exports
2017-08-17 18:15:51 -04:00
Marc Jansen
682ef4ee08 Merge pull request #7152 from marcjansen/cla-test-pr-tpl
Adjust the pull request template (tests, CLA, wording)
2017-08-17 15:46:36 -04:00
Marc Jansen
ab132d5b3e Merge pull request #7150 from marcjansen/less-spies
Remove problematic spies from scaleline tests
2017-08-17 15:18:32 -04:00
Marc Jansen
5126002146 Adjust the pull request template 2017-08-17 21:18:06 +02:00
Tim Schaub
a3e3e99baa Get rid of useless test exports 2017-08-17 15:16:58 -04:00
Tim Schaub
2d13f3c6e1 Merge pull request #7149 from tschaub/unused-requires
Remove unused requires
2017-08-17 15:16:42 -04:00
Marc Jansen
d6200ff625 Remove problematic spies from scaleline tests 2017-08-17 20:57:42 +02:00
Tim Schaub
d19dfa0775 Remove unused requires 2017-08-17 14:46:18 -04:00
Andreas Hocevar
74107816b4 Merge pull request #7148 from ahocevar/webgl-define
Remove ol.ENABLE_WEBGL wrap from WebGL files
2017-08-17 14:39:08 -04:00
Tim Schaub
f30f6da7bb Merge pull request #7147 from tschaub/extra-requires
Remove unnecessary import in events.test.js
2017-08-17 14:38:42 -04:00
Andreas Hocevar
f4420c5352 Do not exclude WebGL code in transformed files 2017-08-17 13:51:59 -04:00
Tim Schaub
cdd9af8caa Merge pull request #7146 from openlayers/unmodified-version
Avoid modifying imports
2017-08-17 13:38:33 -04:00
Tim Schaub
28c79af676 Merge pull request #7144 from openlayers/greenkeeper/sinon-3.2.1
Update sinon to the latest version 🚀
2017-08-17 13:22:25 -04:00
Andreas Hocevar
5161a99925 Remove ol.ENABLE_WEBGL condition from webgl files 2017-08-17 13:21:53 -04:00
Tim Schaub
967cffc398 Allow longer for first animation to finish 2017-08-17 13:20:49 -04:00
Tim Schaub
d3527bf910 Avoid modifying imports 2017-08-17 13:20:39 -04:00
Tim Schaub
13550fbb4c Remove unnecessary import in events.test.js 2017-08-17 13:13:39 -04:00
Tim Schaub
aeb9d45c19 Merge pull request #7145 from tschaub/spaceless
Spaceless provides
2017-08-17 12:07:06 -04:00
Tim Schaub
738aa4c698 Remove space from provide 2017-08-17 11:51:37 -04:00
Tim Schaub
544953f932 Throw if provide has space 2017-08-17 11:51:29 -04:00
greenkeeper[bot]
66498c0da5 chore(package): update sinon to version 3.2.1 2017-08-17 15:07:03 +00:00
Andreas Hocevar
7ea5fb023f Merge pull request #7136 from ahocevar/empty-image
Use data URI instead of whole empty image
2017-08-17 11:04:21 -04:00
Andreas Hocevar
2a117cce8f Use data URI instead of whole empty image 2017-08-17 10:43:29 -04:00
Tim Schaub
2566c50a10 Merge pull request #7137 from tschaub/updates
Developer documentation updates
2017-08-17 10:40:29 -04:00
Tim Schaub
7b906b9e44 Tell people to use Node 8 2017-08-17 10:26:16 -04:00
Andreas Hocevar
9b92fa1957 Merge pull request #7138 from ahocevar/pixelmatch-pixelratio
Improvements to the new test setup
2017-08-17 08:56:07 -04:00
Andreas Hocevar
55be9b8d3c Use specific pixelRatio so tests run on all devices 2017-08-17 08:40:53 -04:00
Andreas Hocevar
b710c1f76e Use pixelmatch instead of resemble.js 2017-08-17 08:40:53 -04:00
Joao Gouveia
a0b76a5604 Adds unit test to test the projection inside the geometry of esriJson
This adds a unit test that tests weather the projection (spatial reference)
is being added inside the geometry object when writing features as
esriJson.
2017-08-17 11:21:33 +02:00
Frédéric Junod
42680307cc Merge pull request #7140 from openlayers/export_sphere_functions
Export ol.Sphere.getLength and ol.Sphere.getArea
2017-08-17 10:22:25 +02:00
Joao Gouveia
5fce1b0351 Adds srsDimension to the pos and posList nodes when writing a WFS transaction
The WFS transaction failed if the srsDimension was not present on the
geometries.
Unit tests have been changed to accomodate the srsDimension attribute.
2017-08-17 10:04:16 +02:00
Frederic Junod
456c85979d Export ol.Sphere.getLength and ol.Sphere.getArea 2017-08-17 08:40:36 +02:00
Andreas Hocevar
890f83e54d Merge pull request #7131 from ahocevar/doc-import
Print ES6 import hint on each doc page
2017-08-16 23:30:15 -04:00
Tim Schaub
ac9fb9f92c Merge pull request #7135 from openlayers/greenkeeper/closure-util-1.23.0
Update closure-util to the latest version 🚀
2017-08-16 21:57:13 -04:00
Tim Schaub
964f0f33b4 Document how to run tests in other browsers 2017-08-16 21:44:13 -04:00
Tim Schaub
50e15dc3e7 Merge pull request #6953 from tschaub/tests
Run tests in real browsers with Karma
2017-08-16 17:15:50 -04:00
Andreas Hocevar
df4b77b2bb Merge pull request #7127 from ahocevar/street-labels-geojson
Use static GeoJSON instead of Overpass query for faster loading
2017-08-16 16:58:32 -04:00
Tim Schaub
a61e9f563c No sudo and add comment 2017-08-16 16:58:22 -04:00
Andreas Hocevar
0f29ea4f0e Use static GeoJSON instead of Overpass query for faster loading 2017-08-16 16:42:59 -04:00
Tim Schaub
1cad1ffab6 Name tests like the pull request 2017-08-16 16:38:53 -04:00
Tim Schaub
ea5484d676 Avoid Edge and Safari for now 2017-08-16 16:16:16 -04:00
Tim Schaub
1fdef48812 Run tests on Sauce 2017-08-16 16:07:31 -04:00
Tim Schaub
5d0b1efba7 Fix typos 2017-08-16 14:36:49 -04:00
Tim Schaub
73afb656d7 Test fixes 2017-08-16 14:24:42 -04:00
Tim Schaub
02b2cdbd27 Remove unused tasks and update instructions 2017-08-16 13:45:13 -04:00
Tim Schaub
fb820f4b81 Run tests on Firefox in Travis 2017-08-16 13:45:13 -04:00
Tim Schaub
3bdddeac1d More test cleanup 2017-08-16 13:45:13 -04:00
Tim Schaub
a2c043d1b4 Clean up after rendering tests 2017-08-16 13:43:28 -04:00
Tim Schaub
46bcce464f Add missing requires to tests 2017-08-16 13:43:28 -04:00
Tim Schaub
39cf0ee154 Avoid failure when other tests don't clean up 2017-08-16 13:43:28 -04:00
Tim Schaub
a5113715ef Conditionally run WebGL rendering tests 2017-08-16 13:43:28 -04:00
Tim Schaub
36f01e7b08 Expose describe and it on where 2017-08-16 13:35:32 -04:00
Tim Schaub
0dfd6da5a9 Run rendering tests with the rest of the tests 2017-08-16 13:35:32 -04:00
Tim Schaub
8e91d51d7c Provide Karma with updated dependencies on change 2017-08-16 13:35:31 -04:00
Tim Schaub
32c26c2524 More consistent clean up 2017-08-16 13:35:31 -04:00
Tim Schaub
44a976eb60 Run tests in real browsers with Karma 2017-08-16 13:35:31 -04:00
greenkeeper[bot]
7abe24010a fix(package): update closure-util to version 1.23.0 2017-08-16 14:54:54 +00:00
Joao Gouveia
163fc2e8e6 Adds Unit testing 2017-08-16 12:13:18 +02:00
Andreas Hocevar
86d0074386 Print ES6 import hint on each doc page 2017-08-15 19:17:06 -04:00
Andreas Hocevar
44558b7c89 Merge pull request #7125 from ahocevar/remove-error-vector-tiles
Do not try to render error tiles from VectorTile source
2017-08-15 16:34:16 -04:00
Tim Schaub
81acbc0f25 Merge pull request #6855 from tschaub/pluggable
Pluggable renderers
2017-08-15 16:20:31 -04:00
Andreas Hocevar
c69cf27218 Trigger change when source tile state changes
A VectorImageTile now gets changed() whenever one of its source tiles's state
changes, until all source tiles are LOADED.
2017-08-15 16:12:41 -04:00
Tim Schaub
1674fcc680 Fall back to canvas to preserve old behavior 2017-08-15 15:37:37 -04:00
Tim Schaub
9277902535 Add a Canvas map 2017-08-15 15:37:37 -04:00
Tim Schaub
8a08ab6463 Correct types 2017-08-15 15:37:37 -04:00
Tim Schaub
8e90976bf2 Indentation fix 2017-08-15 15:37:37 -04:00
Tim Schaub
1a6ea341fe Pluggable map 2017-08-15 15:37:37 -04:00
Tim Schaub
cada78459f Only use WebGL renderer if ol.has.WEBGL 2017-08-15 15:37:37 -04:00
Tim Schaub
9271df7e1d Pluggable renderers 2017-08-15 15:37:37 -04:00
Tim Schaub
9bdd643014 Merge pull request #7128 from tschaub/animate-undef
Make view.animate() tolerate undefined views
2017-08-15 15:37:16 -04:00
Tim Schaub
ae62f5a682 Test that an animation series works with an undefined view 2017-08-15 13:33:19 -04:00
Tim Schaub
940f97e2a7 Make view.animate() tolerate undefined views 2017-08-15 13:28:50 -04:00
Frédéric Junod
8292e0e311 Merge pull request #7126 from openlayers/greenkeeper/phantomjs-prebuilt-2.1.15
Update phantomjs-prebuilt to the latest version 🚀
2017-08-15 09:25:50 +02:00
Joao Gouveia
f928209256 Fix srsDimension read on GML3 for Geoserver
Contrary to Mapserver, Geoserver sets the srsDimension attribute on
the child of the geometry node, not on the points list.
This fix searches that node as well.

A small unit test was also added.
2017-08-15 09:10:17 +02:00
greenkeeper[bot]
26270669df chore(package): update phantomjs-prebuilt to version 2.1.15 2017-08-14 15:13:58 +00:00
Andreas Hocevar
ee81a5e817 Do not try to render error tiles from source 2017-08-14 10:18:03 -04:00
Tim Schaub
d218c4d454 Merge pull request #7124 from openlayers/release-v4.3.1
Release v4.3.1
2017-08-14 09:51:08 -04:00
Tim Schaub
81f37708c1 Bumping versions to 4.3.1 2017-08-14 09:49:12 -04:00
Tim Schaub
8b0c6196e6 Changelog for v4.3.1 2017-08-14 09:48:22 -04:00
Tim Schaub
93a9799e46 Merge pull request #7122 from tschaub/unanimated
Immediately complete no-op animations
2017-08-14 09:43:39 -04:00
Tim Schaub
7f0c8fe899 Use ol.coordinate.equals 2017-08-14 09:25:41 -04:00
Andreas Hocevar
b06efa387c Merge pull request #7120 from ahocevar/fix-overzoom-hitdetect
Fix hit detection for overzoomed vector tiles
2017-08-14 09:21:04 -04:00
Tim Schaub
48178f0e31 Immediately complete no-op animations 2017-08-14 09:08:50 -04:00
Frédéric Junod
d65cabebd6 Merge pull request #7114 from GaborFarkas/webgl_immediate
Immediate WebGL text renderer and other improvements
2017-08-14 14:33:45 +02:00
Andreas Hocevar
992cf2b2d6 Fix hit detection for overzoomed vector tiles 2017-08-13 22:53:58 -04:00
Tim Schaub
1249b46e5d Merge pull request #7118 from openlayers/release-v4.3.0
Release v4.3.0
2017-08-12 16:47:05 -06:00
Tim Schaub
4733a5d0f9 Bump versions to 4.3.0 2017-08-12 16:33:47 -06:00
Tim Schaub
dfe51e6195 Logging changes 2017-08-12 16:32:53 -06:00
Tim Schaub
24d1f4eac3 Update the readme 2017-08-12 16:12:31 -06:00
Tim Schaub
95bf18f6bd Merge pull request #7117 from tschaub/vector-tilegrid
Sensible default tilegrid for vector tiles
2017-08-12 15:57:16 -06:00
Tim Schaub
8b0ee6023e Merge pull request #7116 from openlayers/greenkeeper/rollup-0.47.2
fix(package): update rollup to version 0.47.2
2017-08-12 15:41:50 -06:00
Tim Schaub
29fcf5f1c2 Take advantage of default tile grid 2017-08-12 15:40:36 -06:00
Andreas Hocevar
952a2cfba3 Merge pull request #7111 from ahocevar/graticule-nowrap
Remove broken wrapX handling from ol.Graticule
2017-08-12 15:36:30 -06:00
Tim Schaub
3b444978a7 Upgrade notes for vector tiles 2017-08-12 15:17:01 -06:00
Tim Schaub
13a761b7e7 Sensible default tilegrid for vector tiles 2017-08-12 15:16:55 -06:00
greenkeeper[bot]
89080cf8dd fix(package): update rollup to version 0.47.2
Closes #7113
2017-08-12 13:54:12 +00:00
GaborFarkas
f1685cbe4f Add immediate WebGL text renderer 2017-08-12 14:52:08 +02:00
GaborFarkas
d3c2c7f96d Fix hole bridging issue freezing the renderer 2017-08-12 14:52:08 +02:00
GaborFarkas
bb593eaac8 Fix WebGL text offset direction 2017-08-12 14:52:08 +02:00
Andreas Hocevar
bfd94445f1 Remove broken wrapX handling from ol.Graticule 2017-08-11 11:00:33 -06:00
Tim Schaub
7c5a208e07 Merge pull request #7107 from openlayers/greenkeeper/rollup-0.46.0
Update rollup to the latest version 🚀
2017-08-11 09:29:47 -06:00
greenkeeper[bot]
b38336b17f fix(package): update rollup to version 0.46.0 2017-08-11 13:50:32 +00:00
Andreas Hocevar
1af4d35713 Merge pull request #7106 from openlayers/greenkeeper/proj4-2.4.4
Update proj4 to the latest version 🚀
2017-08-11 06:53:38 -06:00
Tim Schaub
f2c51cb39e Merge pull request #7105 from tschaub/sphere
Functions for spherical calculations
2017-08-10 20:47:38 -06:00
Tim Schaub
5f794ab562 Make options optional 2017-08-10 20:31:46 -06:00
Andreas Hocevar
f4752cee59 Update proj4 in examples and docs 2017-08-10 20:27:49 -06:00
greenkeeper[bot]
3629a66917 chore(package): update proj4 to version 2.4.4 2017-08-11 02:22:58 +00:00
Tim Schaub
35f79f401b Merge pull request #7104 from openlayers/greenkeeper/sinon-3.2.0
Update sinon to the latest version 🚀
2017-08-10 20:22:16 -06:00
Tim Schaub
a58f162ed9 Update the measure example 2017-08-10 20:20:47 -06:00
Tim Schaub
f3ebbf4b7c Correct units 2017-08-10 18:45:49 -06:00
Tim Schaub
94fb7ca5a6 Function for getting spherical area 2017-08-10 18:30:42 -06:00
Tim Schaub
92c62e5432 Function for getting great circle lengths 2017-08-10 18:05:21 -06:00
GaborFarkas
87391e7795 Fix method name in WebGL polygonreplay 2017-08-10 21:04:53 +02:00
GaborFarkas
87a10200e3 WebGL triangulation performance 2017-08-10 21:04:53 +02:00
Bart van den Eijnden
445c157ee3 Merge pull request #6807 from Jenselme/initialize-hasZ-gml3
Initialize hasZ in the constructor of GML3
2017-08-10 20:02:44 +02:00
Julien Enselme
15ddab7d0a Initialize hasZ in the constructor of GML3 2017-08-10 19:44:20 +02:00
greenkeeper[bot]
3d72cc73b8 chore(package): update sinon to version 3.2.0 2017-08-10 14:37:40 +00:00
Tim Schaub
1b20f89c93 Merge pull request #7102 from tschaub/drag-drop-source
Allow drag and drop interaction to be configured with a source
2017-08-10 07:51:56 -06:00
Tim Schaub
17b6088a79 Allow drag and drop interaction to be configured with a source 2017-08-10 07:10:13 -06:00
Bart van den Eijnden
23405b80a2 Merge pull request #6825 from oterral/tesselate
Read/write Tessellate tag in KML format
2017-08-10 13:27:40 +02:00
Tim Schaub
5b75666755 Merge pull request #7098 from ahocevar/no-math-round
Use fractional coordinates for CSS positioning
2017-08-09 14:32:39 -06:00
Andreas Hocevar
1c8734b150 Use fractional coordinates for CSS positioning 2017-08-09 14:15:47 -06:00
Tim Schaub
ff9ef481db Merge pull request #7064 from ahocevar/no-foreach
Do not use Array.prototype.forEach when dealing with potentially large arrays
2017-08-09 13:59:49 -06:00
Tim Schaub
02cc7d643a Merge pull request #7093 from tschaub/modify-source
Allow modify interaction to be configured with a source
2017-08-09 13:55:33 -06:00
Andreas Hocevar
efee061251 Merge pull request #7096 from ahocevar/getfeaturesatpixel
Add new Map#getFeaturesAtPixel method
2017-08-09 13:54:50 -06:00
Tim Schaub
3551679a7c Merge pull request #7094 from icholy/master
Add missing zIndex options
2017-08-09 13:45:09 -06:00
Tim Schaub
86eacefe19 Allow modify interaction to be configured with a source 2017-08-09 13:35:25 -06:00
Andreas Hocevar
7d260c54d3 Add new Map#getFeaturesAtPixel method 2017-08-09 12:58:24 -06:00
Ilia Choly
25dca1ea3b Add missing zIndex options 2017-08-09 10:39:39 -04:00
Andreas Hocevar
6fd844d24c Merge pull request #7087 from ahocevar/fix-scaleline
Fix scale line for EPSG:4326 maps
2017-08-08 06:49:01 -06:00
Frédéric Junod
9f6839c87b Merge pull request #7088 from openlayers/greenkeeper/sinon-3.1.0
Update sinon to the latest version 🚀
2017-08-08 10:39:00 +02:00
Frédéric Junod
e9611e6a6b Merge pull request #7085 from openlayers/greenkeeper/eslint-4.4.1
Update eslint to the latest version 🚀
2017-08-08 08:59:36 +02:00
greenkeeper[bot]
b9089c00e3 chore(package): update sinon to version 3.1.0 2017-08-08 06:45:52 +00:00
Andreas Hocevar
388e2a93cb Fix scale line for EPSG:4326 maps 2017-08-07 20:42:28 -06:00
Andreas Hocevar
ac13dbccf1 Merge pull request #7084 from ahocevar/fix-street-labels-typo
Fix a typo in the street-labels example
2017-08-07 12:29:10 -06:00
Andreas Hocevar
1795a86f7f Fix a typo in the street-labels example 2017-08-07 12:01:42 -06:00
greenkeeper[bot]
66da6fc150 chore(package): update eslint to version 4.4.1 2017-08-07 17:48:33 +00:00
Andreas Hocevar
e0eec51eb3 Merge pull request #7082 from openlayers/greenkeeper/eslint-4.4.0
Update eslint to the latest version 🚀
2017-08-07 02:48:43 +02:00
Andreas Hocevar
4b4d711dbc Merge pull request #7079 from ahocevar/optimize-custom-renderer
Optimize custom renderer code, examples and API
2017-08-06 16:01:18 +02:00
greenkeeper[bot]
bb405e2919 chore(package): update eslint to version 4.4.0 2017-08-05 18:46:05 +00:00
Andreas Hocevar
f133f4fc3c Merge pull request #7080 from openlayers/greenkeeper/jsdoc-3.5.4
Update jsdoc to the latest version 🚀
2017-08-05 02:56:00 +02:00
Andreas Hocevar
35f22fb52c Only create custom style for text we actually render 2017-08-05 00:15:58 +02:00
Andreas Hocevar
617151c8ff Simplify the renderer function API 2017-08-05 00:15:58 +02:00
greenkeeper[bot]
25e1e11550 fix(package): update jsdoc to version 3.5.4 2017-08-04 22:08:21 +00:00
Andreas Hocevar
67aa1a6dc9 Cache coordinates for reuse on replay, not on geometry 2017-08-04 21:06:22 +02:00
Frédéric Junod
3290039b32 Merge pull request #7078 from geosense/vectortile_layer_getsource_return_type
Fix return type annotation of ol.layer.VectorTile.getSource
2017-08-04 13:39:40 +02:00
Aleš Jiránek
e52ca96dc3 Fix return type annotation of ol.layer.VectorTile.getSource 2017-08-04 12:05:17 +02:00
Frédéric Junod
25b851e7cb Merge pull request #7073 from gberaudo/notify_hidden_layer_group_changes
Make ol.layer.Group change handling consistent
2017-08-04 08:29:57 +02:00
Frédéric Junod
9cbbc30ce1 Merge pull request #7075 from openlayers/greenkeeper/sinon-3.0.0
Update sinon to the latest version 🚀
2017-08-04 08:29:32 +02:00
greenkeeper[bot]
2392f87113 chore(package): update sinon to version 3.0.0 2017-08-03 14:40:32 +00:00
Guillaume Beraudo
63b14f5f32 Make ol.layer.Group change handling consistent
Changes to the layer were only propagated in some cases like addition/removal of a
layer to the group.

To make it consistent both with the rest of the group.js file and with the
layer.js file, the changes are now always notified.
2017-08-03 11:44:06 +02:00
Andreas Hocevar
ee7795e31d Merge pull request #7072 from ahocevar/vectortile-docs
Improve API docs for ol.VectorTile
2017-08-03 10:51:26 +02:00
Andreas Hocevar
aba1045304 Improve API docs for ol.VectorTile 2017-08-03 10:30:24 +02:00
Andreas Hocevar
83c35758c8 Merge pull request #7070 from ahocevar/mvt-tilepixelratio
Get tilePixelRatio from MVT tiles
2017-08-03 08:46:56 +02:00
Andreas Hocevar
d4d371a4c2 Remove the tilePixelRatio option from ol.source.VectorTile 2017-08-03 00:20:29 +02:00
Andreas Hocevar
b3be7e7ba9 Get tilePixelRatio from MVT tiles 2017-08-02 20:11:14 +02:00
Andreas Hocevar
60f9c4be2d Merge pull request #7069 from openlayers/greenkeeper/mocha-3.5.0
Update mocha to the latest version 🚀
2017-08-01 10:27:23 +02:00
greenkeeper[bot]
22dfe93f8b chore(package): update mocha to version 3.5.0 2017-07-31 22:28:11 +00:00
Andreas Hocevar
1bbcdea9bd Merge pull request #7068 from openlayers/greenkeeper/fs-extra-4.0.1
Update fs-extra to the latest version 🚀
2017-07-31 23:40:46 +02:00
greenkeeper[bot]
e91ad26ac9 fix(package): update fs-extra to version 4.0.1 2017-07-31 18:27:27 +00:00
Andreas Hocevar
0fc3b0f58e Merge pull request #7066 from ahocevar/extent-event
Fix ol.interaction.Extent event type and documentation
2017-07-31 11:15:06 +02:00
Frédéric Junod
afe0c10f45 Merge pull request #7032 from raiyni/icon-fix
Fix KML Export Icon Anchor
2017-07-31 08:30:55 +02:00
Andreas Hocevar
d5fd215632 Fix ol.interaction.Extent event type and documentation 2017-07-30 23:32:16 +02:00
Andreas Hocevar
d9c49092e4 Merge pull request #7065 from ahocevar/extent-api
Only use API functions in example
2017-07-30 23:11:05 +02:00
Andreas Hocevar
9fdce0f2b1 Only use API functions in example 2017-07-30 22:51:56 +02:00
Andreas Hocevar
007d8c2d5e Merge pull request #7022 from ahocevar/custom-renderers
Allow styles to configure a custom renderer
2017-07-30 22:24:59 +02:00
Andreas Hocevar
68f6b61217 Address review comments 2017-07-30 00:32:51 +02:00
Andreas Hocevar
1b46f38696 Do not use Array.prototype.forEach for potentially large arrays 2017-07-29 23:16:23 +02:00
Andreas Hocevar
c6b942f185 Allow styles to configure a custom renderer
Two new examples show how custom renderers can be used to render text along
paths, and to declutter labels using 3rd party libraries.
2017-07-29 17:57:38 +02:00
Andreas Hocevar
2258c00fca Merge pull request #7061 from ahocevar/issue-pr-templates
Update docs and issue and pull request instructions
2017-07-28 17:02:33 +02:00
Andreas Hocevar
f01e5d3eaf Update Browserify tutorial to use the ol package 2017-07-28 16:29:13 +02:00
Andreas Hocevar
52a9ca6518 Mention other options in the closure tutorial 2017-07-28 16:21:45 +02:00
Andreas Hocevar
0d0f3cadc8 Update docs and readme 2017-07-28 16:21:45 +02:00
Andreas Hocevar
e454d3220e Add pull request and issue templates 2017-07-28 16:21:45 +02:00
Andreas Hocevar
9b90ec099c Merge pull request #7059 from ahocevar/extent-interaction-extent
Allow to configure Extent interaction with an extent
2017-07-28 15:59:50 +02:00
Andreas Hocevar
fad485069b Merge pull request #7060 from wnordmann/EPSG3857CodeChange
Removing invalid urn
2017-07-28 15:58:25 +02:00
Willie Nordmann
9ee1f6df98 Removing invalid urn 2017-07-28 08:14:27 -05:00
Andreas Hocevar
b0b68983f7 Allow to configure Extent interaction with an extent 2017-07-28 13:07:18 +02:00
Andreas Hocevar
8dbbe3ba5d Merge pull request #7051 from wnordmann/EPSG3857CodeChange
Changing the EPSG3857.PROJECTION array assignment and adding urn:ogc:…
2017-07-27 17:19:19 +02:00
Andreas Hocevar
e94b660b04 Merge pull request #7045 from ahocevar/immediate-image-size
Respect pixelRatio when scaling images
2017-07-27 16:42:21 +02:00
Andreas Hocevar
6cf3a3ca28 Merge pull request #7023 from ahocevar/vectortile-sizes
Update tile size and resolutions of vector tile examples
2017-07-27 16:22:34 +02:00
Bart van den Eijnden
7782870522 Merge pull request #7005 from Sol1du2/issue/6992/EsriJsonFormat
Add spatial reference inside geometry in EsriFormat
2017-07-27 14:40:02 +02:00
Willie Nordmann
648cd0ca61 Missed EPSG:900913 2017-07-26 13:08:39 -05:00
Willie Nordmann
b9b70ea3ec Changing the EPSG3857.PROJECTION array assignment and adding urn:ogc:crs:EPSG::3857 while removing a duplicate 2017-07-26 12:52:37 -05:00
Andreas Hocevar
2f1bfc42ca Merge pull request #7034 from probins/packagejson
Move non-build dependencies to devDependencies
2017-07-26 17:22:21 +02:00
Andreas Hocevar
2c358387a2 Merge pull request #7050 from openlayers/greenkeeper/sinon-2.4.1
Update sinon to the latest version 🚀
2017-07-26 17:17:27 +02:00
greenkeeper[bot]
70af444b98 chore(package): update sinon to version 2.4.1 2017-07-26 14:25:06 +00:00
Andreas Hocevar
707bc4a708 Merge pull request #6976 from ehanoj/patch-1
Example - Earthquake Clusters - Change evt.type of interaction
2017-07-26 16:03:46 +02:00
Andreas Hocevar
ac48af204e Merge pull request #7048 from openlayers/greenkeeper/sinon-2.4.0
Update sinon to the latest version 🚀
2017-07-26 10:51:52 +02:00
greenkeeper[bot]
fd7272ab1e chore(package): update sinon to version 2.4.0 2017-07-26 06:34:54 +00:00
Andreas Hocevar
ecadb6b685 Respect pixelRatio when scaling images 2017-07-25 11:06:27 +02:00
Andreas Hocevar
fa41c0bad6 Merge pull request #7041 from openlayers/greenkeeper/eslint-4.3.0
Update eslint to the latest version 🚀
2017-07-25 10:55:25 +02:00
Andreas Hocevar
dd878e2a4c Remove lint 2017-07-25 10:42:18 +02:00
Andreas Hocevar
8666c8fee8 Merge pull request #7042 from gkresic/lineDashOffset
Line dash offset
2017-07-24 19:06:33 +02:00
Andreas Hocevar
dd914ef635 Add rendering tests 2017-07-24 18:36:40 +02:00
gkresic
719abf7265 Support for lineDashOffset 2017-07-24 18:36:39 +02:00
Andreas Hocevar
c86d13f032 Merge pull request #6980 from ZachTRice/tilewms-tileclass
Added tileClass to TileWMS
2017-07-24 10:59:34 +02:00
greenkeeper[bot]
1b34dd945e chore(package): update eslint to version 4.3.0 2017-07-21 18:06:19 +00:00
Peter Robins
cc13641216 Move non-build dependencies to devDependencies 2017-07-19 11:05:41 +00:00
Andreas Hocevar
13a0ca5ca1 Merge pull request #7028 from greggian/graticule-perf
Fix Graticule use of incorrect min/maxLon values
2017-07-18 15:11:01 +02:00
Greg Gianforcaro
704cd03d96 Fix Graticule use of incorrect min/maxLon values
Appears to have just been a typeo, using the minLon_, maxLon_ member variables rather than the function parameters provided.

This was creating very wide lines of parallel which were sometimes very slow in Chrome.
2017-07-17 17:53:39 -04:00
Andreas Hocevar
e79a4dd006 Fix resolution creation function 2017-07-15 16:15:14 +02:00
Andreas Hocevar
4bb2f6c1f5 Use de-facto standard 512px tile size for vectortile layers 2017-07-15 16:14:54 +02:00
Frédéric Junod
89ec2dacad Merge pull request #7021 from openlayers/greenkeeper/fs-extra-4.0.0
Update fs-extra to the latest version 🚀
2017-07-15 08:20:34 +02:00
greenkeeper[bot]
b97439cf8e fix(package): update fs-extra to version 4.0.0 2017-07-14 18:11:16 +00:00
Ron Young
f61bd6352d ignore anchor if in default position 2017-07-14 13:16:42 +01:00
Andreas Hocevar
b7b2ee0c57 Merge pull request #7018 from openlayers/greenkeeper/jsdoc-3.5.3
Update jsdoc to the latest version 🚀
2017-07-14 07:56:41 +02:00
greenkeeper[bot]
fe39b5da1b fix(package): update jsdoc to version 3.5.3 2017-07-14 02:54:50 +00:00
Frédéric Junod
bc0bc3f8a9 Merge pull request #7015 from openlayers/greenkeeper/sinon-2.3.8
Update sinon to the latest version 🚀
2017-07-13 13:21:35 +02:00
greenkeeper[bot]
9c0d0c5681 chore(package): update sinon to version 2.3.8 2017-07-13 08:23:48 +00:00
Frédéric Junod
b97daf844b Merge pull request #7014 from openlayers/greenkeeper/jsdoc-3.5.2
Update jsdoc to the latest version 🚀
2017-07-13 08:39:54 +02:00
Tim Schaub
f8237c9cd2 Merge pull request #7013 from tschaub/sphere
Remove ol.sphere.WGS84 and ol.sphere.NORMAL
2017-07-12 21:14:05 -06:00
greenkeeper[bot]
b317a4474e fix(package): update jsdoc to version 3.5.2 2017-07-12 18:20:07 +00:00
Frédéric Junod
b1772dae44 Merge pull request #6981 from gberaudo/intermediate_canvas_rendering
Render transparent vector layers to an intermediate canvas
2017-07-12 14:14:13 +02:00
Guillaume Beraudo
c33383d248 Add rendering test for transparent layer 2017-07-12 10:56:15 +02:00
Guillaume Beraudo
645e359cde Render transparent vector layers to an intermediate canvas
Until now, the features of transparent vector layers were rendered using
the layer opacity. This caused colors to mix together and the opacities
to stack up to an higher value than the expected layer opacity.

With this commit, the features are rendered at 100% opacity to an
intermediate canvas which ensures colors do not mix up even in the case
of features using an array of styles. The intermediate canvas is then
composed to the map canvas using the layer opacity.

Transparent layers are automatically detected, non-transparent layers
are not affected by the change.
2017-07-12 09:23:04 +02:00
Tim Schaub
fa71593a2a Remove ol.sphere.NORMAL 2017-07-11 08:10:46 -06:00
Tim Schaub
2e903c0293 Remove ol.sphere.WGS84 2017-07-11 08:00:41 -06:00
Tim Schaub
aced192bcd Merge pull request #6899 from probins/radii
Use number literal for sphere radius
2017-07-11 07:08:30 -06:00
Andreas Hocevar
19b0b956f7 Merge pull request #7011 from openlayers/greenkeeper/jsdoc-3.5.1
Update jsdoc to the latest version 🚀
2017-07-11 00:02:28 +02:00
greenkeeper[bot]
9f9355ac46 fix(package): update jsdoc to version 3.5.1 2017-07-10 18:22:28 +00:00
Andreas Hocevar
f28e6c2d95 Merge pull request #7008 from openlayers/greenkeeper/sinon-2.3.7
Update sinon to the latest version 🚀
2017-07-10 19:13:06 +02:00
Andreas Hocevar
e633380221 Merge pull request #7007 from openlayers/greenkeeper/rollup-0.45.0
fix(package): update rollup to version 0.45.0
2017-07-10 19:11:58 +02:00
Andreas Hocevar
5f6f757bd0 Update rollup configuration 2017-07-10 18:59:58 +02:00
greenkeeper[bot]
b29fc52842 chore(package): update sinon to version 2.3.7 2017-07-10 13:23:45 +00:00
greenkeeper[bot]
791ffaabeb fix(package): update rollup to version 0.45.0
Closes #7001
2017-07-10 14:48:30 +02:00
Andreas Hocevar
c31d67fe57 Merge pull request #6996 from ch08532/bugfix/6987
6987: Memory leak with WMS time source with reprojection
2017-07-10 13:01:46 +02:00
Andreas Hocevar
a1710be335 Merge pull request #7003 from openlayers/greenkeeper/jsdoc-3.5.0
Update jsdoc to the latest version 🚀
2017-07-10 12:36:56 +02:00
Andreas Hocevar
2260d92436 Return promise to avoid truncated stdout output 2017-07-10 12:02:33 +02:00
Andreas Hocevar
4d0e106d98 Change paths for jsdoc 3.5 2017-07-10 12:02:12 +02:00
Joao Gouveia
2be40953a8 Add spatial reference inside geometry in EsriFormat
As mentioned on issue 6992, EsriFormat was adding the spatial reference
outside the geometry, failing to insert data via the Arcgis rest API.
The spatial reference should be inside the geometry.
2017-07-10 10:24:04 +02:00
Frédéric Junod
8bc4bde5c3 Merge pull request #7004 from fredj/https
Use https for bing and stamen attributions
2017-07-10 08:58:49 +02:00
Frederic Junod
429e2982d0 Use https for bing and stamen attributions 2017-07-10 08:31:51 +02:00
greenkeeper[bot]
23f8540b4c fix(package): update jsdoc to version 3.5.0 2017-07-10 02:30:32 +00:00
Andreas Hocevar
59d8d749e3 Merge pull request #6998 from openlayers/greenkeeper/eslint-4.2.0
Update eslint to the latest version 🚀
2017-07-09 16:52:47 +02:00
Andreas Hocevar
cff9ef5e63 Remove lint 2017-07-09 16:11:36 +02:00
Andreas Hocevar
e6e0109a1b Merge pull request #6999 from ahocevar/vectortile-source-multilayer
Make VectorTile source work with multiple layers
2017-07-09 14:39:27 +02:00
Andreas Hocevar
7739239e89 Make VectorTile source work with multiple layers 2017-07-09 14:08:08 +02:00
greenkeeper[bot]
eb8d5bcade chore(package): update eslint to version 4.2.0 2017-07-09 03:45:00 +00:00
Chris Amaral
ff242ef28c timeimage.js - Added newTile.refreshInterimChain() to clean up interimTile references and preventing memory leak 2017-07-07 13:57:50 -04:00
Andreas Hocevar
4a0f97ac6a Merge pull request #6988 from ahocevar/vectortile-types
Add missing type annotations
2017-07-06 16:53:23 +02:00
Andreas Hocevar
a0e0e76995 Add missing type annotations 2017-07-06 12:31:57 +02:00
Frédéric Junod
b5f9b88d0e Merge pull request #6984 from openlayers/greenkeeper/closure-util-1.22.0
Update closure-util to the latest version 🚀
2017-07-06 11:20:14 +02:00
greenkeeper[bot]
339f048826 fix(package): update closure-util to version 1.22.0 2017-07-05 07:56:48 +00:00
ZachTRice
8db49fa981 Added tileClass to TileWMS 2017-07-04 10:20:02 -04:00
Andreas Hocevar
4f0bfbc1db Merge pull request #6970 from cmortazavi/patch-1
Fix Bug when adding/removing layer with no cache
2017-07-03 20:34:13 +02:00
Simon Seyock
5063f4d868 Removed usage of private property 2017-07-03 11:43:11 +02:00
ehanoj
77273321b7 Change evt.type of interaction
OriginalEvent 'mousemove' break default OL interaction move of map canvas. Using OL event 'pointermove' have same function and allow move of map canvas.
2017-07-02 23:03:09 +02:00
cmortazavi
db63cc1b23 Fix Bug when adding/removing layer with no cache 2017-07-02 09:34:14 +02:00
Andreas Hocevar
f88d8b8a7d Merge pull request #6972 from ahocevar/loaded-error-tiles
Handle error tiles properly
2017-06-29 09:33:33 +02:00
Andreas Hocevar
991328904d Merge pull request #6973 from openlayers/greenkeeper/clean-css-cli-4.1.6
Update clean-css-cli to the latest version 🚀
2017-06-29 09:33:03 +02:00
greenkeeper[bot]
9d3539b3cb chore(package): update clean-css-cli to version 4.1.6 2017-06-29 07:05:11 +00:00
Frédéric Junod
bd143c0ad1 Merge pull request #6971 from openlayers/greenkeeper/sinon-2.3.6
Update sinon to the latest version 🚀
2017-06-29 08:58:16 +02:00
Andreas Hocevar
970265acb0 Give preloaded lower resolution tiles a chance to display immediately 2017-06-29 00:02:24 +02:00
Andreas Hocevar
36c80f61bc Do not delete tile keys for error or empty tiles 2017-06-28 23:16:11 +02:00
greenkeeper[bot]
d86c7c22dc chore(package): update sinon to version 2.3.6 2017-06-28 18:22:37 +00:00
Andreas Hocevar
71b334d49c Merge pull request #6968 from ahocevar/spin-animation
Shortest arc rotation animation improvements and upgrade notes
2017-06-28 17:11:01 +02:00
Andreas Hocevar
ee0eb8b1a0 Normalize rotation to values between -180 and 180 degrees after animation 2017-06-28 16:36:33 +02:00
Andreas Hocevar
cd4ed759ed Upgrade notes and example update for shortest arc rotation animation 2017-06-28 15:31:26 +02:00
Andreas Hocevar
c0e4da6d8c Merge pull request #6966 from ahocevar/resolution-for-zoom
Add getResolutionForZoom method for ol.View
2017-06-28 13:01:54 +02:00
Andreas Hocevar
72f5ff917f Merge pull request #6965 from ahocevar/shortest-rotation
Use shortest rotation delta for animation
2017-06-28 13:01:33 +02:00
Andreas Hocevar
4c9c9fa719 Merge pull request #6967 from ahocevar/bing-road-on-demand
Add RoadOnDemand imagery set to Bing example
2017-06-28 10:56:54 +02:00
Frédéric Junod
163e01a2dc Merge pull request #6964 from fredj/kml_DataParser
Fix KML ExtendedData reading
2017-06-28 10:53:55 +02:00
Andreas Hocevar
79862ca8c2 Add RoadOnDemand imagery set to Bing example 2017-06-28 10:40:06 +02:00
Andreas Hocevar
aa8d7b0b36 Add getResolutionForZoom method for ol.View 2017-06-28 10:30:32 +02:00
Andreas Hocevar
8d0857fd7a Merge pull request #6958 from ahocevar/vectorimagetile-cleanup
Remove error tiles after loading is finished
2017-06-28 10:21:20 +02:00
Andreas Hocevar
67f69a32bb Use shortest rotation delta for animation 2017-06-28 10:06:10 +02:00
Frederic Junod
382674975e Fix KML ExtendedData reading 2017-06-28 09:51:18 +02:00
Frédéric Junod
eaaa895b0a Merge pull request #6793 from GaborFarkas/webgl_text
Webgl text
2017-06-27 15:44:57 +02:00
Tim Schaub
70b971d3a4 Merge pull request #6960 from tschaub/queue-then-load
Queue tiles before loading
2017-06-26 23:42:25 -06:00
Tim Schaub
3ddb8712a3 Queue tiles before loading 2017-06-26 18:31:53 -06:00
Andreas Hocevar
533ca8b9fe Remove error tiles after loading is finished 2017-06-26 16:16:47 +02:00
Andreas Hocevar
0fc710bc48 Merge pull request #6957 from openlayers/greenkeeper/eslint-4.1.1
Greenkeeper/eslint 4.1.1
2017-06-26 16:03:53 +02:00
Andreas Hocevar
fe18636ff9 Remove lint 2017-06-26 14:56:07 +02:00
Andreas Hocevar
c299bfcd0f Merge pull request #6955 from openlayers/greenkeeper/async-2.5.0
Update async to the latest version 🚀
2017-06-26 07:31:06 +02:00
greenkeeper[bot]
3f5a6bca26 chore(package): update eslint to version 4.1.1
Closes #6950
2017-06-26 02:33:20 +00:00
greenkeeper[bot]
a6b35e7d8a fix(package): update async to version 2.5.0 2017-06-26 00:06:01 +00:00
GaborFarkas
619e85e737 Fix linting issues 2017-06-23 21:12:27 +02:00
GaborFarkas
b3407b0554 Add reindented texture shader 2017-06-23 20:51:46 +02:00
GaborFarkas
a4c421e699 Use glyph atlases 2017-06-23 20:44:41 +02:00
GaborFarkas
a3a443324d Add tests for WebGL TextReplay 2017-06-23 20:44:41 +02:00
GaborFarkas
7b9833fdce Conform TextReplay to the new structure 2017-06-23 20:44:41 +02:00
GaborFarkas
bd87ec7c83 Conform ImageReplay to the new structure 2017-06-23 20:44:41 +02:00
GaborFarkas
26bfa7a172 Refactor WebGL ImageReplay 2017-06-23 20:37:37 +02:00
GaborFarkas
f82bc15013 Minimal working text renderer 2017-06-23 20:34:52 +02:00
GaborFarkas
da60b96445 Style texts and draw them on canvas 2017-06-23 20:34:52 +02:00
GaborFarkas
2ed5abed07 Add WebGL text defaults 2017-06-23 20:34:52 +02:00
Peter Robins
49dcda7794 Use number literal for sphere radii 2017-06-22 09:15:59 +00:00
Marc Jansen
9fc0fb5e74 Merge pull request #6916 from marcjansen/eslint-4-upgrade
Upgrade eslint to v4.0.0
2017-06-22 07:55:06 +02:00
Andreas Hocevar
d32006b324 Merge pull request #6943 from openlayers/greenkeeper/sinon-2.3.5
Update sinon to the latest version 🚀
2017-06-20 21:43:56 +02:00
Marc Jansen
feabb6440d Add reindented shader sources 2017-06-20 11:45:48 +02:00
Marc Jansen
87e9c9ad46 Change indentation of shader mustache template 2017-06-20 11:45:48 +02:00
Marc Jansen
7d6929c710 Manual adjustment of indentation 2017-06-20 10:41:03 +02:00
greenkeeper[bot]
887642e69c chore(package): update sinon to version 2.3.5 2017-06-20 07:47:44 +00:00
Andreas Hocevar
b9e6619b2d Merge pull request #6939 from ahocevar/cachesize-fix-abort
Abort loading when tile is disposed
2017-06-20 09:35:14 +02:00
Frédéric Junod
78b5fe5f8c Merge pull request #6930 from openlayers/translate_no_map
Handle setActive(false) on an interaction without map
2017-06-20 08:30:45 +02:00
Andreas Hocevar
72e9b74b3e Abort loading when tile is disposed 2017-06-19 18:26:10 +02:00
Andreas Hocevar
c6aeda1511 Merge pull request #6936 from ahocevar/cachesize-fix-tilequeue
Do not stop the render loop when all wanted tiles are aborted
2017-06-19 15:47:26 +02:00
Frédéric Junod
eb501e1244 Merge pull request #6920 from klokantech/type-strength-consistency-fix
Fix minor type strength inconsistency
2017-06-19 15:45:26 +02:00
Andreas Hocevar
1f51c14e7e Do not stop the render loop when all wanted tiles are aborted 2017-06-19 15:17:59 +02:00
Andreas Hocevar
dee3ebdc54 Merge pull request #6935 from ahocevar/no-data-uri
Use transparent image from canvas context
2017-06-19 13:30:08 +02:00
Marc Jansen
d0ef05977b Autofix indentation issues (eslint --fix) 2017-06-19 11:58:00 +02:00
Marc Jansen
a17db4f45c Configure indent rule more explicitly 2017-06-19 11:56:06 +02:00
Andreas Hocevar
20974fea55 Use transparent image from canvas context 2017-06-19 10:13:03 +02:00
Tim Schaub
416df98505 Merge pull request #6933 from probins/proj4
Improve proj.get() logic
2017-06-18 18:15:43 -06:00
Peter Robins
fb5891cd48 Improve proj.get() logic 2017-06-18 09:47:07 +00:00
Bart van den Eijnden
1d4a482c1a Merge pull request #6931 from bartvde/feature-prefix-wfs
Make sure we use the default featurePrefix
2017-06-15 22:04:51 +02:00
bartvde
8d57a879ce Make sure we use the default featurePrefix 2017-06-15 16:33:07 +02:00
Frederic Junod
3e7aecd094 Handle setActive(false) on an interaction without map 2017-06-15 08:41:52 +02:00
Andreas Hocevar
c46bc1f02a Merge pull request #6928 from ahocevar/reproj-resolution
Only adjust resolution when center within projection extent
2017-06-14 16:31:00 +02:00
Andreas Hocevar
0d0ed6c130 Only adjust resolution when center within projection extent 2017-06-14 15:33:16 +02:00
Frédéric Junod
0045bed6e7 Merge pull request #6923 from fredj/strict_mode
Load tasks/build-ext.js in strict mode
2017-06-14 09:46:48 +02:00
Frederic Junod
0982dc0551 Load tasks/build-ext.js in strict mode
For nodejs 4.x compatibility.
2017-06-13 16:50:29 +02:00
Andreas Hocevar
e38efc7cbe Merge pull request #6918 from ahocevar/image-reproject-pixelratio
Remove unnecessary pixelRatio check
2017-06-13 13:07:31 +02:00
Petr Sloup
ea4e5f2293 Fix minor type strength inconsistency 2017-06-13 12:58:57 +02:00
Andreas Hocevar
29d1590bc6 Remove unnecessary pixelRatio check 2017-06-13 11:12:27 +02:00
Andreas Hocevar
e14ee2ea72 Merge pull request #6917 from probins/patch-1
Correct typo in graticule docs
2017-06-13 11:09:41 +02:00
Peter Robins
68ca4b3c2a Correct typo in graticule docs 2017-06-13 09:42:18 +01:00
Marc Jansen
4ad85e52e2 Upgrade eslint to v4.0.0 2017-06-13 09:35:15 +02:00
Alexis THOMAS
0511202743 Correct controls position in Center example 2017-06-02 14:16:57 +02:00
oterral
ca90157e9f Write all geometry's properties in KML 2017-05-17 16:58:59 +02:00
oterral
132634f10c Add parsing of Tessellate tag in KML fomat 2017-05-17 14:26:39 +02:00
777 changed files with 123068 additions and 15666 deletions

8
.github/ISSUE_TEMPLATE.md vendored Normal file
View File

@@ -0,0 +1,8 @@
Thank you for your interest in making OpenLayers better!
To keep this project manageable for maintainers, we ask you to please check all boxes below before submitting an issue.
- [ ] I am submitting a bug or feature request, not a usage question. Go to https://stackoverflow.com/questions/tagged/openlayers for questions.
- [ ] I have searched GitHub to see if a similar bug or feature request has already been reported.
- [ ] I have verified that the issue is present in the latest version of OpenLayers (see 'LATEST' on https://openlayers.org/).
- [ ] If reporting a bug, I have created a [CodePen](https://codepen.io) or prepared a stack trace (using the latest version and unminified code, so e.g. `ol-debug.js`, not `ol.js`) that shows the issue.

9
.github/PULL_REQUEST_TEMPLATE.md vendored Normal file
View File

@@ -0,0 +1,9 @@
Thank you for your interest in making OpenLayers better!
In order to get your proposed changes merged into the master branch, we ask you to please make sure the following boxes are checked *before* submitting your pull request.
- [ ] This pull request addresses an issue that has been marked with the 'Pull request accepted' label & I have added the link to that issue.
- [ ] It contains one or more small, incremental, logically separate commits, with no merge commits.
- [ ] I have used clear commit messages.
- [ ] Existing tests pass for me locally & I have added or updated tests for new or changed functionality.
- [ ] The work herein is covered by a valid [Contributor License Agreement (CLA)](https://github.com/openlayers/cla).

4
.gitignore vendored
View File

@@ -1,4 +1,4 @@
/build/
/node_modules/
/dist/
/coverage/
/dist/
/node_modules/

View File

@@ -1,33 +1,22 @@
sudo: false
language: node_js
node_js:
- "6.1"
addons:
firefox: "52.0"
- '8'
cache:
directories:
- node_modules
env:
- DISPLAY=:99.0
before_install:
- "npm prune"
- node_modules
before_script:
- "rm src/ol/renderer/webgl/*shader.js"
- "sh -e /etc/init.d/xvfb start"
- "npm ls || true"
script: "make ci"
- rm src/ol/renderer/webgl/*shader.js
- rm src/ol/renderer/webgl/*shader/locations.js
script: make ci
after_success:
- "make test-coverage"
- "cat coverage/lcov.info | ./node_modules/.bin/coveralls"
- cat coverage/lcov.info | coveralls
branches:
only:
- master
- master
addons:
hosts:
- travis.dev
jwt:
# This is the encrypted SAUCE_ACCESS_KEY
secure: bb2Ibzu9RLe6ZlIG7JVcuH7IoLMxa/i3LTM7t8mbsPjVOGs5ycyJ7M9MbvqB/F2EzbeV4XB2c9ufI4TkaLYceY5kdWjfZVN8iasr+GFqKMv1uR4i6bpu8KmHJ+blxwfY1QOQ/cGwEx+fbeycMtpTc3Y3GyXaPlCQLhbZvesMg88=

View File

@@ -17,7 +17,7 @@ The minimum requirements are:
* GNU Make
* Git
* [Node.js](http://nodejs.org/) (higher than 0.12.x)
* [Node.js](http://nodejs.org/) (version 8 and above)
* Python 2.6 or 2.7
* Java 7 (JRE and JDK)

View File

@@ -3,12 +3,10 @@ BRANCH := $(shell git rev-parse --abbrev-ref HEAD)
SRC_GLSL := $(shell find src -type f -name '*.glsl')
SRC_SHADER_JS := $(patsubst %shader.glsl,%shader.js,$(SRC_GLSL))
SRC_JS := $(filter-out $(SRC_SHADER_JS),$(shell find src -name '*.js'))
SRC_SHADERLOCATIONS_JS := $(patsubst %shader.glsl,%shader/locations.js,$(SRC_GLSL))
SRC_JS := $(filter-out $(SRC_SHADER_JS) $(SRC_SHADERLOCATIONS_JS),$(shell find src -name '*.js'))
SRC_JSDOC = $(shell find src -type f -name '*.jsdoc')
SPEC_JS := $(shell find test/spec -type f -name '*.js')
SPEC_RENDERING_JS := $(shell find test_rendering/spec -name '*.js')
EXAMPLES := $(shell find examples -type f)
EXAMPLES_HTML := $(filter-out examples/index.html,$(shell find examples -maxdepth 1 -type f -name '*.html'))
EXAMPLES_JS := $(patsubst %.html,%.js,$(EXAMPLES_HTML))
@@ -56,7 +54,6 @@ help:
@echo "Other less frequently used targets are:"
@echo
@echo "- build Build ol.js, ol-debug.js, ol.js.map and ol.css"
@echo "- lint Check the code with the linter"
@echo "- ci Run the full continuous integration process"
@echo "- apidoc Build the API documentation using JSDoc"
@echo "- cleanall Remove all the build artefacts"
@@ -70,7 +67,7 @@ apidoc: build/timestamps/jsdoc-$(BRANCH)-timestamp
build: build/ol.css build/ol.js build/ol-debug.js build/ol.js.map
.PHONY: check
check: lint build/ol.js test
check: build/ol.js test
.PHONY: check-examples
check-examples: $(CHECK_EXAMPLE_TIMESTAMPS)
@@ -86,21 +83,18 @@ check-deps:
done ;\
.PHONY: ci
ci: lint build test test-rendering package compile-examples check-examples apidoc
ci: build test package compile-examples check-examples apidoc
.PHONY: compile-examples
compile-examples: build/compiled-examples/all.combined.js
.PHONY: clean
clean:
rm -f build/timestamps/eslint-timestamp
rm -f build/timestamps/check-*-timestamp
rm -f build/ol.css
rm -f build/ol.js
rm -f build/ol.js.map
rm -f build/ol-debug.js
rm -f build/test_requires.js
rm -f build/test_rendering_requires.js
rm -rf build/examples
rm -rf build/compiled-examples
rm -rf build/package
@@ -119,34 +113,19 @@ examples: $(BUILD_EXAMPLES)
.PHONY: install
install: build/timestamps/node-modules-timestamp
.PHONY: lint
lint: build/timestamps/eslint-timestamp
.PHONY: npm-install
npm-install: build/timestamps/node-modules-timestamp
.PHONY: shaders
shaders: $(SRC_SHADER_JS)
shaders: $(SRC_SHADER_JS $(SRC_SHADERLOCATIONS_JS)
.PHONY: serve
serve: build/test_requires.js build/test_rendering_requires.js
serve:
node tasks/serve.js
.PHONY: test
test: build/timestamps/node-modules-timestamp build/test_requires.js
node tasks/test.js
.PHONY: test-coverage
test-coverage: build/timestamps/node-modules-timestamp
node tasks/test-coverage.js
.PHONY: test-rendering
test-rendering: build/timestamps/node-modules-timestamp \
build/test_rendering_requires.js
@rm -rf build/slimerjs-profile
@mkdir -p build/slimerjs-profile
@cp -r test_rendering/slimerjs-profile/* build/slimerjs-profile/
node tasks/test-rendering.js
test: build/timestamps/node-modules-timestamp
npm test
.PHONY: host-examples
host-examples: $(BUILD_HOSTED_EXAMPLES) \
@@ -189,7 +168,7 @@ build/compiled-examples/all.js: $(EXAMPLES_JS)
@python bin/combine-examples.py $^ > $@
build/compiled-examples/all.combined.js: config/examples-all.json build/compiled-examples/all.js \
$(SRC_JS) $(SRC_SHADER_JS) \
$(SRC_JS) $(SRC_SHADER_JS) $(SRC_SHADERLOCATIONS_JS) \
build/timestamps/node-modules-timestamp
@mkdir -p $(@D)
node tasks/build.js $< $@
@@ -200,14 +179,14 @@ build/compiled-examples/%.json: config/example.json build/examples/%.js \
@sed -e 's|{{id}}|$*|' $< > $@
build/compiled-examples/%.combined.js: build/compiled-examples/%.json \
$(SRC_JS) $(SRC_SHADER_JS) \
$(SRC_JS) $(SRC_SHADER_JS) $(SRC_SHADERLOCATIONS_JS)\
build/timestamps/node-modules-timestamp
@mkdir -p $(@D)
node tasks/build.js $< $@
build/timestamps/jsdoc-$(BRANCH)-timestamp: config/jsdoc/api/index.md \
config/jsdoc/api/conf.json $(SRC_JS) \
$(SRC_SHADER_JS) \
$(SRC_SHADER_JS) $(SRC_SHADERLOCATIONS_JS) \
$(shell find config/jsdoc/api/template -type f) \
build/timestamps/node-modules-timestamp
@mkdir -p $(@D)
@@ -248,14 +227,6 @@ $(BUILD_HOSTED)/build/ol-deps.js: host-libraries
--root_with_prefix "$(BUILD_HOSTED)/closure-library/third_party ../../third_party" \
--output_file $@
build/timestamps/eslint-timestamp: $(SRC_JS) $(SPEC_JS) $(SPEC_RENDERING_JS) \
$(TASKS_JS) $(EXAMPLES_JS) \
build/timestamps/node-modules-timestamp
@mkdir -p $(@D)
@echo "Running eslint..."
@./node_modules/.bin/eslint tasks test test_rendering src examples
@touch $@
build/timestamps/node-modules-timestamp: package.json
@mkdir -p $(@D)
npm install
@@ -266,7 +237,7 @@ build/ol.css: css/ol.css build/timestamps/node-modules-timestamp
@echo "Running cleancss..."
@./node_modules/.bin/cleancss $< > $@
build/ol.js: config/ol.json $(SRC_JS) $(SRC_SHADER_JS) \
build/ol.js: config/ol.json $(SRC_JS) $(SRC_SHADER_JS) $(SRC_SHADERLOCATIONS_JS) \
build/timestamps/node-modules-timestamp
@mkdir -p $(@D)
node tasks/build.js $< $@
@@ -276,12 +247,12 @@ build/ol.js: config/ol.json $(SRC_JS) $(SRC_SHADER_JS) \
@$(STAT_COMPRESSED) /tmp/ol.js.gz
@rm /tmp/ol.js.gz
build/ol.js.map: config/ol.json $(SRC_JS) $(SRC_SHADER_JS) \
build/ol.js.map: config/ol.json $(SRC_JS) $(SRC_SHADER_JS) $(SRC_SHADERLOCATIONS_JS) \
build/timestamps/node-modules-timestamp
@mkdir -p $(@D)
node tasks/build.js $< $@
build/ol-debug.js: config/ol-debug.json $(SRC_JS) $(SRC_SHADER_JS) \
build/ol-debug.js: config/ol-debug.json $(SRC_JS) $(SRC_SHADER_JS) $(SRC_SHADERLOCATIONS_JS) \
build/timestamps/node-modules-timestamp
@mkdir -p $(@D)
node tasks/build.js $< $@
@@ -291,16 +262,12 @@ build/ol-debug.js: config/ol-debug.json $(SRC_JS) $(SRC_SHADER_JS) \
@$(STAT_COMPRESSED) /tmp/ol-debug.js.gz
@rm /tmp/ol-debug.js.gz
build/test_requires.js: $(SPEC_JS) $(SRC_JS)
@mkdir -p $(@D)
@node tasks/generate-requires.js $^ > $@
%shader.js: %shader.glsl src/ol/webgl/shader.mustache tasks/glslunit.js build/timestamps/node-modules-timestamp
@node tasks/glslunit.js --input $< | ./node_modules/.bin/mustache - src/ol/webgl/shader.mustache > $@
build/test_rendering_requires.js: $(SPEC_RENDERING_JS)
%shader/locations.js: %shader.glsl src/ol/webgl/shaderlocations.mustache tasks/glslunit.js build/timestamps/node-modules-timestamp
@mkdir -p $(@D)
@node tasks/generate-requires.js $^ > $@
%shader.js: %shader.glsl src/ol/webgl/shader.mustache bin/pyglslunit.py build/timestamps/node-modules-timestamp
@python bin/pyglslunit.py --input $< | ./node_modules/.bin/mustache - src/ol/webgl/shader.mustache > $@
@node tasks/glslunit.js --input $< | ./node_modules/.bin/mustache - src/ol/webgl/shaderlocations.mustache > $@
.PHONY: package
package:

View File

@@ -9,9 +9,16 @@
## Getting Started
- Download the [latest release](https://openlayers.org/download/)
- Install with npm: `npm install openlayers`
- Clone the repo: `git clone git@github.com:openlayers/openlayers.git`
Use one of the following methods to use OpenLayers in your project:
* For use with webpack, Rollup, Browserify, or other module bundlers, install the [`ol` package](https://www.npmjs.com/package/ol):
```
npm install ol
```
* If you just want to add a `<script>` tag to test things out, you can link directly to one of the full builds from [cdnjs](https://cdnjs.com/libraries/openlayers) (not recommended for production)
* For use with Closure Library (rare), install the [`openlayers` package](https://npmjs.com/package/openlayers) and read the [tutorial](http://openlayers.org/en/latest/doc/tutorials/closure.html).
## Supported Browsers
@@ -33,4 +40,3 @@ Please see our guide on [contributing](CONTRIBUTING.md) if you're interested in
- Need help? Find it on [Stack Overflow using the tag 'openlayers'](http://stackoverflow.com/questions/tagged/openlayers)
- Follow [@openlayers](https://twitter.com/openlayers) on Twitter
- Discuss with openlayers users on IRC in `#openlayers` at `chat.freenode`

View File

@@ -1,120 +0,0 @@
#!/usr/bin/python
from optparse import OptionParser
import json
import re
import sys
ESCAPE_SEQUENCE = {
'\\': '\\\\',
'\n': '\\n',
'\t': '\\t'
}
def js_escape(s):
return ''.join(ESCAPE_SEQUENCE.get(c, c) for c in s)
def glsl_compress(s, shortNames):
# strip leading whitespace
s = re.sub(r'\A\s+', '', s)
# strip trailing whitespace
s = re.sub(r'\s+\Z', '', s)
# strip multi-line comments
s = re.sub(r'/\*.*?\*/', '', s)
# strip single line comments
s = re.sub(r'//.*?\n', '', s)
# replace multiple whitespace with a single space
s = re.sub(r'\s+', ' ', s)
# remove whitespace between non-word tokens
s = re.sub(r'(\S)\s+([^\w])', r'\1\2', s)
s = re.sub(r'([^\w])\s+(\S)', r'\1\2', s)
# replace original names with short names
for originalName, shortName in shortNames.items():
s = s.replace(originalName, shortName)
return s
def main(argv):
option_parser = OptionParser()
option_parser.add_option('--input')
option_parser.add_option('--output')
options, args = option_parser.parse_args(argv[1:])
context = {}
nextShortName = ord('a')
shortNames = {}
common, vertex, fragment = [], [], []
attributes, uniforms, varyings = {}, {}, {}
block = None
for line in open(options.input, 'rU'):
if line.startswith('//!'):
m = re.match(r'//!\s+NAMESPACE=(\S+)\s*\Z', line)
if m:
context['namespace'] = m.group(1)
continue
m = re.match(r'//!\s+CLASS=(\S+)\s*\Z', line)
if m:
context['className'] = m.group(1)
continue
m = re.match(r'//!\s+COMMON\s*\Z', line)
if m:
block = common
continue
m = re.match(r'//!\s+VERTEX\s*\Z', line)
if m:
block = vertex
continue
m = re.match(r'//!\s+FRAGMENT\s*\Z', line)
if m:
block = fragment
continue
else:
if block is None:
assert line.rstrip() == ''
else:
block.append(line)
m = re.match(r'attribute\s+\S+\s+(\S+);\s*\Z', line)
if m:
attribute = m.group(1)
if attribute not in attributes:
shortName = chr(nextShortName)
nextShortName += 1
attributes[attribute] = {'originalName': attribute, 'shortName': shortName}
shortNames[attribute] = shortName
m = re.match(r'uniform\s+\S+\s+(\S+);\s*\Z', line)
if m:
uniform = m.group(1)
if uniform not in uniforms:
shortName = chr(nextShortName)
nextShortName += 1
uniforms[uniform] = {'originalName': uniform, 'shortName': shortName}
shortNames[uniform] = shortName
m = re.match(r'varying\s+\S+\s+(\S+);\s*\Z', line)
if m:
varying = m.group(1)
if varying not in varyings:
shortName = chr(nextShortName)
nextShortName += 1
shortNames[varying] = shortName
context['getOriginalFragmentSource'] = js_escape(''.join(common + fragment))
context['getOriginalVertexSource'] = js_escape(''.join(common + vertex))
context['getFragmentSource'] = glsl_compress(''.join(common + fragment), shortNames)
context['getVertexSource'] = glsl_compress(''.join(common + vertex), shortNames)
context['getAttributes'] = [attributes[a] for a in sorted(attributes.keys())]
context['getUniforms'] = [uniforms[u] for u in sorted(uniforms.keys())]
if options.output and options.output != '-':
output = open(options.output, 'wb')
else:
output = sys.stdout
json.dump(context, output)
if __name__ == '__main__':
sys.exit(main(sys.argv))

View File

@@ -2,6 +2,281 @@
### Next release
#### Changed behavior of the `Draw` interaction
For better drawing experience, two changes were made to the behavior of the Draw interaction:
1. On long press, the current vertex can be dragged to its desired position.
2. On touch move (e.g. when panning the map on a mobile device), no draw cursor is shown, and the geometry being drawn is not updated. But because of 1., the draw cursor will appear on long press. Mouse moves are not affected by this change.
#### Changes in proj4 integration
Because relying on a globally available proj4 is not practical with ES modules, we have made a change to the way we integrate proj4:
* The `setProj4()` function from the `ol/proj` module was removed.
* A new `ol/proj/proj4` module with a `register()` function was added. Regardless of whether the application imports `proj4` or uses a global `proj4`, this function needs to be called with the proj4 instance as argument whenever projection definitions were added to proj4's registry with (`proj4.defs`).
It is also recommended to no longer use a global `proj4`. Instead,
npm install proj4
and import it:
```js
import proj4 from 'proj4';
```
Applications can be updated by importing the `register` function from the `ol/proj/proj4` module
```js
import {register} from 'ol/proj/proj4'
```
and calling it before using projections, and any time the proj4 registry was changed by `proj4.defs()` calls:
```js
register(proj4);
```
#### Removal of logos
The map and sources no longer accept a `logo` option. Instead, if you wish to append a logo to your map, add the desired markup directly in your HTML. In addition, you can use the `attributions` property of a source to display arbitrary markup per-source with the attribution control.
#### Replacement of `ol/Sphere` constructor with `ol/sphere` functions
The `ol/Sphere` constructor has been removed. If you were using the `getGeodesicArea` method, use the `getArea` function instead. If you were using the `haversineDistance` method, use the `getDistance` function instead.
Examples before:
```js
// using ol@4
import Sphere from 'ol/sphere';
var sphere = new Sphere(Sphere.DEFAULT_RADIUS);
var area = sphere.getGeodesicArea(polygon);
var distance = sphere.haversineDistance(g1, g2);
```
Examples after:
```js
// using ol@5
import {circular as circularPolygon} from 'ol/geom/Polygon';
import {getArea, getDistance} from 'ol/sphere';
var area = getArea(polygon);
var distance = getDistance(g1, g2);
var circle = circularPolygon(center, radius);
```
#### New signature for the `circular` function for creating polygons
The `circular` function exported from `ol/geom/Polygon` no longer requires a `Sphere` as the first argument.
Example before:
```js
// using ol@4
import Polygon from 'ol/geom/polygon';
import Sphere from 'ol/sphere';
var poly = Polygon.circular(new Sphere(Sphere.DEFAULT_RADIUS), center, radius);
```
Example after:
```js
// using ol@5
import {circular as circularPolygon} from 'ol/geom/Polygon';
var poly = circularPolygon(center, radius);
```
#### Removal of optional this arguments.
The following methods did get the optional this (i.e. opt_this) arguments removed. Please use closures, the es6 arrow function or the bind method to achieve this effect (Bind is explained here: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/bind).
* Collection#forEach
* geom/LineString#forEachSegment
* Observable#on, #once, #un
* source/TileUTFGrid#forDataAtCoordinateAndResolution
* source/Vector#forEachFeature, #forEachFeatureInExtent, #forEachFeatureIntersectingExtent
### v4.6.0
#### Renamed `exceedLength` option of `ol.style.Text` to `overflow`
To update your applications, simply replace `exceedLength` with `overflow`.
#### Deprecation of `ol.source.ImageVector`
Rendering vector sources as image is now directly supported by `ol.layer.Vector` with the new `renderMode: 'image'` configuration option. Change code like this:
```js
new ol.layer.Image({
source: new ol.source.ImageVector({
style: myStyle,
source: new ol.source.Vector({
url: 'my/data.json',
format: new ol.format.GeoJSON()
})
})
});
```
to:
```js
new ol.layer.Vector({
renderMode: 'image',
style: myStyle,
source: new ol.source.Vector({
url: 'my/data.json',
format: new ol.format.GeoJSON()
})
});
```
### v4.5.0
#### Removed GeoJSON crs workaround for GeoServer
Previous version of GeoServer returned invalid crs in GeoJSON output. The workaround in `ol.format.GeoJSON` used to read this crs code is now removed.
#### Deprecation of `ol.Attribution`
`ol.Attribution` is deprecated and will be removed in the next major version. Instead, you can construct a source with a string attribution or an array of strings. For dynamic attributions, you can provide a function that gets called with the current frame state.
Before:
```js
var source = new ol.source.XYZ({
attributions: [
new ol.Attribution({html: 'some attribution'})
]
});
```
After:
```js
var source = new ol.source.XYZ({
attributions: 'some attribution'
});
```
In addition to passing a string or an array of strings for the `attributions` option, you can also pass a function that will get called with the current frame state.
```js
var source = new ol.source.XYZ({
attributions: function(frameState) {
// inspect the frame state and return attributions
return 'some attribution'; // or ['multiple', 'attributions'] or null
}
});
```
### v4.4.0
#### Behavior change for polygon labels
Polygon labels are now only rendered when the label does not exceed the polygon at the label position. To get the old behavior, configure your `ol.style.Text` with `exceedLength: true`.
#### Minor change for custom `tileLoadFunction` with `ol.source.VectorTile`
It is no longer necessary to set the projection on the tile. Instead, the `readFeatures` method must be called with the tile's extent as `extent` option and the view's projection as `featureProjection`.
Before:
```js
tile.setLoader(function() {
var data = // ... fetch data
var format = tile.getFormat();
tile.setFeatures(format.readFeatures(data));
tile.setProjection(format.readProjection(data));
// uncomment the line below for ol.format.MVT only
//tile.setExtent(format.getLastExtent());
});
```
After:
```js
tile.setLoader(function() {
var data = // ... fetch data
var format = tile.getFormat();
tile.setFeatures(format.readFeatures(data, {
featureProjection: map.getView().getProjection(),
// uncomment the line below for ol.format.MVT only
//extent: tile.getExtent()
}));
);
```
#### Deprecation of `ol.DeviceOrientation`
`ol.DeviceOrientation` is deprecated and will be removed in the next major version.
The device-orientation example has been updated to use the (gyronorm.js)[https://github.com/dorukeker/gyronorm.js] library.
### v4.3.0
#### `ol.source.VectorTile` no longer requires a `tileGrid` option
By default, the `ol.source.VectorTile` constructor creates an XYZ tile grid (in Web Mercator) for 512 pixel tiles and assumes a max zoom level of 22. If you were creating a vector tile source with an explicit `tileGrid` option, you can now remove this.
Before:
```js
var source = new ol.source.VectorTile({
tileGrid: ol.tilegrid.createXYZ({tileSize: 512, maxZoom: 22}),
url: url
});
```
After:
```js
var source = new ol.source.VectorTile({
url: url
});
```
If you need to change the max zoom level, you can pass the source a `maxZoom` option. If you need to change the tile size, you can pass the source a `tileSize` option. If you need a completely custom tile grid, you can still pass the source a `tileGrid` option.
#### `ol.interaction.Modify` deletes with `alt` key only
To delete features with the modify interaction, press the `alt` key while clicking on an existing vertex. If you want to configure the modify interaction with a different delete condition, use the `deleteCondition` option. For example, to allow deletion on a single click with no modifier keys, configure the interaction like this:
```js
var interaction = new ol.interaction.Modify({
source: source,
deleteCondition: function(event) {
return ol.events.condition.noModifierKeys(event) && ol.events.condition.singleClick(event);
}
});
```
The motivation for this change is to make the modify, draw, and snap interactions all work well together. Previously, the use of these interactions with the default configuration would make it so you couldn't reliably add new vertices (click with no modifier) and delete existing vertices (click with no modifier).
#### `ol.source.VectorTile` no longer has a `tilePixelRatio` option
The `tilePixelRatio` option was only used for tiles in projections with `tile-pixels` as units. For tiles read with `ol.format.MVT` and the default tile loader, or tiles with the default pixel size of 4096 pixels, no changes are necessary. For the very rare cases that do not fall under these categories, a custom `tileLoadFunction` now needs to be configured on the `ol.source.VectorTile`. In addition to calling `tile.setFeatures()` and `tile.setProjection()`, it also needs to contain code like the following:
```js
var extent = tile.getFormat() instanceof ol.format.MVT ?
tile.getLastExtent() :
[0, 0, tilePixelRatio * tileSize, tilePixelRatio * tileSize];
tile.setExtent(extent);
```
#### `ol.animate` now takes the shortest arc for rotation animation
Usually rotation animations should animate along the shortest arc. There are rare occasions where a spinning animation effect is desired. So if you previously had something like
```js
map.getView().animate({
rotation: 2 * Math.PI,
duration: 2000
});
```
we recommend to split the animation into two parts and use different easing functions. The code below results in the same effect as the snippet above did with previous versions:
```js
map.getView().animate({
rotation: Math.PI,
easing: ol.easing.easeIn
}, {
rotation: 2 * Math.PI,
easing: ol.easing.easeOut
});
```
### v4.2.0
#### Return values of two `ol.style.RegularShape` getters have changed

216
changelog/v4.3.0.md Normal file
View File

@@ -0,0 +1,216 @@
# 4.3.0
## Summary
The v4.3.0 release includes features and fixes from 92 pull requests.
#### New `map.getFeaturesAtPixel()` method
When you want to get all features at a given pixel, use the new `map.getFeaturesAtPixel()` method.
Before:
```js
var features = [];
map.forEachFeatureAtPixel(pixel, function(feature) {
features.push(feature);
});
```
After:
```js
var features = map.getFeaturesAtPixel(pixel);
```
#### `ol.Sphere` functions for spherical measures
The new `ol.Sphere.getArea()` and `ol.Sphere.getLength()` methods can be used to calculate spherical measures on geometries. This is the recommended over using the `geometry.getArea()` or `geometry.getLength()` methods.
Bad:
```js
geometry.getArea();
```
Good:
```js
ol.Sphere.getArea(geometry);
```
#### `ol.interaction.DragAndDrop` can be configured with a vector source
It is now possible to configure the drag and drop interaction with a vector source:
```js
var dragAndDrop = new ol.interaction.DragAndDrop({source: source});
```
Any dropped features will replace all existing features on the source.
#### `ol.interaction.Modify` can be configured with a vector source
It is now possible to configure the modify interaction with a vector source (in addition to a feature collection):
```js
var modify = new ol.interaction.Modify({source: source});
```
With this configuration, all features on the source are eligible for modification while the interaction is active.
#### `ol.interaction.Modify` deletes with `alt` key only
To delete features with the modify interaction, press the `alt` key while clicking on an existing vertex. If you want to configure the modify interaction with a different delete condition, use the `deleteCondition` option. For example, to allow deletion on a single click with no modifier keys, configure the interaction like this:
```js
var interaction = new ol.interaction.Modify({
source: source,
deleteCondition: function(event) {
return ol.events.condition.noModifierKeys(event) && ol.events.condition.singleClick(event);
}
});
```
The motivation for this change is to make the modify, draw, and snap interactions all work well together. Previously, the use of these interactions with the default configuration would make it so you couldn't reliably add new vertices (click with no modifier) and delete existing vertices (click with no modifier).
#### `ol.source.VectorTile` no longer requires a `tileGrid` option
By default, the `ol.source.VectorTile` constructor creates an XYZ tile grid (in Web Mercator) for 512 pixel tiles and assumes a max zoom level of 22. If you were creating a vector tile source with an explicit `tileGrid` option, you can now remove this.
Before:
```js
var source = new ol.source.VectorTile({
tileGrid: ol.tilegrid.createXYZ({tileSize: 512, maxZoom: 22}),
url: url
});
```
After:
```js
var source = new ol.source.VectorTile({
url: url
});
```
If you need to change the max zoom level, you can pass the source a `maxZoom` option. If you need to change the tile size, you can pass the source a `tileSize` option. If you need a completely custom tile grid, you can still pass the source a `tileGrid` option.
#### `ol.source.VectorTile` no longer has a `tilePixelRatio` option
The `tilePixelRatio` option was only used for tiles in projections with `tile-pixels` as units. For tiles read with `ol.format.MVT` and the default tile loader, or tiles with the default pixel size of 4096 pixels, no changes are necessary. For the very rare cases that do not fall under these categories, a custom `tileLoadFunction` now needs to be configured on the `ol.source.VectorTile`. In addition to calling `tile.setFeatures()` and `tile.setProjection()`, it also needs to contain code like the following:
```js
var extent = tile.getFormat() instanceof ol.format.MVT ?
tile.getLastExtent() :
[0, 0, tilePixelRatio * tileSize, tilePixelRatio * tileSize];
tile.setExtent(extent);
```
#### `ol.animate` now takes the shortest arc for rotation animation
Usually rotation animations should animate along the shortest arc. There are rare occasions where a spinning animation effect is desired. So if you previously had something like
```js
map.getView().animate({
rotation: 2 * Math.PI,
duration: 2000
});
```
we recommend to split the animation into two parts and use different easing functions. The code below results in the same effect as the snippet above did with previous versions:
```js
map.getView().animate({
rotation: Math.PI,
easing: ol.easing.easeIn
}, {
rotation: 2 * Math.PI,
easing: ol.easing.easeOut
});
```
## Full List of Changes
* [#7117](https://github.com/openlayers/openlayers/pull/7117) - Sensible default tilegrid for vector tiles ([@tschaub](https://github.com/tschaub))
* [#7116](https://github.com/openlayers/openlayers/pull/7116) - fix(package): update rollup to version 0.47.2 ([@openlayers](https://github.com/openlayers))
* [#7111](https://github.com/openlayers/openlayers/pull/7111) - Remove broken wrapX handling from ol.Graticule ([@ahocevar](https://github.com/ahocevar))
* [#7107](https://github.com/openlayers/openlayers/pull/7107) - Update rollup to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7106](https://github.com/openlayers/openlayers/pull/7106) - Update proj4 to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7105](https://github.com/openlayers/openlayers/pull/7105) - Functions for spherical calculations ([@tschaub](https://github.com/tschaub))
* [#7104](https://github.com/openlayers/openlayers/pull/7104) - Update sinon to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#6807](https://github.com/openlayers/openlayers/pull/6807) - Initialize hasZ in the constructor of GML3 ([@Jenselme](https://github.com/Jenselme))
* [#7102](https://github.com/openlayers/openlayers/pull/7102) - Allow drag and drop interaction to be configured with a source ([@tschaub](https://github.com/tschaub))
* [#6825](https://github.com/openlayers/openlayers/pull/6825) - Read/write Tessellate tag in KML format ([@oterral](https://github.com/oterral))
* [#7098](https://github.com/openlayers/openlayers/pull/7098) - Use fractional coordinates for CSS positioning ([@ahocevar](https://github.com/ahocevar))
* [#7064](https://github.com/openlayers/openlayers/pull/7064) - Do not use Array.prototype.forEach when dealing with potentially large arrays ([@ahocevar](https://github.com/ahocevar))
* [#7093](https://github.com/openlayers/openlayers/pull/7093) - Allow modify interaction to be configured with a source ([@tschaub](https://github.com/tschaub))
* [#7096](https://github.com/openlayers/openlayers/pull/7096) - Add new Map#getFeaturesAtPixel method ([@ahocevar](https://github.com/ahocevar))
* [#7094](https://github.com/openlayers/openlayers/pull/7094) - Add missing zIndex options ([@icholy](https://github.com/icholy))
* [#7087](https://github.com/openlayers/openlayers/pull/7087) - Fix scale line for EPSG:4326 maps ([@ahocevar](https://github.com/ahocevar))
* [#7088](https://github.com/openlayers/openlayers/pull/7088) - Update sinon to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7085](https://github.com/openlayers/openlayers/pull/7085) - Update eslint to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7084](https://github.com/openlayers/openlayers/pull/7084) - Fix a typo in the street-labels example ([@ahocevar](https://github.com/ahocevar))
* [#7082](https://github.com/openlayers/openlayers/pull/7082) - Update eslint to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7079](https://github.com/openlayers/openlayers/pull/7079) - Optimize custom renderer code, examples and API ([@ahocevar](https://github.com/ahocevar))
* [#7080](https://github.com/openlayers/openlayers/pull/7080) - Update jsdoc to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7078](https://github.com/openlayers/openlayers/pull/7078) - Fix return type annotation of ol.layer.VectorTile.getSource ([@geosense](https://github.com/geosense))
* [#7073](https://github.com/openlayers/openlayers/pull/7073) - Make ol.layer.Group change handling consistent ([@gberaudo](https://github.com/gberaudo))
* [#7075](https://github.com/openlayers/openlayers/pull/7075) - Update sinon to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7072](https://github.com/openlayers/openlayers/pull/7072) - Improve API docs for ol.VectorTile ([@ahocevar](https://github.com/ahocevar))
* [#7070](https://github.com/openlayers/openlayers/pull/7070) - Get tilePixelRatio from MVT tiles ([@ahocevar](https://github.com/ahocevar))
* [#7069](https://github.com/openlayers/openlayers/pull/7069) - Update mocha to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7068](https://github.com/openlayers/openlayers/pull/7068) - Update fs-extra to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7066](https://github.com/openlayers/openlayers/pull/7066) - Fix ol.interaction.Extent event type and documentation ([@ahocevar](https://github.com/ahocevar))
* [#7032](https://github.com/openlayers/openlayers/pull/7032) - Fix KML Export Icon Anchor ([@raiyni](https://github.com/raiyni))
* [#7065](https://github.com/openlayers/openlayers/pull/7065) - Only use API functions in example ([@ahocevar](https://github.com/ahocevar))
* [#7022](https://github.com/openlayers/openlayers/pull/7022) - Allow styles to configure a custom renderer ([@ahocevar](https://github.com/ahocevar))
* [#7061](https://github.com/openlayers/openlayers/pull/7061) - Update docs and issue and pull request instructions ([@ahocevar](https://github.com/ahocevar))
* [#7059](https://github.com/openlayers/openlayers/pull/7059) - Allow to configure Extent interaction with an extent ([@ahocevar](https://github.com/ahocevar))
* [#7060](https://github.com/openlayers/openlayers/pull/7060) - Removing invalid urn ([@wnordmann](https://github.com/wnordmann))
* [#7051](https://github.com/openlayers/openlayers/pull/7051) - Changing the EPSG3857.PROJECTION array assignment and adding urn:ogc:… ([@wnordmann](https://github.com/wnordmann))
* [#7045](https://github.com/openlayers/openlayers/pull/7045) - Respect pixelRatio when scaling images ([@ahocevar](https://github.com/ahocevar))
* [#7023](https://github.com/openlayers/openlayers/pull/7023) - Update tile size and resolutions of vector tile examples ([@ahocevar](https://github.com/ahocevar))
* [#7005](https://github.com/openlayers/openlayers/pull/7005) - Add spatial reference inside geometry in EsriFormat ([@Sol1du2](https://github.com/Sol1du2))
* [#7034](https://github.com/openlayers/openlayers/pull/7034) - Move non-build dependencies to devDependencies ([@probins](https://github.com/probins))
* [#7050](https://github.com/openlayers/openlayers/pull/7050) - Update sinon to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#6976](https://github.com/openlayers/openlayers/pull/6976) - Example - Earthquake Clusters - Change evt.type of interaction ([@ehanoj](https://github.com/ehanoj))
* [#7048](https://github.com/openlayers/openlayers/pull/7048) - Update sinon to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7041](https://github.com/openlayers/openlayers/pull/7041) - Update eslint to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7042](https://github.com/openlayers/openlayers/pull/7042) - Line dash offset ([@gkresic](https://github.com/gkresic))
* [#6980](https://github.com/openlayers/openlayers/pull/6980) - Added tileClass to TileWMS ([@ZachTRice](https://github.com/ZachTRice))
* [#7028](https://github.com/openlayers/openlayers/pull/7028) - Fix Graticule use of incorrect min/maxLon values ([@greggian](https://github.com/greggian))
* [#7021](https://github.com/openlayers/openlayers/pull/7021) - Update fs-extra to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7018](https://github.com/openlayers/openlayers/pull/7018) - Update jsdoc to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7015](https://github.com/openlayers/openlayers/pull/7015) - Update sinon to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7014](https://github.com/openlayers/openlayers/pull/7014) - Update jsdoc to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7013](https://github.com/openlayers/openlayers/pull/7013) - Remove ol.sphere.WGS84 and ol.sphere.NORMAL ([@tschaub](https://github.com/tschaub))
* [#6981](https://github.com/openlayers/openlayers/pull/6981) - Render transparent vector layers to an intermediate canvas ([@gberaudo](https://github.com/gberaudo))
* [#6899](https://github.com/openlayers/openlayers/pull/6899) - Use number literal for sphere radius ([@probins](https://github.com/probins))
* [#7011](https://github.com/openlayers/openlayers/pull/7011) - Update jsdoc to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7008](https://github.com/openlayers/openlayers/pull/7008) - Update sinon to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7007](https://github.com/openlayers/openlayers/pull/7007) - fix(package): update rollup to version 0.45.0 ([@openlayers](https://github.com/openlayers))
* [#6996](https://github.com/openlayers/openlayers/pull/6996) - 6987: Memory leak with WMS time source with reprojection ([@ch08532](https://github.com/ch08532))
* [#7003](https://github.com/openlayers/openlayers/pull/7003) - Update jsdoc to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7004](https://github.com/openlayers/openlayers/pull/7004) - Use https for bing and stamen attributions ([@fredj](https://github.com/fredj))
* [#6998](https://github.com/openlayers/openlayers/pull/6998) - Update eslint to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#6999](https://github.com/openlayers/openlayers/pull/6999) - Make VectorTile source work with multiple layers ([@ahocevar](https://github.com/ahocevar))
* [#6988](https://github.com/openlayers/openlayers/pull/6988) - Add missing type annotations ([@ahocevar](https://github.com/ahocevar))
* [#6984](https://github.com/openlayers/openlayers/pull/6984) - Update closure-util to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#6970](https://github.com/openlayers/openlayers/pull/6970) - Fix Bug when adding/removing layer with no cache ([@cmortazavi](https://github.com/cmortazavi))
* [#6972](https://github.com/openlayers/openlayers/pull/6972) - Handle error tiles properly ([@ahocevar](https://github.com/ahocevar))
* [#6973](https://github.com/openlayers/openlayers/pull/6973) - Update clean-css-cli to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#6971](https://github.com/openlayers/openlayers/pull/6971) - Update sinon to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#6968](https://github.com/openlayers/openlayers/pull/6968) - Shortest arc rotation animation improvements and upgrade notes ([@ahocevar](https://github.com/ahocevar))
* [#6966](https://github.com/openlayers/openlayers/pull/6966) - Add getResolutionForZoom method for ol.View ([@ahocevar](https://github.com/ahocevar))
* [#6965](https://github.com/openlayers/openlayers/pull/6965) - Use shortest rotation delta for animation ([@ahocevar](https://github.com/ahocevar))
* [#6967](https://github.com/openlayers/openlayers/pull/6967) - Add RoadOnDemand imagery set to Bing example ([@ahocevar](https://github.com/ahocevar))
* [#6964](https://github.com/openlayers/openlayers/pull/6964) - Fix KML ExtendedData reading ([@fredj](https://github.com/fredj))
* [#6958](https://github.com/openlayers/openlayers/pull/6958) - Remove error tiles after loading is finished ([@ahocevar](https://github.com/ahocevar))
* [#6793](https://github.com/openlayers/openlayers/pull/6793) - Webgl text ([@GaborFarkas](https://github.com/GaborFarkas))
* [#6960](https://github.com/openlayers/openlayers/pull/6960) - Queue tiles before loading ([@tschaub](https://github.com/tschaub))
* [#6957](https://github.com/openlayers/openlayers/pull/6957) - Greenkeeper/eslint 4.1.1 ([@openlayers](https://github.com/openlayers))
* [#6955](https://github.com/openlayers/openlayers/pull/6955) - Update async to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#6916](https://github.com/openlayers/openlayers/pull/6916) - Upgrade eslint to v4.0.0 ([@marcjansen](https://github.com/marcjansen))
* [#6943](https://github.com/openlayers/openlayers/pull/6943) - Update sinon to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#6939](https://github.com/openlayers/openlayers/pull/6939) - Abort loading when tile is disposed ([@ahocevar](https://github.com/ahocevar))
* [#6930](https://github.com/openlayers/openlayers/pull/6930) - Handle setActive(false) on an interaction without map ([@openlayers](https://github.com/openlayers))
* [#6936](https://github.com/openlayers/openlayers/pull/6936) - Do not stop the render loop when all wanted tiles are aborted ([@ahocevar](https://github.com/ahocevar))
* [#6920](https://github.com/openlayers/openlayers/pull/6920) - Fix minor type strength inconsistency ([@klokantech](https://github.com/klokantech))
* [#6935](https://github.com/openlayers/openlayers/pull/6935) - Use transparent image from canvas context ([@ahocevar](https://github.com/ahocevar))
* [#6933](https://github.com/openlayers/openlayers/pull/6933) - Improve proj.get() logic ([@probins](https://github.com/probins))
* [#6931](https://github.com/openlayers/openlayers/pull/6931) - Make sure we use the default featurePrefix ([@bartvde](https://github.com/bartvde))
* [#6928](https://github.com/openlayers/openlayers/pull/6928) - Only adjust resolution when center within projection extent ([@ahocevar](https://github.com/ahocevar))
* [#6923](https://github.com/openlayers/openlayers/pull/6923) - Load tasks/build-ext.js in strict mode ([@fredj](https://github.com/fredj))
* [#6918](https://github.com/openlayers/openlayers/pull/6918) - Remove unnecessary pixelRatio check ([@ahocevar](https://github.com/ahocevar))
* [#6917](https://github.com/openlayers/openlayers/pull/6917) - Correct typo in graticule docs ([@probins](https://github.com/probins))

9
changelog/v4.3.1.md Normal file
View File

@@ -0,0 +1,9 @@
# 4.3.1
The v4.3.1 release includes a few fixes that didn't make it into v4.3.0. No special upgrade considerations.
## Fixes
* [#7122](https://github.com/openlayers/openlayers/pull/7122) - Immediately complete no-op animations ([@tschaub](https://github.com/tschaub))
* [#7120](https://github.com/openlayers/openlayers/pull/7120) - Fix hit detection for overzoomed vector tiles ([@ahocevar](https://github.com/ahocevar))
* [#7114](https://github.com/openlayers/openlayers/pull/7114) - Immediate WebGL text renderer and other improvements ([@GaborFarkas](https://github.com/GaborFarkas))

7
changelog/v4.3.2.md Normal file
View File

@@ -0,0 +1,7 @@
# 4.3.2
The v4.3.2 release includes a single fix.
## Fixes
* [#7140](https://github.com/openlayers/openlayers/pull/7140) - Export ol.Sphere.getLength and ol.Sphere.getArea ([@fredj](https://github.com/fredj))

7
changelog/v4.3.3.md Normal file
View File

@@ -0,0 +1,7 @@
# 4.3.3
The v4.3.3 release reverts the fractional pixel positioning of overlays.
## Fixes
* [#7258](https://github.com/openlayers/openlayers/pull/7258) - Revert changes made in #7098 ([@ahocevar](https://github.com/ahocevar))

7
changelog/v4.3.4.md Normal file
View File

@@ -0,0 +1,7 @@
# 4.3.4
The v4.3.4 release includes a fix for Safari on iOS 11.
## Fixes
* [#7285](https://github.com/openlayers/openlayers/pull/7285) - Convert pointerId to string for object lookups ([@tschaub](https://github.com/tschaub))

161
changelog/v4.4.0.md Normal file
View File

@@ -0,0 +1,161 @@
# 4.4.0
## Summary
The 4.4.0 release includes features and fixes from 80 pull requests, including first time contributions from @EduardoNogueira, @ath0mas, @f7o, @trevorblades, @viethang, and @wb14123. There are some really nice rendering enhancements included in this release. It is now possible to render labels along lines (see [#7239](https://github.com/openlayers/openlayers/pull/7239) for more detail) and polygon labels are only rendered if they fit within the polygon ([#7292](https://github.com/openlayers/openlayers/pull/7292)). In addition, we now render tiles with an opacity transition, so tiled layers more gracefully fade in ([#7267](https://github.com/openlayers/openlayers/pull/7267)).
### Upgrade notes
#### Behavior change for polygon labels
Polygon labels are now only rendered when the label does not exceed the polygon at the label position. To get the old behavior, configure your `ol.style.Text` with `exceedLength: true`.
#### Minor change for custom `tileLoadFunction` with `ol.source.VectorTile`
It is no longer necessary to set the projection on the tile. Instead, the `readFeatures` method must be called with the tile's extent as `extent` option and the view's projection as `featureProjection`.
Before:
```js
tile.setLoader(function() {
var data = // ... fetch data
var format = tile.getFormat();
tile.setFeatures(format.readFeatures(data));
tile.setProjection(format.readProjection(data));
// uncomment the line below for ol.format.MVT only
//tile.setExtent(format.getLastExtent());
});
```
After:
```js
tile.setLoader(function() {
var data = // ... fetch data
var format = tile.getFormat();
tile.setFeatures(format.readFeatures(data, {
featureProjection: map.getView().getProjection(),
// uncomment the line below for ol.format.MVT only
//extent: tile.getExtent()
}));
);
```
#### Deprecation of `ol.DeviceOrientation`
`ol.DeviceOrientation` is deprecated and will be removed in the next major version.
The device-orientation example has been updated to use the (gyronorm.js)[https://github.com/dorukeker/gyronorm.js] library.
## Detailed changes
See below for the full list of changes.
* [#7306](https://github.com/openlayers/openlayers/pull/7306) - Enable mouse wheel in freehand draw mode ([@trevorblades](https://github.com/trevorblades))
* [#7297](https://github.com/openlayers/openlayers/pull/7297) - Fix multipoint instruction set ([@ahocevar](https://github.com/ahocevar))
* [#7267](https://github.com/openlayers/openlayers/pull/7267) - Render tiles with an opacity transition ([@tschaub](https://github.com/tschaub))
* [#7292](https://github.com/openlayers/openlayers/pull/7292) - Only render polygon labels when they fit ([@ahocevar](https://github.com/ahocevar))
* [#7289](https://github.com/openlayers/openlayers/pull/7289) - Release v4.3.4 ([@openlayers](https://github.com/openlayers))
* [#7287](https://github.com/openlayers/openlayers/pull/7287) - Fix vertical stroke/fill alignment for text along lines ([@ahocevar](https://github.com/ahocevar))
* [#7285](https://github.com/openlayers/openlayers/pull/7285) - Convert pointerId to string for object lookups ([@tschaub](https://github.com/tschaub))
* [#7280](https://github.com/openlayers/openlayers/pull/7280) - Updated docs for deleteCondition ([@EduardoNogueira](https://github.com/EduardoNogueira))
* [#7274](https://github.com/openlayers/openlayers/pull/7274) - Add ability to change the loader of a vector source ([@bartvde](https://github.com/bartvde))
* [#7259](https://github.com/openlayers/openlayers/pull/7259) - Add missing param doc tag for ol.format.WKT.prototype.writeFeatures ([@fredj](https://github.com/fredj))
* [#7260](https://github.com/openlayers/openlayers/pull/7260) - Release v4.3.3 ([@openlayers](https://github.com/openlayers))
* [#7258](https://github.com/openlayers/openlayers/pull/7258) - Revert changes made in #7098. ([@ahocevar](https://github.com/ahocevar))
* [#7220](https://github.com/openlayers/openlayers/pull/7220) - Mark ol.format.filter.Spatial as abstract class ([@fredj](https://github.com/fredj))
* [#7249](https://github.com/openlayers/openlayers/pull/7249) - Script to rename files so the case matches the module name ([@ahocevar](https://github.com/ahocevar))
* [#7252](https://github.com/openlayers/openlayers/pull/7252) - fix osmxml to read ways before the definition of nodes ([@wb14123](https://github.com/wb14123))
* [#7253](https://github.com/openlayers/openlayers/pull/7253) - Nicer wording in the issue template ([@openlayers](https://github.com/openlayers))
* [#7236](https://github.com/openlayers/openlayers/pull/7236) - reusing images in ol.style.Icon#clone ([@KlausBenndorf](https://github.com/KlausBenndorf))
* [#7246](https://github.com/openlayers/openlayers/pull/7246) - Compare measured lengths with a tolerance ([@marcjansen](https://github.com/marcjansen))
* [#7247](https://github.com/openlayers/openlayers/pull/7247) - Raise tolerance of rendering tests to pass on Firefox 55 (GNU/Linux) ([@marcjansen](https://github.com/marcjansen))
* [#7239](https://github.com/openlayers/openlayers/pull/7239) - Render text along lines ([@ahocevar](https://github.com/ahocevar))
* [#7242](https://github.com/openlayers/openlayers/pull/7242) - Use EMPTY and LOADED state properly on ol.VectorImageTile ([@ahocevar](https://github.com/ahocevar))
* [#7234](https://github.com/openlayers/openlayers/pull/7234) - Fix abort handling of tileload events ([@ahocevar](https://github.com/ahocevar))
* [#7221](https://github.com/openlayers/openlayers/pull/7221) - update zoomify source to accept tileIndex placeholders and handle iip… ([@thhomas](https://github.com/thhomas))
* [#6871](https://github.com/openlayers/openlayers/pull/6871) - Correct controls position in Center example ([@ath0mas](https://github.com/ath0mas))
* [#7229](https://github.com/openlayers/openlayers/pull/7229) - Fix JSDoc paths for custom builds ([@ahocevar](https://github.com/ahocevar))
* [#7230](https://github.com/openlayers/openlayers/pull/7230) - Remove unused context handling for ol.Image ([@ahocevar](https://github.com/ahocevar))
* [#7225](https://github.com/openlayers/openlayers/pull/7225) - Fix hit detection for image layers ([@ahocevar](https://github.com/ahocevar))
* [#7223](https://github.com/openlayers/openlayers/pull/7223) - Transform updates ([@tschaub](https://github.com/tschaub))
* [#7219](https://github.com/openlayers/openlayers/pull/7219) - Change cartodb domain from cartodb.com to carto.com ([@fredj](https://github.com/fredj))
* [#7210](https://github.com/openlayers/openlayers/pull/7210) - Avoid unnecessary calculations for a zoom factor of 2 ([@tschaub](https://github.com/tschaub))
* [#7209](https://github.com/openlayers/openlayers/pull/7209) - Remove grid.getTileRangeForExtentAndResolution() ([@tschaub](https://github.com/tschaub))
* [#7201](https://github.com/openlayers/openlayers/pull/7201) - Prerender text to images ([@ahocevar](https://github.com/ahocevar))
* [#7208](https://github.com/openlayers/openlayers/pull/7208) - Do not calculate coverage when running tests locally ([@ahocevar](https://github.com/ahocevar))
* [#7206](https://github.com/openlayers/openlayers/pull/7206) - Only load source tiles that intersect the source tile grid's extent ([@ahocevar](https://github.com/ahocevar))
* [#7203](https://github.com/openlayers/openlayers/pull/7203) - Enable Edge tests on SauceLabs ([@ahocevar](https://github.com/ahocevar))
* [#7194](https://github.com/openlayers/openlayers/pull/7194) - Deprecate ol.DeviceOrientation ([@fredj](https://github.com/fredj))
* [#7198](https://github.com/openlayers/openlayers/pull/7198) - Use geometry name in WFS updates ([@bartvde](https://github.com/bartvde))
* [#7205](https://github.com/openlayers/openlayers/pull/7205) - Release v4.3.2 ([@openlayers](https://github.com/openlayers))
* [#7172](https://github.com/openlayers/openlayers/pull/7172) - added clear method to vectortile source ([@f7o](https://github.com/f7o))
* [#7196](https://github.com/openlayers/openlayers/pull/7196) - renderSync() to make sure overlay is initially visible ([@ahocevar](https://github.com/ahocevar))
* [#7193](https://github.com/openlayers/openlayers/pull/7193) - Fix KML links for documents created locally in Safari ([@ahocevar](https://github.com/ahocevar))
* [#6977](https://github.com/openlayers/openlayers/pull/6977) - Fixed modify feature test ([@KlausBenndorf](https://github.com/KlausBenndorf))
* [#7190](https://github.com/openlayers/openlayers/pull/7190) - Use jsts version 1.4.0 in example ([@openlayers](https://github.com/openlayers))
* [#7191](https://github.com/openlayers/openlayers/pull/7191) - Fix provide/require for autogenerated shader files ([@ahocevar](https://github.com/ahocevar))
* [#7192](https://github.com/openlayers/openlayers/pull/7192) - Fix typo ([@viethang](https://github.com/viethang))
* [#7133](https://github.com/openlayers/openlayers/pull/7133) - Issue/6991/WFS Write Dimension ([@Sol1du2](https://github.com/Sol1du2))
* [#7141](https://github.com/openlayers/openlayers/pull/7141) - Issue/6990/Wfs Read srsDimension ([@Sol1du2](https://github.com/Sol1du2))
* [#7187](https://github.com/openlayers/openlayers/pull/7187) - Simpler tile pixel handling and faster parsing for ol.format.MVT vector tiles ([@ahocevar](https://github.com/ahocevar))
* [#7182](https://github.com/openlayers/openlayers/pull/7182) - Avoid instanceof checks in global test extensions ([@tschaub](https://github.com/tschaub))
* [#7168](https://github.com/openlayers/openlayers/pull/7168) - Exclude greenkeeper merges from changelog ([@gberaudo](https://github.com/gberaudo))
* [#7162](https://github.com/openlayers/openlayers/pull/7162) - Bring back coverage ([@marcjansen](https://github.com/marcjansen))
* [#7165](https://github.com/openlayers/openlayers/pull/7165) - More assorted test fixes ([@tschaub](https://github.com/tschaub))
* [#7142](https://github.com/openlayers/openlayers/pull/7142) - Adds unit test to test the projection inside the geometry of esriJson ([@Sol1du2](https://github.com/Sol1du2))
* [#7163](https://github.com/openlayers/openlayers/pull/7163) - Remove bundling magic for Mapbox styles script ([@ahocevar](https://github.com/ahocevar))
* [#7160](https://github.com/openlayers/openlayers/pull/7160) - Assorted test updates ([@tschaub](https://github.com/tschaub))
* [#7158](https://github.com/openlayers/openlayers/pull/7158) - Retain comments when replacing nodes ([@tschaub](https://github.com/tschaub))
* [#7153](https://github.com/openlayers/openlayers/pull/7153) - Scripts for in-place transforms ([@tschaub](https://github.com/tschaub))
* [#7154](https://github.com/openlayers/openlayers/pull/7154) - Unused require in examples/d3.js ([@tschaub](https://github.com/tschaub))
* [#7151](https://github.com/openlayers/openlayers/pull/7151) - Get rid of useless test exports ([@tschaub](https://github.com/tschaub))
* [#7152](https://github.com/openlayers/openlayers/pull/7152) - Adjust the pull request template (tests, CLA, wording) ([@marcjansen](https://github.com/marcjansen))
* [#7150](https://github.com/openlayers/openlayers/pull/7150) - Remove problematic spies from scaleline tests ([@marcjansen](https://github.com/marcjansen))
* [#7149](https://github.com/openlayers/openlayers/pull/7149) - Remove unused requires ([@tschaub](https://github.com/tschaub))
* [#7148](https://github.com/openlayers/openlayers/pull/7148) - Remove ol.ENABLE_WEBGL wrap from WebGL files ([@ahocevar](https://github.com/ahocevar))
* [#7147](https://github.com/openlayers/openlayers/pull/7147) - Remove unnecessary import in events.test.js ([@tschaub](https://github.com/tschaub))
* [#7146](https://github.com/openlayers/openlayers/pull/7146) - Avoid modifying imports ([@openlayers](https://github.com/openlayers))
* [#7145](https://github.com/openlayers/openlayers/pull/7145) - Spaceless provides ([@tschaub](https://github.com/tschaub))
* [#7136](https://github.com/openlayers/openlayers/pull/7136) - Use data URI instead of whole empty image ([@ahocevar](https://github.com/ahocevar))
* [#7137](https://github.com/openlayers/openlayers/pull/7137) - Developer documentation updates ([@tschaub](https://github.com/tschaub))
* [#7138](https://github.com/openlayers/openlayers/pull/7138) - Improvements to the new test setup ([@ahocevar](https://github.com/ahocevar))
* [#7140](https://github.com/openlayers/openlayers/pull/7140) - Export ol.Sphere.getLength and ol.Sphere.getArea ([@openlayers](https://github.com/openlayers))
* [#7131](https://github.com/openlayers/openlayers/pull/7131) - Print ES6 import hint on each doc page ([@ahocevar](https://github.com/ahocevar))
* [#6953](https://github.com/openlayers/openlayers/pull/6953) - Run tests in real browsers with Karma ([@tschaub](https://github.com/tschaub))
* [#7127](https://github.com/openlayers/openlayers/pull/7127) - Use static GeoJSON instead of Overpass query for faster loading ([@ahocevar](https://github.com/ahocevar))
* [#7125](https://github.com/openlayers/openlayers/pull/7125) - Do not try to render error tiles from VectorTile source ([@ahocevar](https://github.com/ahocevar))
* [#6855](https://github.com/openlayers/openlayers/pull/6855) - Pluggable renderers ([@tschaub](https://github.com/tschaub))
* [#7128](https://github.com/openlayers/openlayers/pull/7128) - Make view.animate() tolerate undefined views ([@tschaub](https://github.com/tschaub))
* [#7124](https://github.com/openlayers/openlayers/pull/7124) - Release v4.3.1 ([@openlayers](https://github.com/openlayers))
* [#7122](https://github.com/openlayers/openlayers/pull/7122) - Immediately complete no-op animations ([@tschaub](https://github.com/tschaub))
* [#7120](https://github.com/openlayers/openlayers/pull/7120) - Fix hit detection for overzoomed vector tiles ([@ahocevar](https://github.com/ahocevar))
* [#7114](https://github.com/openlayers/openlayers/pull/7114) - Immediate WebGL text renderer and other improvements ([@GaborFarkas](https://github.com/GaborFarkas))
Additionally a number of updates where made to our dependencies:
* [#7307](https://github.com/openlayers/openlayers/pull/7307) - Update sinon to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7302](https://github.com/openlayers/openlayers/pull/7302) - Update mocha to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7298](https://github.com/openlayers/openlayers/pull/7298) - Update eslint to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7295](https://github.com/openlayers/openlayers/pull/7295) - chore(package): update coveralls to version 3.0.0 ([@openlayers](https://github.com/openlayers))
* [#7291](https://github.com/openlayers/openlayers/pull/7291) - Update pbf to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7290](https://github.com/openlayers/openlayers/pull/7290) - Update sinon to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7281](https://github.com/openlayers/openlayers/pull/7281) - Update eslint to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7273](https://github.com/openlayers/openlayers/pull/7273) - Update clean-css-cli to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7272](https://github.com/openlayers/openlayers/pull/7272) - Update eslint to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7269](https://github.com/openlayers/openlayers/pull/7269) - Update sinon to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7265](https://github.com/openlayers/openlayers/pull/7265) - Update rollup to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7263](https://github.com/openlayers/openlayers/pull/7263) - Update eslint to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7254](https://github.com/openlayers/openlayers/pull/7254) - Update closure-util to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7257](https://github.com/openlayers/openlayers/pull/7257) - Update jsdoc to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7251](https://github.com/openlayers/openlayers/pull/7251) - Update fs-extra to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7243](https://github.com/openlayers/openlayers/pull/7243) - Update mocha to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7240](https://github.com/openlayers/openlayers/pull/7240) - Update mocha to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7238](https://github.com/openlayers/openlayers/pull/7238) - Update mocha to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7212](https://github.com/openlayers/openlayers/pull/7212) - chore(package): update clean-css-cli to version 4.1.9 ([@openlayers](https://github.com/openlayers))
* [#7213](https://github.com/openlayers/openlayers/pull/7213) - Update eslint to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7207](https://github.com/openlayers/openlayers/pull/7207) - Update eslint to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7188](https://github.com/openlayers/openlayers/pull/7188) - fix(package): update rollup to version 0.49.1 ([@openlayers](https://github.com/openlayers))
* [#7166](https://github.com/openlayers/openlayers/pull/7166) - fix(package): update rollup to version 0.48.1 ([@openlayers](https://github.com/openlayers))
* [#7161](https://github.com/openlayers/openlayers/pull/7161) - Update eslint to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7144](https://github.com/openlayers/openlayers/pull/7144) - Update sinon to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7135](https://github.com/openlayers/openlayers/pull/7135) - Update closure-util to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7126](https://github.com/openlayers/openlayers/pull/7126) - Update phantomjs-prebuilt to the latest version 🚀 ([@openlayers](https://github.com/openlayers))

8
changelog/v4.4.1.md Normal file
View File

@@ -0,0 +1,8 @@
# 4.4.1
The v4.4.1 release includes a fix for the [`ol` package](https://www.npmjs.com/package/ol) and a fix for a tile rendering regression.
## Fixes
* [#7323](https://github.com/openlayers/openlayers/pull/7323) - Only clear the canvas when needed ([@tschaub](https://github.com/tschaub))
* [#7313](https://github.com/openlayers/openlayers/pull/7313) - Use lowercase module identifiers until ol@5 ([@tschaub](https://github.com/tschaub))

12
changelog/v4.4.2.md Normal file
View File

@@ -0,0 +1,12 @@
# 4.4.2
The v4.4.2 release fixes a number of rendering issues in the 4.4 releases.
## Fixes
* [#7327](https://github.com/openlayers/openlayers/pull/7327) - Prune the tile cache after updating a source's URL ([@tschaub](https://github.com/tschaub))
* [#7341](https://github.com/openlayers/openlayers/pull/7341) - Proper rendering of raster sources when there is a tile transition ([@tschaub](https://github.com/tschaub))
* [#7339](https://github.com/openlayers/openlayers/pull/7339) - Use correct text stroke on HiDPI devices ([@ahocevar](https://github.com/ahocevar))
* [#7345](https://github.com/openlayers/openlayers/pull/7345) - Handle different lineWidth scaling in Safari ([@ahocevar](https://github.com/ahocevar))
* [#7346](https://github.com/openlayers/openlayers/pull/7346) - Pre-render text images for configured scale ([@ahocevar](https://github.com/ahocevar))
* [#7350](https://github.com/openlayers/openlayers/pull/7350) - Calculate correct text box size ([@ahocevar](https://github.com/ahocevar))

127
changelog/v4.5.0.md Normal file
View File

@@ -0,0 +1,127 @@
# 4.5.0
### Summary
The 4.5 release includes enhancements and fixes from 50 or so pull requests. Headlining this release, vector layers got a new `declutter` option that can be used to avoid overlapping labels. See the [street labels example](http://openlayers.org/en/latest/examples/street-labels.html) for a demonstration of this feature.
Please note that if you are using `closure-util` to build your OpenLayers based application, it is time to migrate to using the [`ol` package](https://www.npmjs.com/package/ol) and a module bundler like webpack. OpenLayers has not had a dependency on the Closure Library since the [3.19 release](https://github.com/openlayers/openlayers/releases/tag/v3.19.0); and with the 5.0 release we will be moving completely away from `goog.require` and `goog.provide`, dropping support for `closure-util`, and going with ES modules for our sources.
We will be adding details to the wiki about upcoming changes in 5.0 and tips on how to upgrade. We'll likely have a few more 4.x releases before the 5.0 release. But if you're interested in continuing to get feature enhancements in future releases, migrating to the `ol` package now will make the transition easier.
### Upgrade notes
#### Removed GeoJSON crs workaround for GeoServer
Previous version of GeoServer returned invalid crs in GeoJSON output. The workaround in `ol.format.GeoJSON` used to read this crs code is now removed.
#### Deprecation of `ol.Attribution`
`ol.Attribution` is deprecated and will be removed in the next major version. Instead, you can construct a source with a string attribution or an array of strings. For dynamic attributions, you can provide a function that gets called with the current frame state.
Before:
```js
var source = new ol.source.XYZ({
attributions: [
new ol.Attribution({html: 'some attribution'})
]
});
```
After:
```js
var source = new ol.source.XYZ({
attributions: 'some attribution'
});
```
In addition to passing a string or an array of strings for the `attributions` option, you can also pass a function that will get called with the current frame state.
```js
var source = new ol.source.XYZ({
attributions: function(frameState) {
// inspect the frame state and return attributions
return 'some attribution'; // or ['multiple', 'attributions'] or null
}
});
```
## Detailed changes
See below for the full list of changes.
* [#7456](https://github.com/openlayers/openlayers/pull/7456) - Retry if sauce connect fails ([@tschaub](https://github.com/tschaub))
* [#7440](https://github.com/openlayers/openlayers/pull/7440) - Attempt to make font loading tests more stable ([@ahocevar](https://github.com/ahocevar))
* [#7444](https://github.com/openlayers/openlayers/pull/7444) - Simpler style management ([@ahocevar](https://github.com/ahocevar))
* [#7438](https://github.com/openlayers/openlayers/pull/7438) - Call getProjection() only once ([@ahocevar](https://github.com/ahocevar))
* [#7430](https://github.com/openlayers/openlayers/pull/7430) - Add support for hex colors with alpha ([@tschaub](https://github.com/tschaub))
* [#7431](https://github.com/openlayers/openlayers/pull/7431) - Avoid returning undefined zoom ([@tschaub](https://github.com/tschaub))
* [#7436](https://github.com/openlayers/openlayers/pull/7436) - Always use source projection loading image tiles ([@pjeweb](https://github.com/pjeweb))
* [#7433](https://github.com/openlayers/openlayers/pull/7433) - Don't use getHints if it's not needed ([@fredj](https://github.com/fredj))
* [#7362](https://github.com/openlayers/openlayers/pull/7362) - Added option to the ol.format.GeoJSON to allow the reading of the geometry_name from the geojson ([@Alexandre27](https://github.com/Alexandre27))
* [#7426](https://github.com/openlayers/openlayers/pull/7426) - Update InteractionOptions.prototype.handleEvent docs ([@glen-nu](https://github.com/glen-nu))
* [#7423](https://github.com/openlayers/openlayers/pull/7423) - Get rendered features by coordinate when wrapping ([@tschaub](https://github.com/tschaub))
* [#7421](https://github.com/openlayers/openlayers/pull/7421) - Keep longitude between -180 and 180 ([@tschaub](https://github.com/tschaub))
* [#7420](https://github.com/openlayers/openlayers/pull/7420) - Fix MapGuide example resolves #7325 ([@TDesjardins](https://github.com/TDesjardins))
* [#7340](https://github.com/openlayers/openlayers/pull/7340) - Clear label cache when fonts become available ([@ahocevar](https://github.com/ahocevar))
* [#7414](https://github.com/openlayers/openlayers/pull/7414) - Only split text at line angle changes ([@ahocevar](https://github.com/ahocevar))
* [#7411](https://github.com/openlayers/openlayers/pull/7411) - Add getLayers and setLayers functions to ol.format.WMSGetFeatureInfo ([@fredj](https://github.com/fredj))
* [#7328](https://github.com/openlayers/openlayers/pull/7328) - Declutter text and images ([@ahocevar](https://github.com/ahocevar))
* [#7406](https://github.com/openlayers/openlayers/pull/7406) - Add option to Zoomify source for setting custom extent ([@lasselaakkonen](https://github.com/lasselaakkonen))
* [#7410](https://github.com/openlayers/openlayers/pull/7410) - Add getFeatureType and setFeatureType functions to ol.format.WFS ([@fredj](https://github.com/fredj))
* [#7379](https://github.com/openlayers/openlayers/pull/7379) - Add support for custom tile size to Zoomify source ([@lasselaakkonen](https://github.com/lasselaakkonen))
* [#7376](https://github.com/openlayers/openlayers/pull/7376) - changed visibility of overlay properties to protected ([@virtualcitySYSTEMS](https://github.com/virtualcitySYSTEMS))
* [#7377](https://github.com/openlayers/openlayers/pull/7377) - Add support to specify CSS class name when creating ol.Overlay ([@notnotse](https://github.com/notnotse))
* [#7383](https://github.com/openlayers/openlayers/pull/7383) - Handle null tile coordinates correctly ([@ahocevar](https://github.com/ahocevar))
* [#7375](https://github.com/openlayers/openlayers/pull/7375) - Read 'Abstract', 'AccessConstraints' and 'Fees' in ol.format.OWS ([@fredj](https://github.com/fredj))
* [#7378](https://github.com/openlayers/openlayers/pull/7378) - Fix incorrect docs about ol.source.Raster ([@notnotse](https://github.com/notnotse))
* [#7371](https://github.com/openlayers/openlayers/pull/7371) - Add @api annotation to ol.VectorTile.getExtent ([@notnotse](https://github.com/notnotse))
* [#7369](https://github.com/openlayers/openlayers/pull/7369) - Always request the Bing API with the 'culture' value ([@fredj](https://github.com/fredj))
* [#7364](https://github.com/openlayers/openlayers/pull/7364) - Remove GeoJSON workaround for GeoServer ([@fredj](https://github.com/fredj))
* [#7355](https://github.com/openlayers/openlayers/pull/7355) - Pass pixel tolerance as a parameter to constructor of ol.interaction.Extent ([@marcosox](https://github.com/marcosox))
* [#7356](https://github.com/openlayers/openlayers/pull/7356) - Fix documentation for target option in the controls ([@EduardoNogueira](https://github.com/EduardoNogueira))
* [#7359](https://github.com/openlayers/openlayers/pull/7359) - Rename entry to input - regarding options to rollup lib - Issue #7358 ([@akkumar](https://github.com/akkumar))
* [#7357](https://github.com/openlayers/openlayers/pull/7357) - Release v4.4.2 ([@tschaub](https://github.com/tschaub))
* [#7350](https://github.com/openlayers/openlayers/pull/7350) - Calculate correct text box size ([@ahocevar](https://github.com/ahocevar))
* [#7349](https://github.com/openlayers/openlayers/pull/7349) - Do not use tileUrlFunction for renderer tile coordinates ([@ahocevar](https://github.com/ahocevar))
* [#7305](https://github.com/openlayers/openlayers/pull/7305) - Fix #7304: Re-calculate the resolution when the WMS source is reprojected ([@oterral](https://github.com/oterral))
* [#7346](https://github.com/openlayers/openlayers/pull/7346) - Pre-render text images for configured scale ([@ahocevar](https://github.com/ahocevar))
* [#7345](https://github.com/openlayers/openlayers/pull/7345) - Handle different lineWidth scaling in Safari ([@ahocevar](https://github.com/ahocevar))
* [#7344](https://github.com/openlayers/openlayers/pull/7344) - Make text height detection independent of css settings ([@ahocevar](https://github.com/ahocevar))
* [#7341](https://github.com/openlayers/openlayers/pull/7341) - Proper rendering of raster sources when there is a tile transition ([@tschaub](https://github.com/tschaub))
* [#7339](https://github.com/openlayers/openlayers/pull/7339) - Use correct text stroke on HiDPI devices ([@ahocevar](https://github.com/ahocevar))
* [#7327](https://github.com/openlayers/openlayers/pull/7327) - Prune the tile cache after updating a source's URL ([@tschaub](https://github.com/tschaub))
* [#7333](https://github.com/openlayers/openlayers/pull/7333) - Pluggable Map/Layers - function calls to handles and create ([@waxenegger](https://github.com/waxenegger))
* [#7329](https://github.com/openlayers/openlayers/pull/7329) - Reworked attribution handling ([@tschaub](https://github.com/tschaub))
* [#7337](https://github.com/openlayers/openlayers/pull/7337) - Always create a new blank image to avoid CSP violations ([@ahocevar](https://github.com/ahocevar))
* [#7330](https://github.com/openlayers/openlayers/pull/7330) - Add upgrade notes to 4.4.0 changelog ([@tschaub](https://github.com/tschaub))
* [#7321](https://github.com/openlayers/openlayers/pull/7321) - Release v4.4.1 ([@tschaub](https://github.com/tschaub))
* [#7323](https://github.com/openlayers/openlayers/pull/7323) - Only clear the canvas when needed ([@tschaub](https://github.com/tschaub))
* [#7313](https://github.com/openlayers/openlayers/pull/7313) - Use lowercase module identifiers until ol@5 ([@tschaub](https://github.com/tschaub))
* [#7316](https://github.com/openlayers/openlayers/pull/7316) - fix copy-paste error in 4.4.0 changelog ([@mprins](https://github.com/mprins))
* [#7315](https://github.com/openlayers/openlayers/pull/7315) - Add new ol.format.filter.Contains spatial operator ([@fredj](https://github.com/fredj))
* [#7311](https://github.com/openlayers/openlayers/pull/7311) - Release v4.4.0 ([@tschaub](https://github.com/tschaub))
Additionally a number of updates where made to our dependencies:
<details>
<summary>Click to expand</summary>
<ul>
<li><a href="https://github.com/openlayers/openlayers/pull/7455">#7455</a> - Update eslint to the latest version 🚀 (<a href="https://github.com/openlayers">@openlayers</a>)</li>
<li><a href="https://github.com/openlayers/openlayers/pull/7447">#7447</a> - chore(package): update rollup-plugin-commonjs to version 8.2.6 (<a href="https://github.com/openlayers">@openlayers</a>)</li>
<li><a href="https://github.com/openlayers/openlayers/pull/7448">#7448</a> - chore(package): update debounce to version 1.1.0 (<a href="https://github.com/openlayers">@openlayers</a>)</li>
<li><a href="https://github.com/openlayers/openlayers/pull/7451">#7451</a> - chore(package): update karma to version 1.7.1 (<a href="https://github.com/openlayers">@openlayers</a>)</li>
<li><a href="https://github.com/openlayers/openlayers/pull/7446">#7446</a> - fix(package): update rollup to version 0.51.3 (<a href="https://github.com/openlayers">@openlayers</a>)</li>
<li><a href="https://github.com/openlayers/openlayers/pull/7428">#7428</a> - Update sinon to the latest version 🚀 (<a href="https://github.com/openlayers">@openlayers</a>)</li>
<li><a href="https://github.com/openlayers/openlayers/pull/7425">#7425</a> - Update async to the latest version 🚀 (<a href="https://github.com/openlayers">@openlayers</a>)</li>
<li><a href="https://github.com/openlayers/openlayers/pull/7418">#7418</a> - Update sinon to the latest version 🚀 (<a href="https://github.com/openlayers">@openlayers</a>)</li>
<li><a href="https://github.com/openlayers/openlayers/pull/7416">#7416</a> - Update sinon to the latest version 🚀 (<a href="https://github.com/openlayers">@openlayers</a>)</li>
<li><a href="https://github.com/openlayers/openlayers/pull/7417">#7417</a> - Update phantomjs-prebuilt to the latest version 🚀 (<a href="https://github.com/openlayers">@openlayers</a>)</li>
<li><a href="https://github.com/openlayers/openlayers/pull/7399">#7399</a> - Update eslint to the latest version 🚀 (<a href="https://github.com/openlayers">@openlayers</a>)</li>
<li><a href="https://github.com/openlayers/openlayers/pull/7395">#7395</a> - Update closure-util to the latest version 🚀 (<a href="https://github.com/openlayers">@openlayers</a>)</li>
<li><a href="https://github.com/openlayers/openlayers/pull/7392">#7392</a> - Update sinon to the latest version 🚀 (<a href="https://github.com/openlayers">@openlayers</a>)</li>
<li><a href="https://github.com/openlayers/openlayers/pull/7380">#7380</a> - Update rollup-plugin-cleanup to the latest version 🚀 (<a href="https://github.com/openlayers">@openlayers</a>)</li>
<li><a href="https://github.com/openlayers/openlayers/pull/7366">#7366</a> - Update handlebars to the latest version 🚀 (<a href="https://github.com/openlayers">@openlayers</a>)</li>
<li><a href="https://github.com/openlayers/openlayers/pull/7360">#7360</a> - Update eslint to the latest version 🚀 (<a href="https://github.com/openlayers">@openlayers</a>)</li>
<li><a href="https://github.com/openlayers/openlayers/pull/7354">#7354</a> - Update closure-util to the latest version 🚀 (<a href="https://github.com/openlayers">@openlayers</a>)</li>
<li><a href="https://github.com/openlayers/openlayers/pull/7319">#7319</a> - Update closure-util to the latest version 🚀 (<a href="https://github.com/openlayers">@openlayers</a>)</li>
<li><a href="https://github.com/openlayers/openlayers/pull/7314">#7314</a> - Update mocha to the latest version 🚀 (<a href="https://github.com/openlayers">@openlayers</a>)</li>
</ul>
</details>

91
changelog/v4.6.0.md Normal file
View File

@@ -0,0 +1,91 @@
# v4.6.0
### Summary
The 4.6 release includes enhancements and fixes from 30 or so pull requests. Headlining this release, vector layers got new `textBackgroundFill`, `textBackgroundStroke` and `padding` options that can be used to render background boxes for text. `ol.source.ImageVector` is now deprecated and replaced by a more convenient way to render vectors as images: by simply setting `renderMode: 'image'` on the vector layer.
Please note that if you are using `closure-util` to build your OpenLayers based application, it is time to migrate to using the [`ol` package](https://www.npmjs.com/package/ol) and a module bundler like webpack. OpenLayers has not had a dependency on the Closure Library since the [3.19 release](https://github.com/openlayers/openlayers/releases/tag/v3.19.0); and with the 5.0 release we will be moving completely away from `goog.require` and `goog.provide`, dropping support for `closure-util`, and going with ES modules for our sources.
See the [wiki](https://github.com/openlayers/openlayers/wiki/OpenLayers-v5.x) about upcoming changes in 5.0 and tips on how to upgrade. We likely won't have another 4.x release before the 5.0 release. If you're interested in continuing to get feature enhancements in future releases, migrating to the `ol` package now will make the transition easier.
### Upgrade notes
#### Renamed `exceedLength` option of `ol.style.Text` to `overflow`
To update your applications, simply replace `exceedLength` with `overflow`.
#### Deprecation of `ol.source.ImageVector`
Rendering vector sources as image is now directly supported by `ol.layer.Vector` with the new `renderMode: 'image'` configuration option. Change code like this:
```js
new ol.layer.Image({
source: new ol.source.ImageVector({
style: myStyle,
source: new ol.source.Vector({
url: 'my/data.json',
format: new ol.format.GeoJSON()
})
})
});
```
to:
```js
new ol.layer.Vector({
renderMode: 'image',
style: myStyle,
source: new ol.source.Vector({
url: 'my/data.json',
format: new ol.format.GeoJSON()
})
});
```
## Detailed changes
See below for the full list of changes.
* [#7538](https://github.com/openlayers/openlayers/pull/7538) - removeFromLoadedExtents to remove extents that failed to load ([@ahocevar](https://github.com/ahocevar))
* [#7537](https://github.com/openlayers/openlayers/pull/7537) - Fix Draw.removeLastPoint exception when no points to remove ([@walkermatt](https://github.com/walkermatt))
* [#7461](https://github.com/openlayers/openlayers/pull/7461) - Use the matrixSet projection by default ([@oterral](https://github.com/oterral))
* [#5883](https://github.com/openlayers/openlayers/pull/5883) - Fixes setUrl() for WMTS sources (ol.source.WMTS) ([@bylexus](https://github.com/bylexus))
* [#7531](https://github.com/openlayers/openlayers/pull/7531) - Update the ol package readme ([@ahocevar](https://github.com/ahocevar))
* [#7372](https://github.com/openlayers/openlayers/pull/7372) - Add method to set max cache size in ol.style.IconImageCache ([@notnotse](https://github.com/notnotse))
* [#7530](https://github.com/openlayers/openlayers/pull/7530) - Check forward/back 1 world if wrapping ([@raiyni](https://github.com/raiyni))
* [#7526](https://github.com/openlayers/openlayers/pull/7526) - Allow clicks to be stopped while drawing ([@tschaub](https://github.com/tschaub))
* [#7524](https://github.com/openlayers/openlayers/pull/7524) - Snap view center to pixel ([@ahocevar](https://github.com/ahocevar))
* [#7521](https://github.com/openlayers/openlayers/pull/7521) - fix setMinZoom/setMaxZoom ([@cs09g](https://github.com/cs09g))
* [#7519](https://github.com/openlayers/openlayers/pull/7519) - Reuse declutter tree for hit detection ([@ahocevar](https://github.com/ahocevar))
* [#7499](https://github.com/openlayers/openlayers/pull/7499) - Remove attributions from olx.FrameState instances ([@openlayers](https://github.com/openlayers))
* [#7501](https://github.com/openlayers/openlayers/pull/7501) - Option to render vector layers as images ([@ahocevar](https://github.com/ahocevar))
* [#7516](https://github.com/openlayers/openlayers/pull/7516) - Deprecate exceedLength and replace with overflow ([@ahocevar](https://github.com/ahocevar))
* [#7510](https://github.com/openlayers/openlayers/pull/7510) - Do not fade the states layer ([@ahocevar](https://github.com/ahocevar))
* [#7513](https://github.com/openlayers/openlayers/pull/7513) - Make strokeKey safer ([@ahocevar](https://github.com/ahocevar))
* [#7514](https://github.com/openlayers/openlayers/pull/7514) - Prune the label cache less aggressively ([@ahocevar](https://github.com/ahocevar))
* [#7505](https://github.com/openlayers/openlayers/pull/7505) - Remove ol.DeviceOrientation link from API index ([@fredj](https://github.com/fredj))
* [#7497](https://github.com/openlayers/openlayers/pull/7497) - Use getGeometry ([@nicholas-l](https://github.com/nicholas-l))
* [#7495](https://github.com/openlayers/openlayers/pull/7495) - Remove layer renderers when viewport is removed ([@ahocevar](https://github.com/ahocevar))
* [#7492](https://github.com/openlayers/openlayers/pull/7492) - Remove unneeded type cast from examples ([@fredj](https://github.com/fredj))
* [#7489](https://github.com/openlayers/openlayers/pull/7489) - Allow string to be passed as ol.interaction.Draw type ([@fredj](https://github.com/fredj))
* [#7445](https://github.com/openlayers/openlayers/pull/7445) - Load css rules from full-screen.css in examples ([@fredj](https://github.com/fredj))
* [#7481](https://github.com/openlayers/openlayers/pull/7481) - Make zoom to extent control extensible ([@gberaudo](https://github.com/gberaudo))
* [#7477](https://github.com/openlayers/openlayers/pull/7477) - Make text states available for replay time ([@ahocevar](https://github.com/ahocevar))
* [#7482](https://github.com/openlayers/openlayers/pull/7482) - Reset rotation after rendering ([@ahocevar](https://github.com/ahocevar))
* [#7480](https://github.com/openlayers/openlayers/pull/7480) - Create a new image when loading tile after an error ([@ahocevar](https://github.com/ahocevar))
* [#7476](https://github.com/openlayers/openlayers/pull/7476) - Reset text measurements when available fonts change ([@ahocevar](https://github.com/ahocevar))
* [#7454](https://github.com/openlayers/openlayers/pull/7454) - Add text background rendering and text padding ([@ahocevar](https://github.com/ahocevar))
* [#7468](https://github.com/openlayers/openlayers/pull/7468) - Add new API-key for HERE example ([@chrismayer](https://github.com/chrismayer))
* [#7465](https://github.com/openlayers/openlayers/pull/7465) - Export ol.proj.Projection#getAxisOrientation function ([@fredj](https://github.com/fredj))
* [#7462](https://github.com/openlayers/openlayers/pull/7462) - Respect metersPerUnit in ScaleLine control ([@ahocevar](https://github.com/ahocevar))
Additionally a number of updates where made to our dependencies:
* [#7536](https://github.com/openlayers/openlayers/pull/7536) - Update fs-extra to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7533](https://github.com/openlayers/openlayers/pull/7533) - Update marked to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7527](https://github.com/openlayers/openlayers/pull/7527) - Update eslint to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7511](https://github.com/openlayers/openlayers/pull/7511) - Update rollup to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7512](https://github.com/openlayers/openlayers/pull/7512) - Update eslint to the latest version 🚀 ([@openlayers](https://github.com/openlayers))
* [#7484](https://github.com/openlayers/openlayers/pull/7484) - Update closure-util to the latest version 🚀 ([@openlayers](https://github.com/openlayers))

9
changelog/v4.6.1.md Normal file
View File

@@ -0,0 +1,9 @@
# 4.6.1
The v4.6.1 release fixes a number of issues in the 4.6 releases.
## Fixes
* [#7543](https://github.com/openlayers/openlayers/pull/7543) - Donut polygon labels do not get a chance to get rendered ([@ahocevar](https://github.com/ahocevar))
* [#7542](https://github.com/openlayers/openlayers/pull/7542) - Still respect deprecated exceedLength option ([@ahocevar](https://github.com/ahocevar))
* [#7541](https://github.com/openlayers/openlayers/pull/7541) - Fix case of vectorrendertype.js ([@ahocevar](https://github.com/ahocevar))

7
changelog/v4.6.2.md Normal file
View File

@@ -0,0 +1,7 @@
# 4.6.2
The v4.6.2 release fixes a regression that could cause tremendous amounts of unneeded vector data to be fetched from the source.
## Fixes
* [#7546](https://github.com/openlayers/openlayers/pull/7546) - Do not request features for wrapped extent ([@ahocevar](https://github.com/ahocevar))

7
changelog/v4.6.3.md Normal file
View File

@@ -0,0 +1,7 @@
# 4.6.3
The v4.6.3 release fixes a performance issue when `renderMode: 'image'` is set on an `ol.layer.Vector`.
## Fixes
* [#7554](https://github.com/openlayers/openlayers/pull/7554) - Only compose image vector frame when the replay group has changed ([@ahocevar](https://github.com/ahocevar))

7
changelog/v4.6.4.md Normal file
View File

@@ -0,0 +1,7 @@
# 4.6.4
The v4.6.4 release fixes a feature selection issue when `renderMode: 'image'` is set on an `ol.layer.Vector`.
## Fixes
* [#7559](https://github.com/openlayers/openlayers/pull/7559) - Handle skipping and unskipping features with renderMode: 'image' ([@ahocevar](https://github.com/ahocevar))

View File

@@ -16,7 +16,7 @@
]
},
"plugins": [
"node_modules/jsdoc/plugins/markdown",
"plugins/markdown",
"config/jsdoc/api/plugins/inheritdoc",
"config/jsdoc/api/plugins/typedefs",
"config/jsdoc/api/plugins/events",

View File

@@ -34,8 +34,8 @@ Interactions for [vector features](ol.Feature.html)
<tr><th>Projections</th><th>Observable objects</th><th>Other components</th></tr>
<tr><td><p>All coordinates and extents need to be provided in view projection (default: EPSG:3857). To transform, use [ol.proj.transform()](ol.proj.html#.transform) and [ol.proj.transformExtent()](ol.proj.html#.transformExtent).</p>
[ol.proj](ol.proj.html)</td>
<td><p>Changes to all [ol.Objects](ol.Object.html) can observed by calling the [object.on('propertychange')](ol.Object.html#on) method. Listeners receive an [ol.Object.Event](ol.Object.Event.html) with information on the changed property and old value.</p>
<td>[ol.DeviceOrientation](ol.DeviceOrientation.html)<br>
<td><p>Changes to all [ol.Objects](ol.Object.html) can be observed by calling the [object.on('propertychange')](ol.Object.html#on) method. Listeners receive an [ol.Object.Event](ol.Object.Event.html) with information on the changed property and old value.</p>
<td>
[ol.Geolocation](ol.Geolocation.html)<br>
[ol.Overlay](ol.Overlay.html)<br></td>
</tr></table>

View File

@@ -17,6 +17,19 @@
<?js if (doc.variation) { ?>
<sup class="variation"><?js= doc.variation ?></sup>
<?js } ?></h2>
<br>
<?js if (doc.stability || doc.kind == 'namespace') {
var ancestors = doc.ancestors.map(a => a.replace(/>\./g, '>').replace(/\.</g, '<')).join('/');
var name = doc.name.toLowerCase();
var parts = [];
if (ancestors) {
parts.push(ancestors);
}
parts.push(name);
var importPath = parts.join('/');
?>
<pre class="prettyprint source"><code>import <?js= doc.name ?> from '<?js= importPath ?>';</code></pre>
<?js } ?>
<?js if (doc.classdesc) { ?>
<div class="class-description"><?js= doc.classdesc ?></div>
<?js } ?>

View File

@@ -3,7 +3,6 @@
* an api tag) and boolean defines (with a define tag and a default value).
*/
var assert = require('assert');
var fs = require('fs');
var path = require('path');
@@ -89,7 +88,6 @@ exports.publish = function(data, opts) {
types: getTypes(doc.type.names)
});
} else {
var types;
var symbol = {
name: doc.longname,
kind: doc.kind,
@@ -169,13 +167,15 @@ exports.publish = function(data, opts) {
return (symbol.name in augments || symbol.virtual);
});
process.stdout.write(
JSON.stringify({
symbols: symbols,
defines: defines,
typedefs: typedefs,
externs: externs,
base: base
}, null, 2));
return new Promise(function(resolve, reject) {
process.stdout.write(
JSON.stringify({
symbols: symbols,
defines: defines,
typedefs: typedefs,
externs: externs,
base: base
}, null, 2));
});
};

261
dist/ol-debug.css vendored Normal file
View File

@@ -0,0 +1,261 @@
.ol-box {
box-sizing: border-box;
border-radius: 2px;
border: 2px solid blue;
}
.ol-mouse-position {
top: 8px;
right: 8px;
position: absolute;
}
.ol-scale-line {
background: rgba(0,60,136,0.3);
border-radius: 4px;
bottom: 8px;
left: 8px;
padding: 2px;
position: absolute;
}
.ol-scale-line-inner {
border: 1px solid #eee;
border-top: none;
color: #eee;
font-size: 10px;
text-align: center;
margin: 1px;
will-change: contents, width;
}
.ol-overlay-container {
will-change: left,right,top,bottom;
}
.ol-unsupported {
display: none;
}
.ol-viewport, .ol-unselectable {
-webkit-touch-callout: none;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
-webkit-tap-highlight-color: rgba(0,0,0,0);
}
.ol-selectable {
-webkit-touch-callout: default;
-webkit-user-select: auto;
-moz-user-select: auto;
-ms-user-select: auto;
user-select: auto;
}
.ol-grabbing {
cursor: -webkit-grabbing;
cursor: -moz-grabbing;
cursor: grabbing;
}
.ol-grab {
cursor: move;
cursor: -webkit-grab;
cursor: -moz-grab;
cursor: grab;
}
.ol-control {
position: absolute;
background-color: rgba(255,255,255,0.4);
border-radius: 4px;
padding: 2px;
}
.ol-control:hover {
background-color: rgba(255,255,255,0.6);
}
.ol-zoom {
top: .5em;
left: .5em;
}
.ol-rotate {
top: .5em;
right: .5em;
transition: opacity .25s linear, visibility 0s linear;
}
.ol-rotate.ol-hidden {
opacity: 0;
visibility: hidden;
transition: opacity .25s linear, visibility 0s linear .25s;
}
.ol-zoom-extent {
top: 4.643em;
left: .5em;
}
.ol-full-screen {
right: .5em;
top: .5em;
}
@media print {
.ol-control {
display: none;
}
}
.ol-control button {
display: block;
margin: 1px;
padding: 0;
color: white;
font-size: 1.14em;
font-weight: bold;
text-decoration: none;
text-align: center;
height: 1.375em;
width: 1.375em;
line-height: .4em;
background-color: rgba(0,60,136,0.5);
border: none;
border-radius: 2px;
}
.ol-control button::-moz-focus-inner {
border: none;
padding: 0;
}
.ol-zoom-extent button {
line-height: 1.4em;
}
.ol-compass {
display: block;
font-weight: normal;
font-size: 1.2em;
will-change: transform;
}
.ol-touch .ol-control button {
font-size: 1.5em;
}
.ol-touch .ol-zoom-extent {
top: 5.5em;
}
.ol-control button:hover,
.ol-control button:focus {
text-decoration: none;
background-color: rgba(0,60,136,0.7);
}
.ol-zoom .ol-zoom-in {
border-radius: 2px 2px 0 0;
}
.ol-zoom .ol-zoom-out {
border-radius: 0 0 2px 2px;
}
.ol-attribution {
text-align: right;
bottom: .5em;
right: .5em;
max-width: calc(100% - 1.3em);
}
.ol-attribution ul {
margin: 0;
padding: 0 .5em;
font-size: .7rem;
line-height: 1.375em;
color: #000;
text-shadow: 0 0 2px #fff;
}
.ol-attribution li {
display: inline;
list-style: none;
line-height: inherit;
}
.ol-attribution li:not(:last-child):after {
content: " ";
}
.ol-attribution img {
max-height: 2em;
max-width: inherit;
vertical-align: middle;
}
.ol-attribution ul, .ol-attribution button {
display: inline-block;
}
.ol-attribution.ol-collapsed ul {
display: none;
}
.ol-attribution.ol-logo-only ul {
display: block;
}
.ol-attribution:not(.ol-collapsed) {
background: rgba(255,255,255,0.8);
}
.ol-attribution.ol-uncollapsible {
bottom: 0;
right: 0;
border-radius: 4px 0 0;
height: 1.1em;
line-height: 1em;
}
.ol-attribution.ol-logo-only {
background: transparent;
bottom: .4em;
height: 1.1em;
line-height: 1em;
}
.ol-attribution.ol-uncollapsible img {
margin-top: -.2em;
max-height: 1.6em;
}
.ol-attribution.ol-logo-only button,
.ol-attribution.ol-uncollapsible button {
display: none;
}
.ol-zoomslider {
top: 4.5em;
left: .5em;
height: 200px;
}
.ol-zoomslider button {
position: relative;
height: 10px;
}
.ol-touch .ol-zoomslider {
top: 5.5em;
}
.ol-overviewmap {
left: 0.5em;
bottom: 0.5em;
}
.ol-overviewmap.ol-uncollapsible {
bottom: 0;
left: 0;
border-radius: 0 4px 0 0;
}
.ol-overviewmap .ol-overviewmap-map,
.ol-overviewmap button {
display: inline-block;
}
.ol-overviewmap .ol-overviewmap-map {
border: 1px solid #7b98bc;
height: 150px;
margin: 2px;
width: 150px;
}
.ol-overviewmap:not(.ol-collapsed) button{
bottom: 1px;
left: 2px;
position: absolute;
}
.ol-overviewmap.ol-collapsed .ol-overviewmap-map,
.ol-overviewmap.ol-uncollapsible button {
display: none;
}
.ol-overviewmap:not(.ol-collapsed) {
background: rgba(255,255,255,0.8);
}
.ol-overviewmap-box {
border: 2px dotted rgba(0,60,136,0.7);
}
.ol-overviewmap .ol-overviewmap-box:hover {
cursor: move;
}

96548
dist/ol-debug.js vendored Normal file

File diff suppressed because one or more lines are too long

261
dist/ol.css vendored Normal file
View File

@@ -0,0 +1,261 @@
.ol-box {
box-sizing: border-box;
border-radius: 2px;
border: 2px solid blue;
}
.ol-mouse-position {
top: 8px;
right: 8px;
position: absolute;
}
.ol-scale-line {
background: rgba(0,60,136,0.3);
border-radius: 4px;
bottom: 8px;
left: 8px;
padding: 2px;
position: absolute;
}
.ol-scale-line-inner {
border: 1px solid #eee;
border-top: none;
color: #eee;
font-size: 10px;
text-align: center;
margin: 1px;
will-change: contents, width;
}
.ol-overlay-container {
will-change: left,right,top,bottom;
}
.ol-unsupported {
display: none;
}
.ol-viewport, .ol-unselectable {
-webkit-touch-callout: none;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
-webkit-tap-highlight-color: rgba(0,0,0,0);
}
.ol-selectable {
-webkit-touch-callout: default;
-webkit-user-select: auto;
-moz-user-select: auto;
-ms-user-select: auto;
user-select: auto;
}
.ol-grabbing {
cursor: -webkit-grabbing;
cursor: -moz-grabbing;
cursor: grabbing;
}
.ol-grab {
cursor: move;
cursor: -webkit-grab;
cursor: -moz-grab;
cursor: grab;
}
.ol-control {
position: absolute;
background-color: rgba(255,255,255,0.4);
border-radius: 4px;
padding: 2px;
}
.ol-control:hover {
background-color: rgba(255,255,255,0.6);
}
.ol-zoom {
top: .5em;
left: .5em;
}
.ol-rotate {
top: .5em;
right: .5em;
transition: opacity .25s linear, visibility 0s linear;
}
.ol-rotate.ol-hidden {
opacity: 0;
visibility: hidden;
transition: opacity .25s linear, visibility 0s linear .25s;
}
.ol-zoom-extent {
top: 4.643em;
left: .5em;
}
.ol-full-screen {
right: .5em;
top: .5em;
}
@media print {
.ol-control {
display: none;
}
}
.ol-control button {
display: block;
margin: 1px;
padding: 0;
color: white;
font-size: 1.14em;
font-weight: bold;
text-decoration: none;
text-align: center;
height: 1.375em;
width: 1.375em;
line-height: .4em;
background-color: rgba(0,60,136,0.5);
border: none;
border-radius: 2px;
}
.ol-control button::-moz-focus-inner {
border: none;
padding: 0;
}
.ol-zoom-extent button {
line-height: 1.4em;
}
.ol-compass {
display: block;
font-weight: normal;
font-size: 1.2em;
will-change: transform;
}
.ol-touch .ol-control button {
font-size: 1.5em;
}
.ol-touch .ol-zoom-extent {
top: 5.5em;
}
.ol-control button:hover,
.ol-control button:focus {
text-decoration: none;
background-color: rgba(0,60,136,0.7);
}
.ol-zoom .ol-zoom-in {
border-radius: 2px 2px 0 0;
}
.ol-zoom .ol-zoom-out {
border-radius: 0 0 2px 2px;
}
.ol-attribution {
text-align: right;
bottom: .5em;
right: .5em;
max-width: calc(100% - 1.3em);
}
.ol-attribution ul {
margin: 0;
padding: 0 .5em;
font-size: .7rem;
line-height: 1.375em;
color: #000;
text-shadow: 0 0 2px #fff;
}
.ol-attribution li {
display: inline;
list-style: none;
line-height: inherit;
}
.ol-attribution li:not(:last-child):after {
content: " ";
}
.ol-attribution img {
max-height: 2em;
max-width: inherit;
vertical-align: middle;
}
.ol-attribution ul, .ol-attribution button {
display: inline-block;
}
.ol-attribution.ol-collapsed ul {
display: none;
}
.ol-attribution.ol-logo-only ul {
display: block;
}
.ol-attribution:not(.ol-collapsed) {
background: rgba(255,255,255,0.8);
}
.ol-attribution.ol-uncollapsible {
bottom: 0;
right: 0;
border-radius: 4px 0 0;
height: 1.1em;
line-height: 1em;
}
.ol-attribution.ol-logo-only {
background: transparent;
bottom: .4em;
height: 1.1em;
line-height: 1em;
}
.ol-attribution.ol-uncollapsible img {
margin-top: -.2em;
max-height: 1.6em;
}
.ol-attribution.ol-logo-only button,
.ol-attribution.ol-uncollapsible button {
display: none;
}
.ol-zoomslider {
top: 4.5em;
left: .5em;
height: 200px;
}
.ol-zoomslider button {
position: relative;
height: 10px;
}
.ol-touch .ol-zoomslider {
top: 5.5em;
}
.ol-overviewmap {
left: 0.5em;
bottom: 0.5em;
}
.ol-overviewmap.ol-uncollapsible {
bottom: 0;
left: 0;
border-radius: 0 4px 0 0;
}
.ol-overviewmap .ol-overviewmap-map,
.ol-overviewmap button {
display: inline-block;
}
.ol-overviewmap .ol-overviewmap-map {
border: 1px solid #7b98bc;
height: 150px;
margin: 2px;
width: 150px;
}
.ol-overviewmap:not(.ol-collapsed) button{
bottom: 1px;
left: 2px;
position: absolute;
}
.ol-overviewmap.ol-collapsed .ol-overviewmap-map,
.ol-overviewmap.ol-uncollapsible button {
display: none;
}
.ol-overviewmap:not(.ol-collapsed) {
background: rgba(255,255,255,0.8);
}
.ol-overviewmap-box {
border: 2px dotted rgba(0,60,136,0.7);
}
.ol-overviewmap .ol-overviewmap-box:hover {
cursor: move;
}

1075
dist/ol.js vendored Normal file

File diff suppressed because one or more lines are too long

View File

@@ -224,3 +224,7 @@ At least 2 conditions are required.
### 58
Duplicate item added to a unique collection. For example, it may be that you tried to add the same layer to a map twice. Check for calls to `map.addLayer()` or other places where the map's layer collection is modified.
### 59
Invalid command found in the PBF. This indicates that the loaded vector tile may be corrupt.

View File

@@ -11,7 +11,7 @@ For a more in-depth overview of OpenLayers core concepts, check out the [tutoria
Make sure to also check out the [OpenLayers workshop](/workshop/).
Find additional reference material in the [API docs](../apidoc).
Find additional reference material in the [API docs](../apidoc) and [examples](../examples).
# Frequently Asked Questions (FAQ)
@@ -19,4 +19,4 @@ We have put together a document that lists [Frequently Asked Questions (FAQ)](fa
# More questions?
If you cannot find an answer in the documentation or the FAQ, you can ask your question on [Stack Overflow using the tag 'openlayers'](http://stackoverflow.com/questions/tagged/openlayers).
If you cannot find an answer in the documentation or the FAQ, you can search [Stack Overflow](http://stackoverflow.com/questions/tagged/openlayers). If you cannot find an answer there, ask a new question there, using the tag 'openlayers'.

View File

@@ -5,57 +5,56 @@ layout: doc.hbs
# Introduction
When going beyond modifying existing examples you might be looking for a
way to setup your own code with dependency management together with external
dependencies like OpenLayers.
When going beyond modifying existing examples you might be looking for a way to setup your own code with dependency management together with external dependencies like OpenLayers.
This tutorial serves as a suggested project setup using NPM and Browserify
for the most basic needs. There are several other options and in particular
you might be interested in
[compiling your own code together with OpenLayers](closure.html).
This tutorial serves as a suggested project setup using NPM and Browserify for the most basic needs. There are several other options, and in particular you might be interested in a more modern one (ES2015) [using Webpack with OpenLayers](https://gist.github.com/tschaub/79025aef325cd2837364400a105405b8).
## Initial steps
Create a new empty directory for your project and navigate to it by running
`mkdir new-project && cd new-project`. Initialize your project using `npm init`
and answer the questions asked.
Create a new empty directory for your project and navigate to it by running `mkdir new-project && cd new-project`. Initialize your project using `npm init` and answer the questions asked.
At this point you can ask NPM to add required dependencies by running
`npm install --save-dev openlayers browserify watchify uglify-js`. Watchify and
Uglify will be used to monitor for changes and to build into a minified
bundle.
Add OpenLayers as dependency to your application with `npm install --save ol`.
At this point you can ask NPM to add required development dependencies by running
```
npm install --save-dev cssify browserify cssify http-server uglify-js watchify
npm install --save-dev babelify babel-plugin-transform-es2015-modules-commonjs
```
We will be using `cssify` to include the css definitions required by OpenLayers in our bundle. `watchify`, `http-server` and `uglify-js` are used to monitor for changes and to build into a minified bundle. `babelify` and `babel-plugin-transform-es2015-modules-commonjs` are used to make the `ol` package, which was created using ES2015 modules, work with CommonJS.
## Application code and index.html
Place your application code in `index.js`. Here is a simple starting point:
```js
var ol = require('openlayers');
require('ol/ol.css');
var ol_Map = require('ol/map').default;
var ol_layer_Tile = require('ol/layer/tile').default;
var ol_source_OSM = require('ol/source/osm').default;
var ol_View = require('ol/view').default;
var map = new ol.Map({
var map = new ol_Map({
target: 'map',
layers: [
new ol.layer.Tile({
source: new ol.source.OSM()
new ol_layer_Tile({
source: new ol_source_OSM()
})
],
view: new ol.View({
view: new ol_View({
center: [0, 0],
zoom: 0
})
});
```
You will also need an `ìndex.html` file that will use your bundle. Here is a simple
example:
You will also need an `ìndex.html` file that will use your bundle. Here is a simple example:
```html
<!doctype html>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Using Browserify with OpenLayers</title>
<link rel="stylesheet" href="node_modules/openlayers/dist/ol.css" type="text/css">
<style>
#map {
width: 400px;
@@ -72,18 +71,17 @@ example:
## Creating a bundle
With simple scripts you can introduce the commands `npm run build` and `npm start` to
manually build your bundle and watch for changes, respectively. Add the following
to the script section in `package.json`:
With simple scripts you can introduce the commands `npm run build` and `npm start` to manually build your bundle and watch for changes, respectively. Add the following to the script section in `package.json`:
```json
"scripts": {
"start": "watchify index.js --outfile bundle.js",
"build": "browserify index.js | uglifyjs --compress --output bundle.js"
"start": "watchify index.js -g cssify --outfile bundle.js & http-server",
"build": "browserify -g cssify index.js | uglifyjs --compress --output bundle.js"
}
```
Now to test your application open http://localhost:8080/ in your browser. `watchify` will update `bundle.js` whenever you change something. You simply need to reload the page in your browser to see the changes.
```
$ npm start
```
Note that `bundle.js` will contain your application code and all dependencies
used in your application, in this case the official full build of OpenLayers.
If you only need parts of OpenLayers you can create
[custom builds](../../builder).
Note that `bundle.js` will contain your application code and all dependencies used in your application. From OpenLayers, it only contains the required components.

View File

@@ -5,11 +5,15 @@ layout: doc.hbs
# Compiling Application with Closure Compiler
**Note**: When building an application with dependencies that are available as [npm](https://npmjs.com/) packages, it will probably be easier to use the [ol](https://npmjs.com/package/ol) package and follow the instructions there.
The OpenLayers code uses the Closure Library, and it is compiled with the
Closure Compiler. Using OpenLayers in an application does not require using
Closure. But using Closure in an OpenLayers application is possible. And this
is what this tutorial is about.
When you want to include OpenLayers as separate script without bundling with your application, follow the [Creating custom builds](./custom-builds.html) tutorial instead.
This tutorial will teach you how to set up an OpenLayers application based on
the [`closure-util`](https://github.com/openlayers/closure-util) node package,
which provides utilities for working with Closure. Using `closure-util` is one
@@ -120,7 +124,7 @@ goog.require('ol.source.OSM');
/**
* @type {ol.Map}
* @type {ol.PluggableMap}
*/
app.map = new ol.Map({
target: 'map',

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](https://epsg.io/27700):
``` html
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/proj4js/2.4.3/proj4.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/proj4js/2.4.4/proj4.js"></script>
```
``` javascript

View File

@@ -6,6 +6,7 @@
"createMapboxStreetsV6Style": false,
"d3": false,
"geojsonvt": false,
"GyroNorm": false,
"jsPDF": false,
"jsts": false,
"saveAs": false,

View File

@@ -13,9 +13,9 @@ var map = new ol.Map({
],
target: 'map',
controls: ol.control.defaults({
attributionOptions: /** @type {olx.control.AttributionOptions} */ ({
attributionOptions: {
collapsible: false
})
}
}),
view: new ol.View({
center: [0, 0],

View File

@@ -1,5 +1,6 @@
goog.require('ol.Map');
goog.require('ol.View');
goog.require('ol.easing');
goog.require('ol.layer.Tile');
goog.require('ol.proj');
goog.require('ol.source.OSM');
@@ -73,9 +74,16 @@ onClick('rotate-right', function() {
});
onClick('rotate-around-rome', function() {
// Rotation animation takes the shortest arc, so animate in two parts
var rotation = view.getRotation();
view.animate({
rotation: view.getRotation() + 2 * Math.PI,
anchor: rome
rotation: rotation + Math.PI,
anchor: rome,
easing: ol.easing.easeIn
}, {
rotation: rotation + 2 * Math.PI,
anchor: rome,
easing: ol.easing.easeOut
});
});
@@ -103,10 +111,19 @@ onClick('bounce-to-istanbul', function() {
});
onClick('spin-to-rome', function() {
// Rotation animation takes the shortest arc, so animate in two parts
var center = view.getCenter();
view.animate({
center: [
center[0] + (rome[0] - center[0]) / 2,
center[1] + (rome[1] - center[1]) / 2
],
rotation: Math.PI,
easing: ol.easing.easeIn
}, {
center: rome,
rotation: 2 * Math.PI,
duration: 2000
easing: ol.easing.easeOut
});
});

View File

@@ -12,7 +12,8 @@ cloak:
<select id="layer-select">
<option value="Aerial">Aerial</option>
<option value="AerialWithLabels" selected>Aerial with labels</option>
<option value="Road">Road</option>
<option value="Road">Road (static)</option>
<option value="RoadOnDemand">Road (dynamic)</option>
<option value="collinsBart">Collins Bart</option>
<option value="ordnanceSurvey">Ordnance Survey</option>
</select>

View File

@@ -6,6 +6,7 @@ goog.require('ol.source.BingMaps');
var styles = [
'Road',
'RoadOnDemand',
'Aerial',
'AerialWithLabels',
'collinsBart',

View File

@@ -22,9 +22,9 @@ var map = new ol.Map({
],
target: 'map',
controls: ol.control.defaults({
attributionOptions: /** @type {olx.control.AttributionOptions} */ ({
attributionOptions: {
collapsible: false
})
}
}),
view: new ol.View({
center: ol.proj.transform(

View File

@@ -10,7 +10,11 @@ div.ol-zoom {
top: 178px;
left: 158px;
}
div.ol-attribution {
div.ol-rotate {
top: 178px;
right: 58px;
}
.map div.ol-attribution {
bottom: 30px;
right: 50px;
}

View File

@@ -51,9 +51,9 @@ var map = new ol.Map({
],
target: 'map',
controls: ol.control.defaults({
attributionOptions: /** @type {olx.control.AttributionOptions} */ ({
attributionOptions: {
collapsible: false
})
}
}),
view: view
});

View File

@@ -97,12 +97,13 @@ function rgb2xyz(x) {
function xyz2rgb(x) {
return 255 * (x <= 0.0031308 ?
12.92 * x : 1.055 * Math.pow(x, 1 / 2.4) - 0.055);
12.92 * x : 1.055 * Math.pow(x, 1 / 2.4) - 0.055);
}
var raster = new ol.source.Raster({
sources: [new ol.source.Stamen({
layer: 'watercolor'
layer: 'watercolor',
transition: 0
})],
operation: function(pixels, data) {
var hcl = rgb2hcl(pixels[0]);

View File

@@ -59,9 +59,9 @@ ol.inherits(app.RotateNorthControl, ol.control.Control);
var map = new ol.Map({
controls: ol.control.defaults({
attributionOptions: /** @type {olx.control.AttributionOptions} */ ({
attributionOptions: {
collapsible: false
})
}
}).extend([
new app.RotateNorthControl()
]),

View File

@@ -92,8 +92,7 @@ app.Drag.prototype.handleDragEvent = function(evt) {
var deltaX = evt.coordinate[0] - this.coordinate_[0];
var deltaY = evt.coordinate[1] - this.coordinate_[1];
var geometry = /** @type {ol.geom.SimpleGeometry} */
(this.feature_.getGeometry());
var geometry = this.feature_.getGeometry();
geometry.translate(deltaX, deltaY);
this.coordinate_[0] = evt.coordinate[0];
@@ -142,7 +141,7 @@ var lineFeature = new ol.Feature(
var polygonFeature = new ol.Feature(
new ol.geom.Polygon([[[-3e6, -1e6], [-3e6, 1e6],
[-1e6, 1e6], [-1e6, -1e6], [-3e6, -1e6]]]));
[-1e6, 1e6], [-1e6, -1e6], [-3e6, -1e6]]]));
var map = new ol.Map({

1
examples/d3.js vendored
View File

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

File diff suppressed because one or more lines are too long

View File

@@ -4,16 +4,15 @@ title: Device Orientation
shortdesc: Listen to DeviceOrientation events.
docs: >
This example shows how to track changes in device orientation.
tags: "orientation, openstreetmap"
[gyronorm.js](https://github.com/dorukeker/gyronorm.js) library is used to access and
normalize the events from the browser.
tags: "device, orientation, gyronorm"
resources:
- https://cdn.rawgit.com/dorukeker/gyronorm.js/v2.0.6/dist/gyronorm.complete.min.js
---
<div id="map" class="map"></div>
<label>
track changes
<input id="track" type="checkbox"/>
</label>
<p>
α : <code id="alpha"></code>&nbsp;&nbsp;
β : <code id="beta"></code>&nbsp;&nbsp;
γ : <code id="gamma"></code>&nbsp;&nbsp;
heading : <code id="heading"></code>
<div>α : <code id="alpha"></code></div>
<div>β : <code id="beta"></code></div>
<div>γ : <code id="gamma"></code></div>
</p>

View File

@@ -1,8 +1,9 @@
goog.require('ol.DeviceOrientation');
// NOCOMPILE
goog.require('ol.Map');
goog.require('ol.View');
goog.require('ol.control');
goog.require('ol.layer.Tile');
goog.require('ol.math');
goog.require('ol.proj');
goog.require('ol.source.OSM');
@@ -21,39 +22,35 @@ var map = new ol.Map({
],
target: 'map',
controls: ol.control.defaults({
attributionOptions: /** @type {olx.control.AttributionOptions} */ ({
attributionOptions: {
collapsible: false
})
}
}),
view: view
});
var deviceOrientation = new ol.DeviceOrientation();
function el(id) {
return document.getElementById(id);
}
el('track').addEventListener('change', function() {
deviceOrientation.setTracking(this.checked);
});
deviceOrientation.on('change', function() {
el('alpha').innerText = deviceOrientation.getAlpha() + ' [rad]';
el('beta').innerText = deviceOrientation.getBeta() + ' [rad]';
el('gamma').innerText = deviceOrientation.getGamma() + ' [rad]';
el('heading').innerText = deviceOrientation.getHeading() + ' [rad]';
});
// tilt the map
deviceOrientation.on(['change:beta', 'change:gamma'], function(event) {
var center = view.getCenter();
var resolution = view.getResolution();
var beta = event.target.getBeta() || 0;
var gamma = event.target.getGamma() || 0;
center[0] -= resolution * gamma * 25;
center[1] += resolution * beta * 25;
view.setCenter(view.constrainCenter(center));
var gn = new GyroNorm();
gn.init().then(function() {
gn.start(function(event) {
var center = view.getCenter();
var resolution = view.getResolution();
var alpha = ol.math.toRadians(event.do.beta);
var beta = ol.math.toRadians(event.do.beta);
var gamma = ol.math.toRadians(event.do.gamma);
el('alpha').innerText = alpha + ' [rad]';
el('beta').innerText = beta + ' [rad]';
el('gamma').innerText = gamma + ' [rad]';
center[0] -= resolution * gamma * 25;
center[1] += resolution * beta * 25;
view.setCenter(view.constrainCenter(center));
});
});

View File

@@ -1,9 +1,9 @@
---
layout: example.html
title: Drag-and-Drop Image Vector
shortdesc: Example of using the drag-and-drop interaction with a ol.source.ImageVector.
shortdesc: Example of using the drag-and-drop interaction with image vector rendering.
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.
Example of using the drag-and-drop interaction with an `ol.layer.Vector` with `renderMode: 'image'``. 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:
As1HiMj1PvLPlqc_gtM7AqZfBL8ZL3VrjaS3zIb22Uvb9WKhuJObROC-qUpa81U5: Your Bing Maps Key from http://www.bingmapsportal.com/ here

View File

@@ -7,10 +7,9 @@ goog.require('ol.format.KML');
goog.require('ol.format.TopoJSON');
goog.require('ol.interaction');
goog.require('ol.interaction.DragAndDrop');
goog.require('ol.layer.Image');
goog.require('ol.layer.Vector');
goog.require('ol.layer.Tile');
goog.require('ol.source.BingMaps');
goog.require('ol.source.ImageVector');
goog.require('ol.source.Vector');
goog.require('ol.style.Circle');
goog.require('ol.style.Fill');
@@ -115,11 +114,10 @@ dragAndDropInteraction.on('addfeatures', function(event) {
var vectorSource = new ol.source.Vector({
features: event.features
});
map.addLayer(new ol.layer.Image({
source: new ol.source.ImageVector({
source: vectorSource,
style: styleFunction
})
map.addLayer(new ol.layer.Vector({
renderMode: 'image',
source: vectorSource,
style: styleFunction
}));
map.getView().fit(vectorSource.getExtent());
});

View File

@@ -1,9 +1,8 @@
goog.require('ol.Collection');
goog.require('ol.Map');
goog.require('ol.View');
goog.require('ol.events.condition');
goog.require('ol.interaction.Draw');
goog.require('ol.interaction.Modify');
goog.require('ol.interaction.Snap');
goog.require('ol.layer.Tile');
goog.require('ol.layer.Vector');
goog.require('ol.source.OSM');
@@ -17,18 +16,9 @@ var raster = new ol.layer.Tile({
source: new ol.source.OSM()
});
var map = new ol.Map({
layers: [raster],
target: 'map',
view: new ol.View({
center: [-11000000, 4600000],
zoom: 4
})
});
var features = new ol.Collection();
var featureOverlay = new ol.layer.Vector({
source: new ol.source.Vector({features: features}),
var source = new ol.source.Vector();
var vector = new ol.layer.Vector({
source: source,
style: new ol.style.Style({
fill: new ol.style.Fill({
color: 'rgba(255, 255, 255, 0.2)'
@@ -45,38 +35,40 @@ var featureOverlay = new ol.layer.Vector({
})
})
});
featureOverlay.setMap(map);
var modify = new ol.interaction.Modify({
features: features,
// the SHIFT key must be pressed to delete vertices, so
// that new vertices can be drawn at the same position
// of existing vertices
deleteCondition: function(event) {
return ol.events.condition.shiftKeyOnly(event) &&
ol.events.condition.singleClick(event);
}
var map = new ol.Map({
layers: [raster, vector],
target: 'map',
view: new ol.View({
center: [-11000000, 4600000],
zoom: 4
})
});
var modify = new ol.interaction.Modify({source: source});
map.addInteraction(modify);
var draw; // global so we can remove it later
var draw, snap; // global so we can remove them later
var typeSelect = document.getElementById('type');
function addInteraction() {
function addInteractions() {
draw = new ol.interaction.Draw({
features: features,
type: /** @type {ol.geom.GeometryType} */ (typeSelect.value)
source: source,
type: typeSelect.value
});
map.addInteraction(draw);
}
snap = new ol.interaction.Snap({source: source});
map.addInteraction(snap);
}
/**
* Handle change event.
*/
typeSelect.onchange = function() {
map.removeInteraction(draw);
addInteraction();
map.removeInteraction(snap);
addInteractions();
};
addInteraction();
addInteractions();

View File

@@ -33,7 +33,7 @@ function addInteraction() {
if (value !== 'None') {
draw = new ol.interaction.Draw({
source: source,
type: /** @type {ol.geom.GeometryType} */ (typeSelect.value)
type: typeSelect.value
});
map.addInteraction(draw);
}

View File

@@ -33,7 +33,7 @@ function addInteraction() {
if (value !== 'None') {
draw = new ol.interaction.Draw({
source: source,
type: /** @type {ol.geom.GeometryType} */ (typeSelect.value),
type: typeSelect.value,
freehand: true
});
map.addInteraction(draw);

View File

@@ -67,7 +67,7 @@ function addInteraction() {
}
draw = new ol.interaction.Draw({
source: source,
type: /** @type {ol.geom.GeometryType} */ (value),
type: value,
geometryFunction: geometryFunction
});
map.addInteraction(draw);

View File

@@ -144,7 +144,7 @@ var map = new ol.Map({
layers: [raster, vector],
interactions: ol.interaction.defaults().extend([new ol.interaction.Select({
condition: function(evt) {
return evt.originalEvent.type == 'mousemove' ||
return evt.type == 'pointermove' ||
evt.type == 'singleclick';
},
style: selectStyleFunction

View File

@@ -23,9 +23,9 @@ var map = new ol.Map({
],
target: 'map',
controls: ol.control.defaults({
attributionOptions: /** @type {olx.control.AttributionOptions} */ ({
attributionOptions: {
collapsible: false
})
}
}),
view: new ol.View({
center: [0, 0],

View File

@@ -30,9 +30,9 @@ var map = new ol.Map({
layers: [raster, vector],
target: 'map',
controls: ol.control.defaults({
attributionOptions: /** @type {olx.control.AttributionOptions} */ ({
attributionOptions: {
collapsible: false
})
}
}),
view: new ol.View({
center: [0, 0],

View File

@@ -24,9 +24,9 @@ var map = new ol.Map({
})
],
controls: ol.control.defaults({
attributionOptions: /** @type {olx.control.AttributionOptions} */ ({
attributionOptions: {
collapsible: false
})
}
}),
target: 'map',
view: new ol.View({

View File

@@ -198,7 +198,7 @@ function stopAnimation(ended) {
// if animation cancelled set the marker at the beginning
var coord = ended ? routeCoords[routeLength - 1] : routeCoords[0];
/** @type {ol.geom.Point} */ (geoMarker.getGeometry())
.setCoordinates(coord);
.setCoordinates(coord);
//remove listener
map.un('postcompose', moveFeature);
}

View File

@@ -4,6 +4,9 @@
.map:-webkit-full-screen {
height: 100%;
}
.map:-ms-fullscreen {
height: 100%;
}
.map:fullscreen {
height: 100%;
}

View File

@@ -6,7 +6,6 @@ goog.require('ol.source.OSM');
goog.require('ol.source.VectorTile');
goog.require('ol.layer.Tile');
goog.require('ol.layer.VectorTile');
goog.require('ol.tilegrid');
goog.require('ol.proj.Projection');
@@ -77,18 +76,16 @@ fetch(url).then(function(response) {
});
var vectorSource = new ol.source.VectorTile({
format: new ol.format.GeoJSON(),
tileGrid: ol.tilegrid.createXYZ(),
tilePixelRatio: 16,
tileLoadFunction: function(tile) {
var format = tile.getFormat();
var tileCoord = tile.getTileCoord();
var data = tileIndex.getTile(tileCoord[0], tileCoord[1], -tileCoord[2] - 1);
var features = format.readFeatures(
JSON.stringify({
type: 'FeatureCollection',
features: data ? data.features : []
}, replacer));
JSON.stringify({
type: 'FeatureCollection',
features: data ? data.features : []
}, replacer));
tile.setLoader(function() {
tile.setFeatures(features);
tile.setProjection(tilePixels);

View File

@@ -180,9 +180,9 @@ var map = new ol.Map({
],
target: 'map',
controls: ol.control.defaults({
attributionOptions: /** @type {olx.control.AttributionOptions} */ ({
attributionOptions: {
collapsible: false
})
}
}),
view: new ol.View({
center: [0, 0],

View File

@@ -23,9 +23,9 @@ var map = new ol.Map({
],
target: 'map',
controls: ol.control.defaults({
attributionOptions: /** @type {olx.control.AttributionOptions} */ ({
attributionOptions: {
collapsible: false
})
}
}),
view: view
});
@@ -46,14 +46,14 @@ var positions = new ol.geom.LineString([],
/** @type {ol.geom.GeometryLayout} */ ('XYZM'));
// Geolocation Control
var geolocation = new ol.Geolocation(/** @type {olx.GeolocationOptions} */ ({
var geolocation = new ol.Geolocation({
projection: view.getProjection(),
trackingOptions: {
maximumAge: 10000,
enableHighAccuracy: true,
timeout: 600000
}
}));
});
var deltaMean = 500; // the geolocation sampling period mean in ms

View File

@@ -26,9 +26,9 @@ var map = new ol.Map({
],
target: 'map',
controls: ol.control.defaults({
attributionOptions: /** @type {olx.control.AttributionOptions} */ ({
attributionOptions: {
collapsible: false
})
}
}),
view: view
});
@@ -83,7 +83,7 @@ positionFeature.setStyle(new ol.style.Style({
geolocation.on('change:position', function() {
var coordinates = geolocation.getPosition();
positionFeature.setGeometry(coordinates ?
new ol.geom.Point(coordinates) : null);
new ol.geom.Point(coordinates) : null);
});
new ol.layer.Vector({

View File

@@ -10,12 +10,15 @@ goog.require('ol.style.Stroke');
var map = new ol.Map({
layers: [
new ol.layer.Tile({
source: new ol.source.OSM()
source: new ol.source.OSM({
wrapX: false
})
})
],
target: 'map',
view: new ol.View({
center: ol.proj.fromLonLat([4.8, 47.75]),
extent: ol.proj.get('EPSG:3857').getExtent(),
zoom: 5
})
});

View File

@@ -7,8 +7,8 @@ docs: >
<p>Be sure to respect the <a href="https://legal.here.com/en/terms/serviceterms/us/">HERE Service Terms</a> when using their tile API.</p>
tags: "here, here-maps, here-tile-api"
cloak:
a2qhegvZZFIuJDkkqjhQ: Your HERE Maps appId from https://developer.here.com/
lPJ3iaFLJDhD8fIAyU582A: Your HERE Maps appCode from https://developer.here.com/
kDm0Jq1K4Ak7Bwtn8uvk: Your HERE Maps appId from https://developer.here.com/
xnmvc4dKZrDfGlvQHXSvwQ: Your HERE Maps appCode from https://developer.here.com/
---
<div id="map" class="map"></div>
<select id="layer-select">

View File

@@ -3,8 +3,8 @@ goog.require('ol.View');
goog.require('ol.layer.Tile');
goog.require('ol.source.XYZ');
var appId = 'a2qhegvZZFIuJDkkqjhQ';
var appCode = 'lPJ3iaFLJDhD8fIAyU582A';
var appId = 'kDm0Jq1K4Ak7Bwtn8uvk';
var appCode = 'xnmvc4dKZrDfGlvQHXSvwQ';
var hereLayers = [
{
base: 'base',
@@ -81,11 +81,11 @@ var map = new ol.Map({
function createUrl(tpl, layerDesc) {
return tpl
.replace('{base}', layerDesc.base)
.replace('{type}', layerDesc.type)
.replace('{scheme}', layerDesc.scheme)
.replace('{app_id}', layerDesc.app_id)
.replace('{app_code}', layerDesc.app_code);
.replace('{base}', layerDesc.base)
.replace('{type}', layerDesc.type)
.replace('{scheme}', layerDesc.scheme)
.replace('{app_id}', layerDesc.app_id)
.replace('{app_code}', layerDesc.app_code);
}
var select = document.getElementById('layer-select');

View File

@@ -80,7 +80,7 @@ var vector = new ol.layer.Vector({
});
var map = new ol.Map({
renderer: /** @type {ol.renderer.Type} */ ('webgl'),
renderer: /** @type {Array<ol.renderer.Type>} */ (['webgl', 'canvas']),
layers: [vector],
target: document.getElementById('map'),
view: new ol.View({

View File

@@ -99,9 +99,9 @@ var map = new ol.Map({
],
target: 'map',
controls: ol.control.defaults({
attributionOptions: /** @type {olx.control.AttributionOptions} */ ({
attributionOptions: {
collapsible: false
})
}
}),
view: new ol.View({
center: [703365.7089403362, 5714629.865071137],

View File

@@ -3,9 +3,7 @@ layout: example.html
title: Image Vector Layer
shortdesc: Example of an image vector layer.
docs: >
<p>This example uses a <code>ol.source.ImageVector</code> source. That source gets vector features from the
<code>ol.source.Vector</code> it's configured with, and draw these features to an HTML5 canvas element that
is then used as the image of an image layer.</p>
<p>This example uses <code>ol.layer.Vector</code> with `renderMode: 'image'`. This mode results in faster rendering during interaction and animations, at the cost of less accurate rendering.</p>
tags: "vector, image"
---
<div id="map" class="map"></div>

View File

@@ -1,38 +1,37 @@
goog.require('ol.Map');
goog.require('ol.View');
goog.require('ol.format.GeoJSON');
goog.require('ol.layer.Image');
goog.require('ol.layer.Tile');
goog.require('ol.layer.Vector');
goog.require('ol.source.ImageVector');
goog.require('ol.source.OSM');
goog.require('ol.source.Vector');
goog.require('ol.style.Fill');
goog.require('ol.style.Stroke');
goog.require('ol.style.Style');
goog.require('ol.style.Text');
var style = new ol.style.Style({
fill: new ol.style.Fill({
color: 'rgba(255, 255, 255, 0.6)'
}),
stroke: new ol.style.Stroke({
color: '#319FD3',
width: 1
}),
text: new ol.style.Text()
});
var map = new ol.Map({
layers: [
new ol.layer.Tile({
source: new ol.source.OSM()
}),
new ol.layer.Image({
source: new ol.source.ImageVector({
source: new ol.source.Vector({
url: 'data/geojson/countries.geojson',
format: new ol.format.GeoJSON()
}),
style: new ol.style.Style({
fill: new ol.style.Fill({
color: 'rgba(255, 255, 255, 0.6)'
}),
stroke: new ol.style.Stroke({
color: '#319FD3',
width: 1
})
})
})
new ol.layer.Vector({
renderMode: 'image',
source: new ol.source.Vector({
url: 'data/geojson/countries.geojson',
format: new ol.format.GeoJSON()
}),
style: function(feature) {
style.getText().setText(feature.get('name'));
return style;
}
})
],
target: 'map',

View File

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

View File

@@ -19,12 +19,12 @@ if (!ol.has.WEBGL) {
var map = new ol.Map({
layers: [osm],
renderer: /** @type {ol.renderer.Type} */ ('webgl'),
renderer: /** @type {Array<ol.renderer.Type>} */ (['webgl', 'canvas']),
target: 'map',
controls: ol.control.defaults({
attributionOptions: /** @type {olx.control.AttributionOptions} */ ({
attributionOptions: {
collapsible: false
})
}
}),
view: new ol.View({
center: [0, 0],

View File

@@ -12,9 +12,9 @@ var map = new ol.Map({
layers: [osm],
target: 'map',
controls: ol.control.defaults({
attributionOptions: /** @type {olx.control.AttributionOptions} */ ({
attributionOptions: {
collapsible: false
})
}
}),
view: new ol.View({
center: [0, 0],

View File

@@ -19,9 +19,9 @@ var map = new ol.Map({
layers: [osm, bing],
target: 'map',
controls: ol.control.defaults({
attributionOptions: /** @type {olx.control.AttributionOptions} */ ({
attributionOptions: {
collapsible: false
})
}
}),
view: new ol.View({
center: [0, 0],

View File

@@ -62,5 +62,5 @@ var map = new ol.Map({
map.addInteraction(new ol.interaction.Draw({
source: source,
type: /** @type {ol.geom.GeometryType} */ ('LineString')
type: 'LineString'
}));

View File

@@ -35,9 +35,9 @@ var map = new ol.Map({
],
target: 'map',
controls: ol.control.defaults({
attributionOptions: /** @type {olx.control.AttributionOptions} */ ({
attributionOptions: {
collapsible: false
})
}
}),
view: new ol.View({
maxZoom: 18,

View File

@@ -1,4 +1,3 @@
/* eslint-disable openlayers-internal/no-unused-requires */
goog.require('ol.Map');
goog.require('ol.View');
goog.require('ol.format.MVT');
@@ -17,7 +16,7 @@ var key = 'pk.eyJ1IjoiYWhvY2V2YXIiLCJhIjoiRk1kMWZaSSJ9.E5BkluenyWQMsBLsuByrmg';
// Calculation of resolutions that match zoom levels 1, 3, 5, 7, 9, 11, 13, 15.
var resolutions = [];
for (var i = 0; i <= 7; ++i) {
for (var i = 0; i <= 8; ++i) {
resolutions.push(156543.03392804097 / Math.pow(2, i * 2));
}
// Calculation of tile urls for zoom levels 1, 3, 5, 7, 9, 11, 13, 15.
@@ -44,10 +43,9 @@ var map = new ol.Map({
resolutions: resolutions,
tileSize: 512
}),
tilePixelRatio: 8,
tileUrlFunction: tileUrlFunction
}),
style: createMapboxStreetsV6Style()
style: createMapboxStreetsV6Style(ol.style.Style, ol.style.Fill, ol.style.Stroke, ol.style.Icon, ol.style.Text)
})
],
target: 'map',
@@ -57,6 +55,3 @@ var map = new ol.Map({
zoom: 2
})
});
// ol.style.Fill, ol.style.Icon, ol.style.Stroke, ol.style.Style and
// ol.style.Text are required for createMapboxStreetsV6Style()

View File

@@ -1,5 +1,3 @@
/* eslint-disable openlayers-internal/no-unused-requires */
goog.require('ol.Map');
goog.require('ol.View');
goog.require('ol.format.MVT');
@@ -10,7 +8,6 @@ goog.require('ol.style.Icon');
goog.require('ol.style.Stroke');
goog.require('ol.style.Style');
goog.require('ol.style.Text');
goog.require('ol.tilegrid');
var key = 'pk.eyJ1IjoiYWhvY2V2YXIiLCJhIjoiRk1kMWZaSSJ9.E5BkluenyWQMsBLsuByrmg';
@@ -18,17 +15,16 @@ var key = 'pk.eyJ1IjoiYWhvY2V2YXIiLCJhIjoiRk1kMWZaSSJ9.E5BkluenyWQMsBLsuByrmg';
var map = new ol.Map({
layers: [
new ol.layer.VectorTile({
declutter: true,
source: new ol.source.VectorTile({
attributions: '© <a href="https://www.mapbox.com/map-feedback/">Mapbox</a> ' +
'© <a href="https://www.openstreetmap.org/copyright">' +
'OpenStreetMap contributors</a>',
format: new ol.format.MVT(),
tileGrid: ol.tilegrid.createXYZ({maxZoom: 22}),
tilePixelRatio: 16,
url: 'https://{a-d}.tiles.mapbox.com/v4/mapbox.mapbox-streets-v6/' +
'{z}/{x}/{y}.vector.pbf?access_token=' + key
}),
style: createMapboxStreetsV6Style()
style: createMapboxStreetsV6Style(ol.style.Style, ol.style.Fill, ol.style.Stroke, ol.style.Icon, ol.style.Text)
})
],
target: 'map',
@@ -37,6 +33,3 @@ var map = new ol.Map({
zoom: 2
})
});
// ol.style.Fill, ol.style.Icon, ol.style.Stroke, ol.style.Style and
// ol.style.Text are required for createMapboxStreetsV6Style()

View File

@@ -3,9 +3,9 @@ goog.require('ol.View');
goog.require('ol.layer.Image');
goog.require('ol.source.ImageMapGuide');
var mdf = 'Library://Samples/Sheboygan/Maps/Sheboygan.MapDefinition';
var mdf = 'Library://Public/Samples/Sheboygan/Maps/Sheboygan.MapDefinition';
var agentUrl =
'http://data.mapguide.com/mapguide/mapagent/mapagent.fcgi?USERNAME=Anonymous';
'http://www.buoyshark.com/mapguide/mapagent/mapagent.fcgi?';
var bounds = [
-87.865114442365922,
43.665065564837931,
@@ -23,7 +23,9 @@ var map = new ol.Map({
metersPerUnit: 111319.4908, //value returned from mapguide
params: {
MAPDEFINITION: mdf,
FORMAT: 'PNG'
FORMAT: 'PNG',
USERNAME: 'OpenLayers',
PASSWORD: 'OpenLayers'
},
ratio: 2
})

View File

@@ -1,20 +1,24 @@
---
layout: example.html
title: Measure
shortdesc: Example of using the ol.interaction.Draw interaction to create a simple measuring application.
shortdesc: Using a draw interaction to measure lengths and areas.
docs: >
<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>
<p>The <code>ol.Sphere.getLength()</code> and <code>ol.Sphere.getArea()</code>
functions calculate spherical lengths and areas for geometries. Lengths are
calculated by assuming great circle segments between geometry coordinates.
Areas are calculated as if edges of polygons were great circle segments.</p>
<p>Note that the <code>geometry.getLength()</code> and <code>geometry.getArea()</code>
methods return measures of projected (planar) geometries. These can be very
different than on-the-ground measures in certain situations — in northern
and southern latitudes using Web Mercator for example. For better results,
use the functions on <code>ol.Sphere</code>.</p>
tags: "draw, edit, measure, vector"
---
<div id="map" class="map"></div>
<form class="form-inline">
<label>Measurement type &nbsp;</label>
<select id="type">
<option value="length">Length (LineString)</option>
<option value="area">Area (Polygon)</option>
</select>
<label class="checkbox">
<input type="checkbox" id="geodesic">
use geodesic measures
</label>
<select id="type">
<option value="length">Length (LineString)</option>
<option value="area">Area (Polygon)</option>
</select>
</form>

View File

@@ -8,7 +8,6 @@ goog.require('ol.geom.Polygon');
goog.require('ol.interaction.Draw');
goog.require('ol.layer.Tile');
goog.require('ol.layer.Vector');
goog.require('ol.proj');
goog.require('ol.source.OSM');
goog.require('ol.source.Vector');
goog.require('ol.style.Circle');
@@ -17,8 +16,6 @@ goog.require('ol.style.Stroke');
goog.require('ol.style.Style');
var wgs84Sphere = new ol.Sphere(6378137);
var raster = new ol.layer.Tile({
source: new ol.source.OSM()
});
@@ -137,7 +134,6 @@ map.getViewport().addEventListener('mouseout', function() {
});
var typeSelect = document.getElementById('type');
var geodesicCheckbox = document.getElementById('geodesic');
var draw; // global so we can remove it later
@@ -148,19 +144,7 @@ var draw; // global so we can remove it later
* @return {string} The formatted length.
*/
var formatLength = function(line) {
var length;
if (geodesicCheckbox.checked) {
var coordinates = line.getCoordinates();
length = 0;
var sourceProj = map.getView().getProjection();
for (var i = 0, ii = coordinates.length - 1; i < ii; ++i) {
var c1 = ol.proj.transform(coordinates[i], sourceProj, 'EPSG:4326');
var c2 = ol.proj.transform(coordinates[i + 1], sourceProj, 'EPSG:4326');
length += wgs84Sphere.haversineDistance(c1, c2);
}
} else {
length = Math.round(line.getLength() * 100) / 100;
}
var length = ol.Sphere.getLength(line);
var output;
if (length > 100) {
output = (Math.round(length / 1000 * 100) / 100) +
@@ -179,16 +163,7 @@ var formatLength = function(line) {
* @return {string} Formatted area.
*/
var formatArea = function(polygon) {
var area;
if (geodesicCheckbox.checked) {
var sourceProj = map.getView().getProjection();
var geom = /** @type {ol.geom.Polygon} */(polygon.clone().transform(
sourceProj, 'EPSG:4326'));
var coordinates = geom.getLinearRing(0).getCoordinates();
area = Math.abs(wgs84Sphere.geodesicArea(coordinates));
} else {
area = polygon.getArea();
}
var area = ol.Sphere.getArea(polygon);
var output;
if (area > 10000) {
output = (Math.round(area / 1000000 * 100) / 100) +
@@ -204,7 +179,7 @@ function addInteraction() {
var type = (typeSelect.value == 'area' ? 'Polygon' : 'LineString');
draw = new ol.interaction.Draw({
source: source,
type: /** @type {ol.geom.GeometryType} */ (type),
type: type,
style: new ol.style.Style({
fill: new ol.style.Fill({
color: 'rgba(255, 255, 255, 0.2)'

View File

@@ -27,9 +27,9 @@ var map = new ol.Map({
],
target: 'map',
controls: ol.control.defaults({
attributionOptions: /** @type {olx.control.AttributionOptions} */ ({
attributionOptions: {
collapsible: false
})
}
}),
view: new ol.View({
center: [653600, 5723680],

View File

@@ -96,8 +96,8 @@ var geojsonObject = {
'geometry': {
'type': 'Polygon',
'coordinates': [[[-5e6, -1e6], [-4e6, 1e6],
[-3e6, -1e6], [-5e6, -1e6]], [[-4.5e6, -0.5e6],
[-3.5e6, -0.5e6], [-4e6, 0.5e6], [-4.5e6, -0.5e6]]]
[-3e6, -1e6], [-5e6, -1e6]], [[-4.5e6, -0.5e6],
[-3.5e6, -0.5e6], [-4e6, 0.5e6], [-4.5e6, -0.5e6]]]
}
}, {
'type': 'Feature',
@@ -117,11 +117,11 @@ var geojsonObject = {
'type': 'MultiPolygon',
'coordinates': [
[[[-5e6, 6e6], [-5e6, 8e6], [-3e6, 8e6],
[-3e6, 6e6], [-5e6, 6e6]]],
[-3e6, 6e6], [-5e6, 6e6]]],
[[[-3e6, 6e6], [-2e6, 8e6], [0, 8e6],
[0, 6e6], [-3e6, 6e6]]],
[0, 6e6], [-3e6, 6e6]]],
[[[1e6, 6e6], [1e6, 8e6], [3e6, 8e6],
[3e6, 6e6], [1e6, 6e6]]]
[3e6, 6e6], [1e6, 6e6]]]
]
}
}, {
@@ -225,7 +225,7 @@ var modify = new ol.interaction.Modify({
style: overlayStyle,
insertVertexCondition: function() {
// prevent new vertices to be added to the polygons
return !this.features_.getArray().every(function(feature) {
return !select.getFeatures().getArray().every(function(feature) {
return feature.getGeometry().getType().match(/Polygon/);
});
}

View File

@@ -18,9 +18,9 @@ var mousePositionControl = new ol.control.MousePosition({
var map = new ol.Map({
controls: ol.control.defaults({
attributionOptions: /** @type {olx.control.AttributionOptions} */ ({
attributionOptions: {
collapsible: false
})
}
}).extend([mousePositionControl]),
layers: [
new ol.layer.Tile({

View File

@@ -15,9 +15,9 @@ var map = new ol.Map({
],
target: 'map',
controls: ol.control.defaults({
attributionOptions: /** @type {olx.control.AttributionOptions} */ ({
attributionOptions: {
collapsible: false
})
}
}),
view: new ol.View({
center: [0, 0],

View File

@@ -8,9 +8,9 @@ goog.require('ol.source.OSM');
var map = new ol.Map({
controls: ol.control.defaults({
attributionOptions: /** @type {olx.control.AttributionOptions} */ ({
attributionOptions: {
collapsible: false
})
}
}).extend([
new ol.control.ZoomToExtent({
extent: [

View File

@@ -7,8 +7,6 @@ goog.require('ol.source.VectorTile');
goog.require('ol.style.Fill');
goog.require('ol.style.Stroke');
goog.require('ol.style.Style');
goog.require('ol.tilegrid');
var key = 'vector-tiles-5eJz6JX';
@@ -70,7 +68,7 @@ var map = new ol.Map({
layerName: 'layer',
layers: ['water', 'roads', 'buildings']
}),
tileGrid: ol.tilegrid.createXYZ({maxZoom: 19}),
maxZoom: 19,
url: 'https://tile.mapzen.com/mapzen/vector/v1/all/{z}/{x}/{y}.topojson?api_key=' + key
}),
style: function(feature, resolution) {

View File

@@ -30,9 +30,9 @@ var map = new ol.Map({
})
],
controls: ol.control.defaults({
attributionOptions: /** @type {olx.control.AttributionOptions} */ ({
attributionOptions: {
collapsible: false
})
}
}),
target: 'map',
view: new ol.View({

View File

@@ -54,28 +54,28 @@ var geojsonObject = {
'geometry': {
'type': 'Polygon',
'coordinates': [[[-5e6, 6e6], [-5e6, 8e6], [-3e6, 8e6],
[-3e6, 6e6], [-5e6, 6e6]]]
[-3e6, 6e6], [-5e6, 6e6]]]
}
}, {
'type': 'Feature',
'geometry': {
'type': 'Polygon',
'coordinates': [[[-2e6, 6e6], [-2e6, 8e6], [0, 8e6],
[0, 6e6], [-2e6, 6e6]]]
[0, 6e6], [-2e6, 6e6]]]
}
}, {
'type': 'Feature',
'geometry': {
'type': 'Polygon',
'coordinates': [[[1e6, 6e6], [1e6, 8e6], [3e6, 8e6],
[3e6, 6e6], [1e6, 6e6]]]
[3e6, 6e6], [1e6, 6e6]]]
}
}, {
'type': 'Feature',
'geometry': {
'type': 'Polygon',
'coordinates': [[[-2e6, -1e6], [-1e6, 1e6],
[0, -1e6], [-2e6, -1e6]]]
[0, -1e6], [-2e6, -1e6]]]
}
}]
};

View File

@@ -18,13 +18,13 @@ var closer = document.getElementById('popup-closer');
/**
* Create an overlay to anchor the popup to the map.
*/
var overlay = new ol.Overlay(/** @type {olx.OverlayOptions} */ ({
var overlay = new ol.Overlay({
element: container,
autoPan: true,
autoPanAnimation: {
duration: 250
}
}));
});
/**

View File

@@ -162,13 +162,13 @@ function plot(resolution, counts, threshold) {
var value = counts.min + (index * counts.delta);
return 'bar' + (value >= threshold ? ' selected' : '');
})
.attr('width', barWidth - 2);
.attr('width', barWidth - 2);
bar.transition().attr('transform', function(value, index) {
return 'translate(' + (index * barWidth) + ', ' +
(plotHeight - yScale(value)) + ')';
})
.attr('height', yScale);
.attr('height', yScale);
bar.on('mousemove', function(count, index) {
var threshold = counts.min + (index * counts.delta);

View File

@@ -8,7 +8,7 @@ docs: >
in <a href="https://epsg.io/">EPSG.io</a> database.
tags: "reprojection, projection, proj4js, epsg.io"
resources:
- https://cdnjs.cloudflare.com/ajax/libs/proj4js/2.4.3/proj4.js
- https://cdnjs.cloudflare.com/ajax/libs/proj4js/2.4.4/proj4.js
---
<div id="map" class="map"></div>
<form class="form-inline">

View File

@@ -6,6 +6,6 @@ docs: >
This example shows client-side reprojection of single image source.
tags: "reprojection, projection, proj4js, image, imagestatic"
resources:
- https://cdnjs.cloudflare.com/ajax/libs/proj4js/2.4.3/proj4.js
- https://cdnjs.cloudflare.com/ajax/libs/proj4js/2.4.4/proj4.js
---
<div id="map" class="map"></div>

View File

@@ -6,7 +6,7 @@ docs: >
This example shows client-side raster reprojection between various projections.
tags: "reprojection, projection, proj4js, osm, wms, wmts, hidpi"
resources:
- https://cdnjs.cloudflare.com/ajax/libs/proj4js/2.4.3/proj4.js
- https://cdnjs.cloudflare.com/ajax/libs/proj4js/2.4.4/proj4.js
---
<div id="map" class="map"></div>
<form class="form-inline">

View File

@@ -1,20 +1,20 @@
// Styles for the mapbox-streets-v6 vector tile data set. Loosely based on
// http://a.tiles.mapbox.com/v4/mapbox.mapbox-streets-v6.json
function createMapboxStreetsV6Style() {
var fill = new ol.style.Fill({color: ''});
var stroke = new ol.style.Stroke({color: '', width: 1});
var polygon = new ol.style.Style({fill: fill});
var strokedPolygon = new ol.style.Style({fill: fill, stroke: stroke});
var line = new ol.style.Style({stroke: stroke});
var text = new ol.style.Style({text: new ol.style.Text({
function createMapboxStreetsV6Style(Style, Fill, Stroke, Icon, Text) {
var fill = new Fill({color: ''});
var stroke = new Stroke({color: '', width: 1});
var polygon = new Style({fill: fill});
var strokedPolygon = new Style({fill: fill, stroke: stroke});
var line = new Style({stroke: stroke});
var text = new Style({text: new Text({
text: '', fill: fill, stroke: stroke
})});
var iconCache = {};
function getIcon(iconName) {
var icon = iconCache[iconName];
if (!icon) {
icon = new ol.style.Style({image: new ol.style.Icon({
icon = new Style({image: new Icon({
src: 'https://cdn.rawgit.com/mapbox/maki/master/icons/' + iconName + '-15.svg',
imgSize: [15, 15]
})});

View File

@@ -13,9 +13,9 @@ var map = new ol.Map({
],
target: 'map',
controls: ol.control.defaults({
attributionOptions: /** @type {olx.control.AttributionOptions} */ ({
attributionOptions: {
collapsible: false
})
}
}),
view: new ol.View({
center: [14200000, 4130000],

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