Hi everyone, Just a quick follow up, as I've learned it is actually even easier than I described:
1. You can automatically generate a service description xml like this: gdal_translate "http://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer?f=json&pretty=true" ESRI_world_imagery.xml -of WMS 2. You don't actually need a service description xml. You can run this in the QGIS Python console: qgis.utils.iface.addRasterLayer("http://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer?f=json&pretty=true","raster") I've now created a wiki page about this. > -----Original Message----- > From: Alister Hood > Sent: Friday, 24 August 2012 12:44 p.m. > To: '[email protected]' > Subject: Howto: load ArcGIS "mapserver" raster layers > > Hi everyone, > I don't think anyone around here has ever explained how to add raster > ArcGIS "mapserver" layers from servers which provide a REST interface. As > far as I know, there is no way to just load them with a url directly from > the QGIS gui, but they can be handled by the GDAL WMS driver, and thus can > be loaded in QGIS. > > Firstly (and the most difficult part) you need to find the URL for the > REST service for your layer. E.g. you might want to use a layer that is > available in the ESRI "Maps for Personal Use" web map at: > http://www.arcgis.com/home/webmap/viewer.html?useExisting=1 > Hopefully with a little googling you will be able to find the address > where you can browse the "ArcGIS services directory" of your favourite > ArcGIS server. In this case it is: > http://server.arcgisonline.com/ArcGIS/rest/services/ > > Find the layer that you are after, and now you have two options: > > 1. You can create a GDAL "service description" XML file, and open it with > QGIS. > E.g. try this file: > http://www.gdal.org/frmt_wms_arcgis_mapserver_tms.xml > Or e.g. save the XML code pasted at > http://trac.osgeo.org/mapserver/ticket/3804 and try it. > > 2. You can create a .vrt file (which requires less thinking), and open > that with QGIS. > E.g. find the raster layer you want in the ArcGIS services directory, and > get the URL for its REST interface, which should be at the bottom of the > page, under "Supported Interfaces". The gdal utilities can just use this > URL (since GDAL 1.9), so you can simply create a .vrt like this: > gdalbuildvrt test.vrt > "http://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServ > er?f=json&pretty=true" > > Of course, you will need to check the restrictions on what you are legally > allowed to do with any particular layer. > > And if you are wondering: as far as I know there is currently no way to > load _vector_ ArcGIS "mapserver" layers, or ArcGIS "globeserver" or > "featureserver" layers (except for manually writing a query URL. i.e. you > can't use their REST services). > > Regards, > Alister > _______________________________________________ Qgis-user mailing list [email protected] http://lists.osgeo.org/mailman/listinfo/qgis-user
