OpenStreetMap @ Geodan Research

Influenced by Martijn, we use quite some OpenStreetMap data in various projects. We use it more and more as background maps for our web-applications, but also the raw data for analysis in projects like Tripod. We created a short movie to show off various strengths of OpenStreetMap and how/why we use it at Geodan Research.

httpvhd://www.youtube.com/watch?v=2sQs211GjAE

INSPIRE Geographical Names viewer

In the INSPIRE framework we are working on the ESDIN project and are using the EuroGeoNames (EGN) project as an implementation of ESDIN. INSPIRE is a big thing within the GIS world in Europe and loads of documents have been written so far.

We’re involved in both ESDIN and EGN and we decided to use the latter as a trial for the first. Together with our partners we’ve setup a series of servers to fulfill the needs of the projects. The main standard used is the latest WFS and GML versions, which have the annoying disadvantage that there are few clients available.

To be able to show nicely (as in not an XML file) that everything worked I was asked to build a webclient which would show a map and the data from the EGN service for that area. I figured that this was once again a good reason to look into the latest developments for OpenLayers. I quickly discovered that the released version (2.7) doesn’t support WFS 1.1.0 so I asked on the mailinglist if people already tried to implement it (and if not, pointers how to do so). Luckily people already did the work and created various patches for the support. (thanks tschaub, bartvde and others)

The most important patch is the one which implements protocols for WFS: ticket 1648 and its wfs.patch The main disadvantage of this patch was in my case that it tried to minimise the number of requests to the WFS server (which in general is a good thing). It requests all the features which are within twice the size of the viewport and it doesn’t request new features when you zoom in. However our server is limited to 10 features per request this results in very interesting behavior. For a starter all the 10 feature could be outside your viewport and also very funny is that shown feature might dissappear when you move the page too much (it requests new features in that case and the first 10 might be outside the viewport). A second patch, on ticket 1830, provided a more aggressive feature update: each zoom action triggers a new request and I set the request-boundingbox-ratio to 1, meaning only those feature within the viewport are requested. This means that every action triggers a new request, which is heavy on the server.

However this is just a reference implementation and hopefully for actual implementations they remove the 10 feature limit. For those interested the reference implementation can be found at http://research.geodan.nl/egn

Surface controlled by real objects

We’ve been experimenting with controlling applications on the Surface with tangible objects. Our first result is using a compass to change the orientation of the map. It uses the fiducial-tags which come with the Surface. If you place the compass on the Surface it recognizes it as a control device and takes the orientation from it and applies it to the NASA worldwind globe.

httpvhd://www.youtube.com/watch?v=AEyioTtPsWk