Recently I found some time again for Marble development, and today Sanjiban and me made some nice progress on vector rendering. This can easily be explained with pictures, so let’s look at an example rendering. Best viewed full size:
Things that are new — to Marble at least — are the rendering of house numbers and the styling of roads with restricted access. House numbers and names are shown on the centroid of the building, and also on building sides if there are entries to the house. Roads which have no public access are drawn in pale red now to indicate that they might not be traversable.
It’s also interesting to compare our OSM vector rendering to the standard OSM image layer (openstreetmap-carto aka mapnik).For an easy comparison, open both images in a tab of your browser (middle mouse button), set them to full size (click on the image) and toggle between the tabs (Ctrl+Tab, Ctrl+Shift+Tab or Ctrl+Number).
Marble’s vector OSM map is designed to look familiar to OpenStreetMap users and therefore shares elements like the general color scheme or icons. We do not want to replicate it though and diverge at several places: Buildings show a nice 3D effect, icons are larger and the colors are more vivid.There’s still some polishing to do on our side, but things are coming together nicely now. Thanks to our software architecture and Qt, all vector rendering improvements are directly available in our Android app Marble Maps as well!
If you’re interested to work on OSM vector rendering, please join the Marble project in KDE Phabricator. We will also be mentors in Google summer of code. If you are a student, please check our GSoC ideas and get in touch with us!