[Qgis-user] Howto: load ArcGIS "mapserver" raster layers

pcreso at pcreso.com pcreso at pcreso.com
Thu Aug 23 19:05:10 PDT 2012


Hi Alistair,

Listed at http://www.niwa.co.nz/ei/feeds/report there are a few Arc Server raster layers, they are ESRI Mapserver restful layers, but deliver OGC WMS.

Such layers are as available as any other WMS data source, eg: 
http://boi.arc.niwa.co.nz/arcgis/services/climate/MedianAnnualTotalRainfall/MapServer/WMSServer

I figure what you are describing is a way to access the ESRI native (as opposed to OGC compliant) services in QGIS using GDAL?


Cheers,

   Brent Wood

--- On Fri, 8/24/12, Alister Hood <Alister.Hood at synergine.com> wrote:

From: Alister Hood <Alister.Hood at synergine.com>
Subject: [Qgis-user] Howto: load ArcGIS "mapserver" raster layers
To: "qgis-user at lists.osgeo.org" <qgis-user at lists.osgeo.org>
Date: Friday, August 24, 2012, 12:43 PM

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/MapServer?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
Qgis-user at lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-user
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/qgis-user/attachments/20120823/e7c2f3f9/attachment.html>


More information about the Qgis-user mailing list