Adding 3D buildings to Open Streets Maps

3D view of the house at Martinstrasse 6-8

One thing I love with open street maps (OSM), is the level of details in my neighbourhood, even the water fountains are annotated. So I felt it would be difficult to contribute. I then discovered you can annotate trees, but also the 3D shape and colour of buildings. I found mapping these aspects of the are around me interesting, because it forced me to be aware of them: what is that tree? Which houses have which colour?

While trees, hedges, street-lighting and parking spots will display on open street map, colour and 3D information will not. There seemed to have been a lot of activity with 3D information on OSM three years ago, but I only found one active site that shows rich 3D information: , a demo that displays OSM information using Web-GL.

A priori, I would have expected building information to be a standard 3D format like STL or OBJ. This is not the case. Instead, building information is an extension of the 2D base shape of the building, which is just a polygon. You can specify the height, in levels or in meters, the roof shape, the height of the roof (again in levels or meters). You can also override this with a set of Building Parts, basically a set of objects with the same characteristics as a building, but that can hover over the ground.

While this model has the advantage of being compatible with 2D maps, and to allow to quickly get the general shape of the buildings by just adding the elevation, it is really clunky to model 3D buildings: there is no notion of wall, so you cannot draw windows in them, or map some texture, or just define a building with different colours on different walls. This also means you cannot use any 3D tool to model the buildings, or download you own house to 3D print it at a 1:87 scale.

Still, I played around. While I mentioned the F4Map tool above, in theory there are many others tools. In particular the JOSM editor has a promising plugin called Kendzi3D, but it systematically crashes my machine, which is somehow ironic for Java code. The OSM go web-tool works, it has the advantage of dispatching display to various other projects, its own display mode cannot handle roof shapes. The OSM-3D project wants to run Java in my browser (nope), and the OSM2World project would require me to remove system integrity protection. OSM-Buildings works, but only handles building height and roof shape in some limited cases, with no colour.

The main drawback of the F4Map is the update time, even if the tool claims the data has been loaded a few minutes ago, in my experience, it takes typically 24 hours for my changes to actually appear. Still I managed to add the general shape of my house…

3 thoughts on “Adding 3D buildings to Open Streets Maps”

  1. Fun fact: my team also deals with Maps at the Foundation – we fetch data from OSM and update the cached tiles in our system. But, we only do that every 24h, with an aggregate of all the changes during that time, so that we don’t regenerate the same tiles over and over again every time someone adds trees in their neighborhood :)
    I’d expect most tools using OSM to have the same kind of constraint (and probably OSM themselves throttling the update requests…) – if I had to guess, that’d be my guess as for the kind of reasons for the delay in display. Well that, or bad caching

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: