Wednesday, June 1, 2011

Mashup WMS in GeoCommons

WMS, whether dying or not, still has its place in the world of GIS. Given that many organizations have published their spatial data through WMS, it is a very important data source especially in the era of cloud GIS today. GeoCommon’s is one of the first cloud GIS platform that allows users to add WMS as one type of data sources which can mashup on the base map. Follow the blog post “Adding WMS and Tiles in GeoCommons and GeoIQ” I gave it a try using one public WMS called “StatesCitiesRivers_USA”  from ArcGIS Online sample server and another from OSGeo.


After log in, select “Make a Map” and pick whatever base map as you like, which in my case is OSM.

image

Click “+Add” at top-right corner, and select “Upload” tab and “Add a URL Link” tab, and finally select “Web Map Service” in the format dropdown list, and type in the url to WMS’s capabilities files (the url must point to the capabilities XML file either static or dynamic).

image

Since ArcGIS Server supports WMS 1.3.0, so I tried this highest version of capabilities file, but unfortunate it doesn’t display the WMS layers on top of base layer although it is able to get the list of layers from that WMS.

Next I switched to version 1.1.1, which actually worked for me.

image

For the WMS overlay in GeoCommons, users are able to turn and off individual or all layers, and also change the opacity of the whole WMS overlay which obviously happens at client side (because WMS itself doesn’t support opacity). But none of other style or filter options are available to WMS layer. What is also observed is that WMS map is requested from server as multiple tiles instead of a single map image, which may be because GeoCommons platform currently doesn’t support any dynamic mapping service like WMS. Unless those tiles from WMS are cached at client-side, it’s not quite efficient.

One big problem I see, which is also quite obvious from the screenshot , is that GeoCommons requests WMS map in EPSG:4326 even though the base map is Web Mercator (EPSG:3857 or EPSG":900913 for most open source GIS community). This is caused by the fact that the public ArcGIS Server WMS service doesn’t list EPSG:900913 as one of the supported SRS.

I then added the public WMS from OSGeo, which supports EPSG:900913, which is side proof of what happened to ArcGIS Online Sample Server.

image

Since ArcGIS Server WMS doesn’t support EPSG:900913 (not in the way when it’s named as 900913) at this point, the only workaround is to choose one of the base map marked as (4326).

image 

Now it overlays perfectly.

Conclusion

There are still a lot of data source published as WMS, and in my opinion there will only be more in the near future. So supporting WMS will give huge benefit to today’s Cloud GIS providers. It will be really nice to see similar WMS support in other major Cloud GIS player like ArcGIS.com, Google Maps and so on.

Tuesday, May 31, 2011

World-wide routing, MapQuest + OpenStreetMap

MapQuest was THE first and only web routing service I relied on. But once up on a time, I almost forgot its existence because of Google Maps, Yahoo, and even others. Recently MapQuest seems to be coming back really strong especially with its Open Initiative and integration with OpenStreetMap data. One of the most amazing things I have seen is this Dublin-to-Shanghai world-wide routing:



Although I don’t think it has much practical use to most people except for professional backpacker traveler, it is still amazing and seriously no one else can do it.