One of the recurring questions in #marble and the Marble mailing list is
Why does Marble not support Google Maps?
From a technical point of view the answer is simple: Marble does support it (since a few years already). For educational purposes only some examples: If you would clone the googlesat map theme to ~/.local/share/marble/maps/earth/googlesat then a Google Satellite map theme would appear in Marble. And if you would clone the googlemaps repository to ~/.local/share/marble/maps/earth/googlemaps you’d have the vector based Google maps appear.
Now where’s the catch? Legal reasons prevent us from shipping them and also prevent you from using them. Here is an incomplete list of excerpts from the Google Maps/Google Earth APIs Terms of Service that are problematic for their use in Marble (and similarly a lot of other applications which simply seem to ignore that):
- 10.1.1 (g) No Use of Content without a Google Map. One of the killer arguments: We cannot retrieve e.g. a route and display it on the OSM map, or use a reverse geocoding result from Google in a non-Google route result.
- 10.1.1 (h) No Use of Static Maps API(s) outside a Web-Based Application. This one is debatable. Marble is not a web-based application, yet we’re not exactly using the static maps API.
- 10.1.3 (b) No Pre-Fetching, Caching, or Storage of Content. Sorry, that’s one of the great features of Marble which we’re not going to restrict artificially.
- 10.1.3 (c) No Mass Downloads or Bulk Feeds of Content. See above.
- 10.2 (a) No “Wrapping.” The biggest part of Marble is a library intended to be used by various applications. It would wrap the Google services we would use (e.g. map display, routing, reverse geocoding)
- 10.2 (c) No Navigation, Autonomous Vehicle Control, or Enterprise Applications. Another killer argument against using Google services. Marble does real time navigation, route guidance and turn-by-turn route guidance.
Some people argue that a lot of existing applications do not comply with those terms of service without getting into any problem. But seriously… that’s not an argument.
Bottom line is that unless Google changes those terms of service, we’re not going to integrate them in Marble. Fortunately OpenStreetMap provides a great alternative to Google’s services and is nicely integrated in Marble already. Just like many more map themes that are not shipped by default for space or legal reasons. Many of the former ones can be installed from within Marble however: Just use File => Download Maps to install additional map themes.