Suite

Afficher OSGB (EPSG : 27700) Tuile ArcGIS MapServer dans OpenLayers 3

Afficher OSGB (EPSG : 27700) Tuile ArcGIS MapServer dans OpenLayers 3


J'essaie d'ajouter ce service de carte ArcGIS OS Open Background dans OpenLayers 3.7.0.

http://tiles.arcgis.com/tiles/qHLhLQrcvEnxjtPr/arcgis/rest/services/OS_Open_Background_2/MapServer

J'ai défini la projection et les résolutions de ce service dans ma configuration OL comme ceci :

proj4.defs('EPSG:27700', '+proj=tmerc +lat_0=49 +lon_0=-2 +k=0.9996012717 +x_0=400000 +y_0=-100000 +ellps=airy +datum=OSGB36 +units=m + no_defs'); ol.proj.get("EPSG:27700").setExtent([0, 0, 700000, 1300000]); var layerOSGBtiles = new ol.layer.Tile({ source : new ol.source.TileArcGISRest({ url : 'http://tiles.arcgis.com/tiles/qHLhLQrcvEnxjtPr/arcgis/rest/services/OS_Open_Background_2/MapServer', projection : 'EPSG:27700' }) }); var view = new ol.View({ projection : 'EPSG:27700', centre : [300000, 500000], étendue : [0, 0, 700000, 1300000], résolutions : [132291.9312505292, 66145.9656252646, 26458.386250105836, 19843.789687579378, 13229.193125052918, 6614.596562526459, 2645.8386250105837, 1322.9193125052918, 661.4596562526459, 264.5838625010584, 132.2919312505292, 66.1459656252646, 26.458386250105836, 19.843789687579378, 13.229193125052918, 6.6145965582596; map = new ol.Map({ cible : 'map', contrôles : [], calques : [layerOSGBtiles], vue : vue });

Jusqu'à présent, je n'ai pas pu obtenir d'amour de TileArcGISRest. Toute aide est la bienvenue.

Voici un JSFiddle qui montre les bonnes coordonnées et une géométrie de contrôle pour le contour des îles britanniques.


Les services de carte en tuiles ArcGIS peuvent être ajoutés à l'aide du constructeur ol.source.XYZ, le déposer pour layerOSGBTiles affiche certaines tuiles. Comme les services de carte OSGB utilisent un schéma de tuilage différent, cela doit également être spécifié à l'aide d'un tileGrid.

résolutions var = [132291,9312505292, 66145,9656252646, 26458,386250105836, 19843,789687579378, 13229,193125052918, 6614,596562526459, 2645,8386250105837, 1322,9193125052918, 661,4596562526459, 264,5838625010584, 132,2919312505292, 66,1459656252646, 26,458386250105836, 19,843789687579378, 13,229193125052918, 6,614596562526459, 2,6458386250105836, 1,3229193125052918, ,6614596562526459]; var tilegrid = new ol.tilegrid.TileGrid({ resolutions: resolutions, origin: [-5220400,4470200] }) var layerOSGBtiles = new ol.layer.Tile({ source: new ol.source.XYZ({ url: 'http ://tiles.arcgis.com/tiles/qHLhLQrcvEnxjtPr/arcgis/rest/services/OS_Open_Background_2/MapServer/tile/{z}/{y}/{x}', projection : 'EPSG:27700', tileGrid : tilegrid } ) });

Voir la vidéo: Create WebMap Using ArcGIS Javascript API Part 2 Map and View