Commit Graph
100 Commits
Author SHA1 Message Date
Petr Sloup 84ae3d16a6 Replace/remove usage of tileserver.maptiler.com 2020-07-22 09:55:27 +02:00
Petr Sloup 684e305bc8 Minor mapbox-style example docs update 2019-10-03 19:16:19 +02:00
Petr Sloup db583be0f9 Add example showing vector tiles in EPSG:4326 2019-10-03 13:00:47 +02:00
Petr Sloup 61fdf965ba Use special MapTiler API key dedicated for OpenLayers examples 2019-06-25 16:34:58 +02:00
Petr Sloup 05c791efcd Fix MapTiler API usage 2019-06-21 11:22:24 +02:00
Petr Sloup 67ee5a41b0 Add note about ignoring tileSize TileJSON property 2019-02-22 09:05:18 +01:00
Petr Sloup bc25097899 Add tileSize option to ol/source/TileJSON
The TileJSON spec does not specify the tile size
and there is no TileJSON property specifying the value.

Many providers nowadays provide 512x512 with TileJSON.
2019-02-21 19:00:07 +01:00
Petr Sloup ea4e5f2293 Fix minor type strength inconsistency 2017-06-13 12:58:57 +02:00
Petr Sloup 9eadf1505a Merge pull request #5766 from klokantech/examples-urls-https-fix
Use HTTPS to access tiles at tileserver.maptiler.com in examples
2016-08-23 13:45:36 +02:00
Petr Sloup cf7bed7887 Fix protocol in examples
tileserver.maptiler.com now uses HTTPS
2016-08-23 12:49:00 +02:00
Petr Sloup 1d21f76ad3 Merge pull request #4721 from klokantech/raster-reproj-gutter
Fix reprojection of raster sources with gutter
2016-02-19 12:25:24 +01:00
Petr Sloup 59574da74c Fix reprojection of raster sources with gutter 2016-02-19 12:17:03 +01:00
Petr Sloup 7b8feaa48f Merge pull request #4869 from klokantech/improve-reproj-precision
Improve precision of ol.reproj.render
2016-02-19 09:14:32 +01:00
Petr Sloup 83e251621a Improve precision of ol.reproj.render 2016-02-18 16:25:12 +01:00
Petr Sloup 9562756eeb Merge pull request #4718 from klokantech/raster-reproj-tile-error
Improve raster reprojection behavior when tiles fail to load
2016-01-27 15:05:36 +01:00
Petr Sloup a05c932973 Improve raster reprojection behavior when tiles fail to load 2016-01-27 14:56:18 +01:00
Petr Sloup cd308e47d2 Merge pull request #4667 from klokantech/mapquest-opaque-fix
Fix rendering of transparent MapQuest layer type
2016-01-13 07:01:30 +01:00
Petr Sloup 5dfb4199ca Fix rendering of transparent MapQuest layer type 2016-01-12 23:23:16 +01:00
Petr Sloup dccf867308 Merge pull request #4649 from klokantech/getopaque-doc-fix
Missing parameter description for ol.source.Tile#getOpaque
2016-01-12 09:27:41 +01:00
Petr Sloup 3607cddcca Missing parameter description for ol.source.Tile#getOpaque 2016-01-12 09:16:40 +01:00
Petr Sloup 11bd31c15b Merge pull request #4628 from klokantech/opaque-reprojection-fix
Fix for reprojecting opaque tile sources
2016-01-12 09:06:14 +01:00
Petr Sloup 2c3ed38714 Fix for reprojecting opaque tile sources 2016-01-12 08:58:16 +01:00
Petr Sloup 2237dc8e72 Merge pull request #4625 from klokantech/tilejson-xhr-default
Use XHR by default to load TileJSON in ol.source.TileJSON
2016-01-07 15:30:10 +01:00
Petr Sloup bc0d783f50 Use XHR by default to load TileJSON in ol.source.TileJSON 2016-01-07 09:19:23 +01:00
Petr Sloup 22b1460595 Merge pull request #4619 from klokantech/tilejson-xhr
Add option to load TileJSON via XHR
2016-01-05 13:48:23 +01:00
Petr Sloup ffd9ace84e Add option to load TileJSON via XHR 2016-01-05 13:40:20 +01:00
Petr Sloup cd1304aaae Merge pull request #4598 from klokantech/tilepixelratio
Make ol.source.Tile#getTilePixelRatio work correctly for all sources
2015-12-28 13:31:59 +01:00
Petr Sloup 767ac44e99 Make ol.source.Tile#getTilePixelRatio work for all sources
Even for sources which serve dynamic tile sizes based on devicePixelRatio
2015-12-28 13:19:03 +01:00
Petr Sloup 28240adaf5 Merge pull request #4594 from klokantech/tilequeue-reproj-jam
Fix for TileQueue gradually choking up when using raster reprojection
2015-12-28 13:17:39 +01:00
Petr Sloup 9cdf7678bb Make ol.reproj.Tile#load always async for consistency 2015-12-28 09:30:12 +01:00
Petr Sloup e1712eb44a Initiate tile load only after registering it as loading 2015-12-26 10:49:21 +01:00
Petr Sloup 48c8f9ea84 Merge pull request #4551 from klokantech/rasterreproj-wrapx
Handle tile coordinate wrapping when reprojecting raster tiles
2015-12-11 16:45:28 +01:00
Petr Sloup 9f5d85f2c6 Handle tile coordinate wrapping when reprojecting raster tiles 2015-12-11 16:35:23 +01:00
Petr Sloup 77ca38aa10 Merge pull request #4440 from klokantech/rasterreproj_tutorial
Raster reprojection tutorial
2015-11-18 09:40:40 +01:00
Petr Sloup 0b23eae429 Language fixes for raster reprojection tutorial 2015-11-18 09:27:35 +01:00
Petr Sloup b92565a096 Add raster reprojection tutorial 2015-11-18 09:27:35 +01:00
Petr Sloup 965b88d7c8 Save context state only when it's actually necessary 2015-10-16 16:30:16 +02:00
Petr Sloup d950dada31 Minor type fix 2015-10-16 16:30:16 +02:00
Petr Sloup e49f529fe6 Add typedefs for functions returning tiles/images 2015-10-16 16:30:16 +02:00
Petr Sloup 6f9fa4c12e Minor documentation improvements 2015-10-16 16:30:04 +02:00
Petr Sloup b816128728 Avoid assignment in return statement 2015-10-16 15:46:51 +02:00
Petr Sloup 70021be919 Use lower-case parameter names even for matrices 2015-10-16 15:45:34 +02:00
Petr Sloup 32fa3501df Update tests 2015-10-16 09:28:43 +02:00
Petr Sloup a7cde96056 Simplified wrapX handling
"Unwrap" the coordinates obtained from transformations and utilize wrapX
capabilities of the sources to handle calculations of TileRanges and
unwrapped tile extents.
2015-10-16 09:28:43 +02:00
Petr Sloup 52a7c5e582 Rename some private/local variables to increase readability 2015-10-16 09:28:43 +02:00
Petr Sloup f52f9b6817 Rename ol.RASTER_REPROJ_* constants to full ol.RASTER_REPROJECTION_* 2015-10-16 09:28:43 +02:00
Petr Sloup 9f8ab48f1f Minor improvements based on pull request comments 2015-10-16 09:28:43 +02:00
Petr Sloup 8fb1d1f244 Remove usage of various goog.* functions
goog.isNull, goog.isDefAndNotNull and goog.array.*
2015-10-16 09:28:43 +02:00
Petr Sloup f3d5d16a82 Remove use of goog.isDef 2015-10-16 09:28:43 +02:00
Petr Sloup 783acfa961 Use ol.math.clamp instead of goog.math.clamp 2015-10-16 09:28:43 +02:00
Petr Sloup 3f897cfb79 Minor typo fix 2015-10-16 09:28:43 +02:00
Petr Sloup c6e2c6a16e Add demonstration of layer extent setting to reprojection example 2015-10-16 09:28:43 +02:00
Petr Sloup 6431622881 Use better URL for BNG tiles in reprojection example 2015-10-16 09:28:43 +02:00
Petr Sloup 00a8b4da16 Increase readability of reprojection example
Use map/layer terminology more clearly and clarify checkbox usage
2015-10-16 09:28:43 +02:00
Petr Sloup 0f09607725 Slightly decrease build size when reprojection code is disabled 2015-10-16 09:28:43 +02:00
Petr Sloup 94caa07168 Minor code style, documentation and typo fixes 2015-10-16 09:28:43 +02:00
Petr Sloup 5388f96551 Reproject image sources only if actually needed 2015-10-16 09:28:42 +02:00
Petr Sloup 3353eeb0c3 Fix IE9 test timeouts by using different pixel placeholder
IE9 seems to have occasional problems with decoding
the data protocol url used before (single pixel placeholder).
2015-10-16 09:28:42 +02:00
Petr Sloup 402697c369 Specify crossOrigin in reprojection examples to fix WebGL errors 2015-10-16 09:28:42 +02:00
Petr Sloup 4bcea473eb Fix reprojection-by-code example in IE9 by using JSONP 2015-10-16 09:28:42 +02:00
Petr Sloup 76974a5888 Minor improvements of reprojection examples 2015-10-16 09:28:42 +02:00
Petr Sloup 59bce75d2a Improved documentation 2015-10-16 09:28:42 +02:00
Petr Sloup 7a1533925a Reprojection code refactoring and cleaning 2015-10-16 09:28:42 +02:00
Petr Sloup a2ae2f0f3e Add rendering tests for ol.reproj.Image 2015-10-16 09:28:42 +02:00
Petr Sloup f078a9c935 Add rendering tests for ol.reproj.Tile 2015-10-16 09:28:42 +02:00
Petr Sloup 404fa10bb7 Make resembleCanvas available to tests 2015-10-16 09:28:42 +02:00
Petr Sloup 8f1aab9236 Add tests for ol.source.TileImage 2015-10-16 09:28:42 +02:00
Petr Sloup c899100dab Add tests for ol.reproj.* 2015-10-16 09:28:42 +02:00
Petr Sloup 0c48a560b2 Add reprojection example with proj4 defs loading from EPSG.io 2015-10-16 09:28:42 +02:00
Petr Sloup 690a5f1f90 Add reprojection example for ol.source.ImageStatic 2015-10-16 09:28:42 +02:00
Petr Sloup 87337570e0 Add reprojection example for tiled raster sources 2015-10-16 09:28:42 +02:00
Petr Sloup 7864ed7861 Force subdivision when transformation returns infinite coordinate 2015-10-16 09:28:42 +02:00
Petr Sloup 03c75a8648 Transformation caching during reprojection triangulation
This usually saves around 30-35% of transformation calls.
2015-10-16 09:28:42 +02:00
Petr Sloup 726bcbef83 Alternative reprojection triangulation strategy
The quads are now subdivided more granually (to 2 instead of 4), which
usually leads to reduced number of triangles and higher performance.
2015-10-16 09:28:42 +02:00
Petr Sloup 016df5b902 Minor ol.reproj.Image fixes 2015-10-16 09:28:42 +02:00
Petr Sloup 14e20e23a0 Correctly reproject projections with undefined units 2015-10-16 09:28:42 +02:00
Petr Sloup aad5f94556 Minor type fix in ol.reproj.Image 2015-10-16 09:28:42 +02:00
Petr Sloup 615b54eb67 Use error threshold for image sources reprojection 2015-10-16 09:28:42 +02:00
Petr Sloup fc23a38692 Take target extent into account when ensuring minimal reproj subdivision 2015-10-16 09:28:41 +02:00
Petr Sloup 3b1d72202a Correctly reproject sources in wrappable projection
With extent smaller than the projection extent
2015-10-16 09:28:41 +02:00
Petr Sloup 4c236a64b8 Handle canvas clip antialiasing during reprojection 2015-10-16 09:28:41 +02:00
Petr Sloup 3cc8291df4 Support pixelRatio during reprojection 2015-10-16 09:28:41 +02:00
Petr Sloup c2b21985f4 Add ol.source.TileImage#setTileGridForProjection method 2015-10-16 09:28:41 +02:00
Petr Sloup 168b675191 Add reprojectionErrorThreshold option to the tiled image sources 2015-10-16 09:28:41 +02:00
Petr Sloup ebc1bc0096 Better handling of tilegrids without extent during reprojection
For WMTS source, the tilegrid has no extent, but the projection can
2015-10-16 09:28:41 +02:00
Petr Sloup be6bf00d74 Add defines for certain reprojection constants 2015-10-16 09:28:41 +02:00
Petr Sloup f481070f82 Handle tilegrids without extent during tile reprojection 2015-10-16 09:28:41 +02:00
Petr Sloup 9a460b5f6b Handle cross-browser canvas antialiasing issues during reprojection
By doing strictly 1 drawImage per triangle; triangle overlapping and
using different blending mode.
2015-10-16 09:28:41 +02:00
Petr Sloup 8b38928aad Make rendering of reprojection edges configurable 2015-10-16 09:28:41 +02:00
Petr Sloup 30cd0aa584 Improve reprojection performance
Utilize the numerical shifting during reprojection to easily reduce
complexity of the linear system that needs to be solved.
2015-10-16 09:28:41 +02:00
Petr Sloup 8ab197eba6 Optimize the reprojection by stitching the sources prior to rendering
This solves canvas antialiasing issues and also simplifies the code
handling wrapX in the source projection.
2015-10-16 09:28:41 +02:00
Petr Sloup 6482ccf2f7 Make ol.reproj.Triangulation a class 2015-10-16 09:28:41 +02:00
Petr Sloup 0f408e341f Rename ol.source.Image#getImage implementations to #getImageInternal
This allows for the reprojection to be initialized in the #getImage,
while #getImageInternal is used to obtain the actual data.
2015-10-16 09:28:41 +02:00
Petr Sloup ed1e49045a Allow different source and view projection in image layer renderers
To enable image layer reprojection.
2015-10-16 09:28:41 +02:00
Petr Sloup be0a0de759 Integrate image reprojection with ol.source.Image 2015-10-16 09:28:41 +02:00
Petr Sloup 15575288e0 Add ol.ENABLE_RASTER_REPROJECTION define 2015-10-16 09:28:41 +02:00
Petr Sloup f2f77091ad Handle tile sources without projection
Such sources should never be reprojected (and no additional tilecache or
tilegrid should be created).
2015-10-16 09:28:41 +02:00
Petr Sloup c205323ff2 Reproject correctly when transform returns +-Infinity values 2015-10-16 09:28:41 +02:00
Petr Sloup b0694c1e3b Add projection parameter to ol.source.Tile#expireCache and #useTile
This is required to be able to determine which cache the xyz coordinates
refer to (in case we have more caches).
2015-10-16 09:28:41 +02:00
Petr Sloup e0cfa1951a Add projection parameter to ol.source.Tile#forEachLoadedTile 2015-10-16 09:28:41 +02:00