[Marble-devel] OSM looking sharp

Bernhard Beschow bbeschow at cs.tu-berlin.de
Sat Sep 5 10:47:30 CEST 2009


Hi marblers,

I'm Bernhard from GCDS and I've (finally!) managed to polish and publish my discrete zoom patch. Have a look at my git repository under [1]. You can access various versions of the patch under the "sharp-osm" branch there.

The first commit was the initial approach from GCDS, where I figured out the slider positions for each zoom level by trial and error. When interpolation is turned off, this works quiet okay. The second patch is a bit more accurate about the earth radius. Instead of the slider positions, it reads the radius values from the dgml file and calculates the slider positions from these. In the third patch, even the radius values are calculated automatically, dropping the need for the radius tags completely. The third patch also fixes the zoom-out button, which didn't work in the previous patches.

Notice also the other branches, especially the "cleanup" branch and the "bugfix" branch. The improved-scrolling branch contains an experiment where the map can be moved using two fingers via touchpad (if the driver supports multi-touch). The custom-storage plus the restricted-maps branch add support for google map tiles.

That's the work I've done so far on Marble. Now I'm looking forward to your comments! ;-) Please also comment on the other branches, especially on the cleanup and the bugfix branch and let me know which patches I can apply. Thanks!

Although OSM looks quiet sharp now, there are still some minor artifacts. Probably due to rounding errors, some lines get duplicated while others get skipped. For this reason, and for performance reasons, I propose optimized code paths for cases where the source projection equals the target projection. The idea would be that the tiles knew their source projection and had (virtual) methods for each target projection. Are there any such plans already? How could this idea be implemented when interpolation across tiles should still work?

Greetings,
Bernhard

[1] http://github.com/shentok/marble/tree/sharp-osm


More information about the Marble-devel mailing list