I’ve realized a desktop application based on Qt Mobility for displaying maps and adds some landmarks in real-time (like QGeoMapObject). I've to see the track of some vehicles... I've used the code that can be downloaded here.

To manage the map, I've used a QGeographicsGeoMap object.

I want to have a cache for using my program also without an internet access.

Is it possible?

What is the way to do this?


I'd recommend looking at Marble, an open source (GNU Lesser General Public License (LGPL)) globe visualisation project. I use it for planning my routes in new cities when I'm on the train away from internet access, via the monav offline routing service.

This works fine, because all the places I have visited while online have been cached - I set the hard disk cache size to 1 Gb, allowing the most important data to be downloaded in advance of travel:

cache in Marble

Also, you can download tiles for entire regions if you like:

upload regions

I'm not sure if the code used by Marble is compatible with your program, but imagine the licence would allow you to harness it in your project if it's not for profit. I notice that a version of marble uses Qt for Android, so imagine their approach to caching would be compatible: see "Marble-Qt for the Asus EeePC" here.

Hope this helps and apologies if you've come across Marble's caching capabilities before.

| improve this answer | |
  • Thank you so much for your answer! I've seen in the documentation of Marble and I've found this easy tutorial! – TommasoF Jan 4 '13 at 15:18
  • I update my last comment: By following the tutorial from this page marble.kde.org/dev-intro.php it is easy to create a standalone Qt App and include a Marble viewer from you application. The dimension of the cache is not limited. – TommasoF Jun 17 '14 at 11:04

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.