[Marble-devel] Marbel on Windows

Christophe Leske info at multimedial.de
Tue Jun 29 12:18:43 CEST 2010


Hi there,

i am aware that Windows is not your primary platform, yet there are some 
things that should better be documented to preserve other people a lot 
of grief and frustration...
Windows 7  and eventtually Vista introduced a new structure in the 
filesystem where applications could store their settings. Although 
already used for Windows XP, Vista and Windows 7 enforced more user 
restrictions by the means of the new UAC policy.

In short, this means for Marble that you won't find things were you 
would expect them.

As an example:
usually, the marble application is being installed in

C:\Program Files\marble

Its cache files and other stuff may be found around it in the respective 
subfolders like "data/maps" and "data/placemarks", thus

C:\Program Files\marble\data\maps
C:\Program Files\marble\data\placemarks
... etc.

I worked on creating tiles for Marble based on the NaturalEarth map set 
offered at http://www.naturalearth.com. I wrote myself a tile cutting 
application (not ready for prime time, but if anyone is interested, i am 
willing to share), which creates the different levels for a given map. 
Accordingg to Torsten Rahn's blog, you can simply install a so-called 
"installmap" which is a huge bitmap of the map to be used, which you 
specify in the DGML file, and Marble is ought to create the possible 
levels from it (=http://www.kdedevelopers.org/node/3269)


Problem is that the newly created tiles for the levels are not appearing 
where I would expect them, namely in

"C:\Program Files\marble\data\maps\earth\NaturalEarth" for example. So I 
thought the feature was broken, yet the map did appear in Marble.

The issue is that the application directory on Windows now has 
administrator rights so that the application cannot write to it. What it 
does instead is to create the maps in

"C:\Users\USERNAME\AppData\Roaming\.marble"
(for Vista and Windows 7 that should be)


Same applies for the citieplacemarks.cache file, which I wanted to 
extend with new entries (by the way, anyone up for the format of 
"cities.txt"? I see that it is probably a tab delimited file with 
entries for original name, plus additional names, plus links to 
wikipedia and so on?).
Again according to postings from Torsten on this list and files in the 
SVN, Marble should be able to recreate the "citiesplacemarks.cache" file 
(which is a QStream file of the KML?) by just getting a new KML file.

So if you would be to extend the cities.txt file, you would delete the 
old "citiesplacemarks.cache", recreate a new KML file using the asc2kml 
file (or create a new KML manually), and let marble do the rest.
This also seemed to fail, until today I found that there is also a 
directory for this being created, which is ...

C:\Users\USERNAME\AppData\Roaming\.marble\data\placemarks

Unless you delete the cache file in there AND in the marble install 
directory (C:\Program Files\marble\data\placemarks), you won't be able 
to recreate a new city-database for use in Marble.


In short:
the features do work both, tile creation as well as cache file 
regeneration, the files are just in new and somewhat weird places and 
may get overshadowed by already installed files in the original location.
There might still be a bug in cutting the tiles from an installmap in 
marble though, it creates one level less than it could according to the 
size of the map...

If anyone is interested in getting the tileset for the NaturalEarth map, 
please let me know and I will put it up. I have individual tiles up to 
level 3 though created by my tool, the tiles created by Marble itself 
are not optimal due to the bug described above.

Greets,

Christophe Leske
multimedial.de

PROFILE: www.linkedin.com/in/multimedial
----------------------------------------
www.multimedial.de - info at multimedial.de
Vogteistrasse 19 - 51647 Gummersbach
++ 49 (0) 22 61 - 30 21 59-0
----------------------------------------



More information about the Marble-devel mailing list