Hi Marc,
If I leave out extent, the COG is displayed on a wrong place. (Should be
Buonos Aires, but is placed in France).
Increasing the extent shows an visual effect, but still causes the OSM
map to be placed on the wrong place.
Meanwhile, I made it work inspired by
https://stackoverflow.com/a/70116989 and
https://codesandbox.io/s/cog-forked-tmswq?file=/main.js
It seems I needed to define the projection using Proj4js and not with OL
directly.
One learning is that apparently COGs cannot be reprojected by OL.
(Please correct me if I am wrong)
Initially I tried to create something similar as here:
https://cholmes.github.io/cog-map/
This app displays COGs in any CRS on WebMercator, BUT it actually uses
the backend service https://tiles.rdnt.io/ for proxying and reprojection.
Best,
Jakob
importGeoTIFFfrom'ol/source/GeoTIFF.js';
importMapfrom'ol/Map.js';
importWebGLTileLayerfrom'ol/layer/WebGLTile.js';
importViewfrom'ol/View.js';
importTileLayerfrom'ol/layer/Tile';
importOSMfrom'ol/source/OSM';
importproj4from"proj4";
import{ register} from"ol/proj/proj4";
import{ fromLonLat} from"ol/proj";
constepsgCode= "EPSG:32721";
proj4.defs(epsgCode,"+proj=utm +zone=21 +south +datum=WGS84 +units=m
+no_defs");
register(proj4);
constcogSource= newGeoTIFF({
sources:[
{
url:'https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/21/H/UB/2021/9/S2B_21HUB_20210915_0_L2A/TCI.tif',
},
],
});
constcogLayer= newWebGLTileLayer({
source:cogSource,
});
newMap({
target:'map',
layers:[
newTileLayer({
source:newOSM()
}),
cogLayer
],
view:newView({
projection:epsgCode,
center:fromLonLat([-58.205,-34.833], epsgCode),
zoom:10,
}),
});
Am 27.05.22 um 10:35 schrieb Marc Jansen:
Hi Jakob,
what happens if you change the extent of the view (leave it out,
configure it to sth. bigger that the extent of the source)?
Just a wild guess.
Best
Marc
Am 27.05.22 um 10:18 schrieb Jakob Miksch:
Dear list,
I am trying to display COGs in OpenLayers. This works well for single
images. However, I would like to add more more layers like a basemap.
But then the view is blocked to the extent of the COG. See my example
below.
Is there a way to overlay a COG on a basemap and still be able to
zoom and pan wherever I want and not being restricted by the extent
of the COG?
best regards,
Jakob
importGeoTIFFfrom'ol/source/GeoTIFF.js';
importMapfrom'ol/Map.js';
importProjectionfrom'ol/proj/Projection.js';
importWebGLTileLayerfrom'ol/layer/WebGLTile.js';
importViewfrom'ol/View.js';
import{getCenter} from'ol/extent.js';
importTileLayerfrom'ol/layer/Tile';
importOSMfrom'ol/source/OSM';
constprojection= newProjection({
code:'EPSG:32721',
units:'m',
});
// metadata from
https://s3.us-west-2.amazonaws.com/sentinel-cogs/sentinel-s2-l2a-cogs/21/H/UB/2021/9/S2B_21HUB_20210915_0_L2A/S2B_21HUB_20210915_0_L2A.json
constsourceExtent= [300000, 6090260, 409760, 6200020];
constcogSource= newGeoTIFF({
sources:[
{
url:'https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/21/H/UB/2021/9/S2B_21HUB_20210915_0_L2A/TCI.tif',
},
],
});
constcogLayer= newWebGLTileLayer({
source:cogSource,
});
newMap({
target:'map',
layers:[
newTileLayer({
source:newOSM()
}),
cogLayer
],
view:newView({
projection:projection,
center:getCenter(sourceExtent),
extent:sourceExtent,
zoom:1,
}),
});
--
Jakob Miksch
Geoinformatiker
meggsimum - Büro für Geoinformatik
Christian Mayer
Schillerstr. 2a | 67112 Mutterstadt
i...@meggsimum.de |www.meggsimum.de
T 06231 - 6298988 |
_______________________________________________
Users mailing list
us...@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/openlayers-users
--
Marc Jansen
— Geschäftsführer —
terrestris GmbH & Co. KG
Kölnstraße 99
53111 Bonn
Tel: +49 (0)228 / 96 28 99 -53
Fax: +49 (0)228 / 96 28 99 -57
Email:jan...@terrestris.de
Web:https://www.terrestris.de
Amtsgericht Bonn, HRA 6835
Komplementärin: terrestris Verwaltungsgesellschaft mbH
vertreten durch: Torsten Brassat, Marc Jansen
Informationen über Ihre gespeicherten Daten finden Sie auf unserer Homepage unter folgendem Link:https://www.terrestris.de/datenschutzerklaerung/
_______________________________________________
Users mailing list
us...@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/openlayers-users
--
Jakob Miksch
Geoinformatiker
meggsimum - Büro für Geoinformatik
Christian Mayer
Schillerstr. 2a | 67112 Mutterstadt
i...@meggsimum.de |www.meggsimum.de
T 06231 - 6298988 |
_______________________________________________
Users mailing list
us...@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/openlayers-users