Marble 1.4

The first release of Marble in the 1.4 series, Marble 1.4.0, was released on August 1st, 2012 alongside the KDE software compilation. Further 1.4.x versions follow the KDE 4.9.x releases. In the good tradition of recent releases, we have collected those changes directly visible to the user. Please enjoy looking over the new and noteworthy.

User Interface Enhancements

Some gradual improvements to the user interface make Marble more pleasant to use on the Desktop. The search bar has been moved from the Navigation tab to the main toolbar for easier access. Suggestions come up while you type.

Fonts used in maps now use an outline effect for better readability. Your bookmarks are now also shown in the map (unless you deactivate that in the Bookmarks menu).

Compare the two screenshots below — showing Marble 1.3 on top and Marble 1.4 below — to see the differences.

FlightGear Support

Marble can now show the position of an airplane simulated by FlightGear.

Routing Extensions

A number of gradual improvements in the routing area lead to an overall enhanced user experience. Just like it was possible in the mobile versions before, Marble's desktop version now let's you open and save routes as KML files. New turn instruction types and voice commands are supported and tasks like reversing or clearing the route got their own buttons to reduce the number of clicks needed to accomplish common tasks. Support for MapQuest and the Open Source Routing Machine (OSRM) has been added. Just like the existing five routing backends they are queried (if enabled) in the background to deliver alternative routes you can choose from. Both OSRM and MapQuest support worldwide routing; OSRM is known for speedy results thanks to its underlying fast routing algorithm (contraction hierarchies), while MapQuest carefully analyzes your route to generate versatile turn directions.

Postal Codes Online Service

With the paperless office still to arrive snail mail plays an ever important role in daily life. Part of the addressing scheme in nearly all countries worldwide are postal codes (also known as post codes, ZIP codes or PIN codes). Each postal code usually covers a certain geographical area. Marble can now help you visualizing these areas and identifying their spatial relationship once you activate the postal code plugin. It was developed by Valery Kharitonov during Google Code-In 2011 to join Marble's list of online services.

Use the postal code plugin to show local postal codes on top of any map theme.

Basic ESRI Shapefile Support

Now Marble sports initial support for loading ESRI Shapefile polygons. This is done via a dedicated file loading plugin. In order to make use of this feature the Marble compile needs to link against libshp (http://shapelib.maptools.org). Note that at the current point there is no styling done.

Further Changes

Another nifty addition to the latest version of Marble is support for the logfiles of the TangoGPS application.

Factsheet

There's a factsheet available that gives an overview for the latest full feature set.

Marble 1.3

Marble 1.3.0 was released on January 25th, 2012 as part of the KDE 4.8 release. See the Download section for Marble packages. In the good tradition of recent releases, we have collected those changes directly visible to the user. Please enjoy looking over the new and noteworthy:

Elevation Profiles

Estimating the incline is important to hikers and bikers when planning a route. Marble's new elevation profile shows the height profile of any route worldwide in an interactive info box. After activating the Elevation Profile info box in Marble's menu, height profiles are automatically displayed and updated as you change the route. This feature was developed by Niko Sams and Florian Eßer. It is available in all Marble versions (Desktop and Mobile).

Do you like steep routes? Or rather avoid them? Marble's new elevation profile will help you in either case.

Satellites - Earth Seen from Space

Did you ever wonder how position tracking works in Marble? The answer, as you may already know, is GPS, the Global Positioning System. One of its core parts are satellites traveling around the earth. You might be interested where those are, since their position highly influences the accuracy of your estimated current position. Guillaume Martres helps answering that question: Activate the Satellites Online Service and Marble shows you many of the artificial satellites. You can configure which satellite types are visible (like GPS or weather related ones), show their orbit and even select any of them to attend in a virtual flight!

This feature was developed during an ESA SOCIS project, the first Summer of Code in Space offered this year by the European Space Agency (ESA). We'd like to thank both Guillaume for his excellent work and the ESA for offering us the chance to be one of the mentoring organizations. Satellites can be viewed in Marble's Desktop versions and in Marble Touch on the Nokia N9/N950.

Marble can now display satellites from many different categories, show their orbits and even track them.

Plasma Runner Integration

KRunner, the "Alt+F2" tool of Plasma, helps searching and launching files and applications. Thanks to Friedrich Kossebau it is now aware of Marble and can open its bookmarks and coordinates. So next time you stumble upon some coordinates on a website or get an invitation to a party by email, just paste the coordinates in krunner and view the place in Marble.

Open your Marble bookmarks and any coordinates from krunner.

Extended OpenStreetMap Vector Rendering

Similar to how the Wikipedia community gathered an incredible amount of knowledge outperforming commercial encyclopedias, the OpenStreetMap contributors are busy mapping each and every part of the planet to create the data for the many OpenStreetMap based maps. Marble integrated them early (e.g. Mapnik, Open Cycle Map, Hike & Bike Map, Osmarender) in the popular server based tiling schemes where the map consists of many small images placed next to each other similar to a puzzle. This approach has several advantages, but customizations of the final map are hardly doable. Moreover the images for larger regions require a huge amount of disk space which makes offline usage difficult. While this is often not an issue for desktop computers, things change for mobile devices. And since we plan to bring Marble to the devices you may be using today or tomorrow, we are working on OpenStreetMap vector rendering support that needs little disk space, little computational effort and can be customized to the context you use it in (like motorcar navigation or hiking).

Towards this goal Konstantin Oblaukhov made great progress during his Google Summer of Code project. Marble can now open .osm files and show a huge amount of the elements they contain.

Many OpenStreetMap elements can now be imported and rendered by Marble on street level.

Of course we plan to continue working on the OpenStreetMap vector rendering support such that future Marble versions improve the rendering on different zoom levels, can be customized and download the data automatically from KDE servers. Stay tuned.

Marble Touch - Marble on the Nokia N9/N950

Marble's first end-user ready mobile version made its debut on the Nokia N900 in 2010. Aiming to create a more fluid and fun to use predecessor, we have been working on Marble Touch, a mobile version of Marble that is based on new Qt technologies (Qt Quick and Qt Components) and runs on the Nokia N9/N950. A prominent change is the introduction of activities which optimize the user interface towards common tasks like searching or routing.

Marble Touch on the Nokia N950 in the Routing activity.

Please note that the initial version 1.3.0 of Marble Touch does not include all features the N900 version of Marble offers. We do plan however to add these and other features gradually in monthly feature releases.

Update:Marble Touch is now available in the Nokia Store.

Marble Touch runs on the Nokia N9/N950. Versions for Plasma Active and Android are planned for the future.

Even though Marble Touch is deemed to be the predecessor of the Maemo version, we still maintain the wide-spread N900 version, which is released in version 1.3 in parallel. Future plans for Marble Touch include optimizations for tablet devices. Thanks to the usage of Qt Components and thanks to the Plasma Active team working on compatible Plasma Active Components, Marble Touch on Plasma Active will follow soon. A version for Android is planned as well.

And More ...

  • New Maps for Download are available: OpenStreetMap themes, historic maps and maps for other planets, most of them created by students during Google Code-In. You can install them immediately using the Get New Maps feature available from Marble's File menu or the Preferences page in Marble Touch.
  • The number of voice navigation speakers has risen considerably, so chances are high you're able to listen to Marble giving you navigation instructions in your native language. Check out the Voice Guidance Speakers website to see (and hear) them all.
  • Your virtual globe now behaves even more like a desktop globe thanks to kinetic spinning implemented by Ariya Hidayat. Watch e.g. the Satellites screencast above to see it in action (compare the behavior of the mouse to the movement of the globe).
  • Two new GPS related info boxes have been added. Just like other info boxes, they can be enabled in the View / Info Boxes menu.
  • Support for file formats has been modularized; parsing is now done in threaded runners. Developers can perform routing tasks from the library.
  • As usual, many bugfixes, performance improvements, enhancements and refactorings under the hood have been done in order to keep our code in best shape ;-) 26 developers made 1031 commits, adding 66,291 and removing 55,948 lines of code. Marble in KDE 4.8 now measures 99,489 source lines of code in total, 13,544 more than in KDE 4.7 (generated using David A. Wheeler's 'SLOCCount').

Factsheet

There's a factsheet available that gives an overview for the latest full feature set.

Visual ChangeLog: Marble 1.2

Marble 1.2 was released on July 27th, 2011 as part of the KDE 4.7 release. During the last half year since KDE 4.6 the Marble Team has been extremely productive and had a stand-alone release in the meantime (Marble 1.1). For our KDE users we'll include the features of Marble 1.1 at the bottom of this changelog.

To celebrate this release we've compiled some fact sheets for the Marble Virtual Globe:

In the good tradition of recent releases, we have collected those changes directly visible to the user. Please enjoy looking over the new and noteworthy:

Bookmark Manager

Possibly you collected a lot of bookmarks of your favorite places with Marble 1.0 or 1.1. Did you spell one incorrectly? Want to rename a bookmark or move it to another folder? The new bookmark manager let's you do exactly that. Additionally you can import and export your bookmark collection in .kml file format. The bookmark manager is available both in Marble's desktop and mobile version.

Tidy up your bookmark collection with Marble's new bookmark manager.
Tidy up your bookmark collection with Marble's new bookmark manager.

Marble Voice Samples for Voice Navigation

The Voice of Marble contest logo

Nothing beats a friendly human co-driver guiding you on your way. If there's none around, you can have Marble try to imitate one with our new set of high quality speakers for voice navigation. All speakers' voice samples were contributed by the community in the Voice of Marble contest. A huge thank you to everyone involved!

Marble's mobile version ships Bugsbane as the default speaker. For space reasons not all speaker files are included in the packages, but further files are available for download. The speaker files are not only available in Marble's format, but also for TomTom devices.

Please note that even though the contest (which had cool Marble T-shirts as prizes) is now finished, you can still contribute further voice samples. Given that we don't yet cover all of the nearly 50 languages KDE is available in, we encourage all non-english speakers to contribute further speaker files in their native language. Please follow our detailed instructions on how to create speaker files -- and spread the word among your friends!

Offline Search

Offline search extends the existing city search by addresses (streets and house numbers) and points of interest (supermarkets, tourist attractions, restaurants, hotels, train stations and much more). This feature is a natural extension of our offline routing feature, enabling you to use addresses and points of interest as routing targets without the need of an Internet connection. For your convenience the data needed is packaged with the Monav offline routing maps, so installing a country-level offline routing map (or upgrading it) will include the data for offline address search in that country.

Of course the offline search does also work in Marble's mobile version on the Nokia N900. Further instructions and some tips and tricks to get the most out of it can be found in a Userbase article.

Offline POI search on the Nokia N900.

Performance Improvements

With this release Marble is faster than ever: Several major and minor performance tweaks have been made. Some of them make the flat mercator projection much faster in order to optimize for OpenStreetMap browsing on the Nokia N900. The introduction of threaded texture frame calculation dramatically improves speed on computers with multiple CPU cores. This results in a smoother experience on a desktop computer as well. Another bottleneck in prior Marble releases affected placemarks: Placemark labels (e.g. on the "Atlas" or "Satellite" map) get rendered much faster during high zoom levels now. And we have also worked on improving launch time so that Marble starts quicker now.

Note that good performance also relies on the availability of good graphics drivers on your computer system.

Sharp Texture Mode

Marble uses ready-made bitmap graphics for visualization of OpenStreetMap data. During zooming and reprojection this approach results in a decreased image quality which makes text labels appear fuzzy at times. With Marble 1.2 the user can use the "+" and "-" key to zoom in discrete zoom-steps which deliver crisp and sharp texture display.

In future releases we plan to introduce vector graphics to have crisp and fast visualization at all times.

Position detection via Qt Mobility

With Marble 1.2 we introduce some optional support for the Qt Mobility framework: Qt Mobility is a collection of APIs and frameworks which are mostly targeted at mobile usage. Among other features Qt Mobility has some means to determine the position of the user. With this release Marble can make use of this position detection. This is especially interesting for Nokia- and MeeGo platforms which have GPS built-in: Here Marble can query the position information as provided by the native framework.

But in general Qt Mobility is not a strict requirement: Marble by default still works well with other means of position detection (such as gpsd or GeoClue) or even runs without these.

Improved Map Creation Wizard and Map Sharing

Marble provides a variety of map themes out of the box: Choose between topographic maps, satellite maps, street maps, educational maps, historical maps and more. Even maps of other planets are provided. For space reasons some of them are provided via the 'Get New Maps' feature that provides a convenient installation with just a few clicks.

Not all possible maps can be provided, however. Custom map themes can be created by users in Marble's own .dgml file format. Getting started with .dgml file creation was not too easy until now. That's a gap Marble's new map creation wizard fills out: It guides you through the process of creating a new map theme, queries needed information and sets up a fully functional map theme for you that instantly works in Marble. You can even share your map theme with other users with the built-in upload feature.

The map creation wizard supports three different kinds of map themes: Those consisting of one large source image showing the world, those accessible from tile servers (e.g. OpenStreetMap, Google Maps, Ovi Maps) and those accessible from WMS servers. Further information is available in a KDE Userbase tutorial.

We ship the map creation wizard as a technical preview. The map creation wizard in Marble 1.2 provides improved usability and additional features that could not be introduced in Marble 1.1 while keeping the library binary compatible at the same time.

We'd like to thank the openDesktop.org team for providing storage space for uploaded maps.

Marble's new map wizard in action
The groundwater map shown in the screenshot has been created with the help of Marble's new map wizard (foreground). Map data source: WHYMAP, (C) BGR Hannover and UNESCO Paris.

Earthquakes Online Service

(Marble 1.1)
Recent earthquakes being displayed in Marble
Recent earthquakes being displayed in Marble

The earthquakes plugin joins Marble's set of online services. It displays earthquakes which occurred in a given time span. Different colors indicate the magnitude of earthquakes. Please note that only historic earthquakes are shown; currently there are no plans to integrate real-time data from earthquake warning systems.

This feature has been completed in January already, so its appearance in this release is not related to the recent tragic incidents in Japan.

Open Desktop Online Service

(Marble 1.1)
The nearby Open Desktop community shows up in Marble
The nearby Open Desktop community shows up in Marble

OpenDesktop.org is one of the biggest online communities, social networks and portals for the free desktop movement in the world where developers, artists and users can share applications, tools, wallpapers, sounds, icons, themes and other artwork and stuff for the open desktop. Would you like to get to know your local OpenDesktop.org community? Just activate the Open Desktop online service in Marble and people around you will show up on the map.

Extended Plugin Configuration

(Marble 1.1)

Many plugins now let you change their behavior and appearance: Choose a different crosshairs icon, show the ratio scale in the scalebar, change the compass or show a GPS trail. Each info box can now be hidden or locked with a context menu. These changes are especially useful for users of applications embedding Marble.

Extended Plugin Configuration
Most plugins in Marble now allow advanced users to tweak the plugin as they prefer.

Map Editing

(Marble 1.1)
External OpenStreetMap editor selection
External OpenStreetMap editor selection

Did you spot a wrong or missing detail in OpenStreetMap? The wikipedia-like approach of editing the OpenStreetMap by community members makes you the best one to fix it instantly. Marble's KDE version simplifies this process now just like the Qt version did in Marble 1.0: Just use the Edit Map button to open the currently visible map region in your favorite external editor. Supported are Potlach (a web-browser based editor), Merkaartor and JOSM.

Voice Navigation

(Marble 1.1)
Voice navigation configuration on the Nokia N900
Voice navigation configuration on the Nokia N900

Marble's mobile version running on the Nokia N900 now sports voice navigation in a preview version. You can choose between sound output (turn points are announced with a sound) and speakers. We don't ship any speaker with our packages, but you can use TomTom voices: Download one of the free ones (some websites offer them for personal use), convert it with our web frontend and copy it to your N900. A KDE Userbase tutorial has all the details you need.

And more ...

There is a special version of Marble that doesn't require the KDE framework (it technically only depends on the Qt library). This version is commonly used for our Windows, Mac and Nokia N900 (Maemo and MeeGo) packages.

Marble on the Nokia N900 now uses stackable windows for an improved user interface. Other parts of the user interface have been polished as well.

Visual Changelog: Marble 1.1

Marble 1.1 was released on April 15th, 2011. This release is special: With many new features being developed during Google Code-in (GCI) we decided to make an early release between the usual ones synchronized with the other KDE applications. The Marble library released alongside is binary compatible with the one shipped with Marble 1.0.

To celebrate this release we've compiled some fact sheets for the Marble Virtual Globe:

In the good tradition of recent releases, we have collected those changes directly visible to the user. Please enjoy looking over the new and noteworthy:

Map Creation Wizard and Map Sharing

Marble provides a variety of map themes out of the box: Choose between topographic maps, satellite maps, street maps, educational maps, historical maps and more. Even maps of other planets are provided. For space reasons some of them are provided via the 'Get New Maps' feature that provides a convenient installation with just a few clicks.

Not all possible maps can be provided, however. Custom map themes can be created by users in Marble's own .dgml file format. Getting started with .dgml file creation was not too easy until now. That's a gap Marble's new map creation wizard fills out: It guides you through the process of creating a new map theme, queries needed information and sets up a fully functional map theme for you that instantly works in Marble. You can even share your map theme with other users with the built-in upload feature.

The map creation wizard supports three different kinds of map themes: Those consisting of one large source image showing the world, those accessible from tile servers (e.g. OpenStreetMap, Google Maps, Ovi Maps) and those accessible from WMS servers. Further information is available in a KDE Userbase tutorial.

We ship the map creation wizard as a technical preview. The map creation wizard in Marble 1.2 provides improved usability and additional features that could not be introduced in Marble 1.1 while keeping the library binary compatible at the same time.

We'd like to thank the openDesktop.org team for providing storage space for uploaded maps.

Marble's new map wizard in action
The groundwater map shown in the screenshot has been created with the help of Marble's new map wizard (foreground). Map data source: WHYMAP, (C) BGR Hannover and UNESCO Paris.

Earthquakes Online Service

Recent earthquakes being displayed in Marble
Recent earthquakes being displayed in Marble

The earthquakes plugin joins Marble's set of online services. It displays earthquakes which occurred in a given time span. Different colors indicate the magnitude of earthquakes. Please note that only historic earthquakes are shown; currently there are no plans to integrate real-time data from earthquake warning systems.

This feature has been completed in January already, so its appearance in this release is not related to the recent tragic incidents in Japan.

Open Desktop Online Service

The nearby Open Desktop community shows up in Marble
The nearby Open Desktop community shows up in Marble

OpenDesktop.org is one of the biggest online communities, social networks and portals for the free desktop movement in the world where developers, artists and users can share applications, tools, wallpapers, sounds, icons, themes and other artwork and stuff for the open desktop. Would you like to get to know your local OpenDesktop.org community? Just activate the Open Desktop online service in Marble and people around you will show up on the map.

Extended Plugin Configuration

Many plugins now let you change their behavior and appearance: Choose a different crosshairs icon, show the ratio scale in the scalebar, change the compass or show a GPS trail. Each info box can now be hidden or locked with a context menu. These changes are especially useful for users of applications embedding Marble.

Extended Plugin Configuration
Most plugins in Marble now allow advanced users to tweak the plugin as they prefer.

Map Editing

External OpenStreetMap editor selection
External OpenStreetMap editor selection

Did you spot a wrong or missing detail in OpenStreetMap? The wikipedia-like approach of editing the OpenStreetMap by community members makes you the best one to fix it instantly. Marble's KDE version simplifies this process now just like the Qt version did in Marble 1.0: Just use the Edit Map button to open the currently visible map region in your favorite external editor. Supported are Potlach (a web-browser based editor), Merkaartor and JOSM.

Voice Navigation

Voice navigation configuration on the Nokia N900
Voice navigation configuration on the Nokia N900

Marble's mobile version running on the Nokia N900 now sports voice navigation in a preview version. You can choose between sound output (turn points are announced with a sound) and speakers. We don't ship any speaker with our packages, but you can use TomTom voices: Download one of the free ones (some websites offer them for personal use), convert it with our web frontend and copy it to your N900. A KDE Userbase tutorial has all the details you need.

And more ...

There is a special version of Marble that doesn't require the KDE framework (it technically only depends on the Qt library). This version is commonly used for our Windows, Mac and Nokia N900 (Maemo and MeeGo) packages.

Marble on the Nokia N900 now uses stackable windows for an improved user interface. Other parts of the user interface have been polished as well.

Visual Changelog: Marble 1.0 ("Magratée")

Marble 1.0 has been released on January 26th, 2011. After almost 5 years of open community-driven development the Marble Team decided that the time is ripe for "1.0": Marble has developed into a mature impressive virtual globe with a big developer and user community behind. We'd like to thank all the people who have supported us during all those years. And we'd like to encourage everyone interested to join us: The next release is already in the works.

To celebrate this release we've compiled some fact sheets for the Marble Virtual Globe:

Marble 1.0 is part of the KDE 4.6 Software Compilation. In the good tradition of recent years, we have collected those changes directly visible to the user. Please enjoy looking over the new and noteworthy:

Bookmark Support

Adding a Bookmark in Marble
Adding a Bookmark in Marble

Marble always supported one bookmark, the home location. Since one bookmark may not be enough for everyone, Gaurav Gupta added support for an arbitrary number of bookmarks during his Google Summer of Code project. Bookmarks can be added at any point on the map. Suggestions for bookmark names are automatically created using reverse geocoding.

Bookmarks are arranged in folders. They can be accessed from the Bookmarks main menu. Additionally they appear as possible routing targets for quick planning of commonly used routes. The mobile version of Marble supports Bookmarks as well.

Bookmarks as Route Targets on the Nokia N900
Bookmarks as Route Targets on the Nokia N900

You can learn more about Bookmarks in KDE Userbase. A Bookmark Manager (editing, moving and deleting existing bookmarks, KML import and export) is planned for a future Marble version.

GPS Tracking

The existing GPS tracking support has been extended. Besides showing your current location on the map, Marble can now automatically follow you as you move. Furthermore it's possible to have the zoom value adjusted automatically according to your speed.

The mobile version on the Nokia N900 let's you open and save track logs in .kml format. This feature is not yet available on the Desktop, but will follow shortly in Marble 1.1. More details on GPS tracking are described in KDE Userbase.

GPS Tracking in Marble
GPS Tracking in Marble

Routing

Support for routing was introduced in Marble 0.10 using OpenRouteService as the backend. Since the requirement of an Internet connection and the limitation to routing in Europe does not cover all use cases we want to support, we extended Marble's routing feature to support several different backends. Four new backends join the existing OpenRouteService one: Yours provides worldwide online routing while Gosmore, Monav and Routino are offline routing backends. The different backends can be configured in routing profiles. Four profiles are setup as default: Car (fastest), Car (shortest), Bicycle and Pedestrian.

Offline routers require additional maps to be installed locally. For your convenience we host maps for all worldwide countries for the Monav backend. They can be downloaded directly from within Marble. Further details can be found in KDE Userbase.

Download of Offline Routing Maps in Marble
Download of Offline Routing Maps in Marble

Sometimes there are several possible ways to reach a destination. They take a similar amount of time but use quite different roads. In such a case Marble chooses the best route (shown in blue in the map), but also presents the alternative ones to you (shown in gray). If you prefer one of the alternative routes, just click on it in the map to switch to it.

Alternative Routes between Source and Destination
Alternative Routes between Source and Destination
Marble provides further assistance functions tailored to the mobile use case. Once you planned a route, switch Marble into route guidance mode to have driving instructions shown in front of turn points. In case you deviate from the route, Marble automatically calculates an appropriate new route. We created a Tutorial in KDE Userbase that introduces the route guidance mode.
Route Guidance Mode on the Nokia N900
Route Guidance Mode on the Nokia N900

Web Map Service (WMS)

The Web Map Service (WMS) support that has been introduced with Marble 0.10 has been further improved. For Marble 1.0 WMS only gets used internally for ready-made map themes (which can be created and edited via XML files). In our future Marble release there will be a Map Creation Wizard which will make this feature more accessible to the user.

Osmarender Map Theme

Osmarender is a popular OpenStreetMap base layer rendered by the tiles@home project. It can now also be used in Marble as an alternative to the classical OpenStreetMap Marble map (Mapnik layer). You can install it via Marble's 'Get New Stuff' feature (File => Download Maps).

The Osmarender map theme does also include an optional hillshading layer created by Colin Marquardt. You can enable it in Marble's Legend tab on the left side of the screen.

The Osmarender Map Theme with Hillshading
The Osmarender Map Theme with Hillshading

Experimental Qt Quick (QtDeclarative/QML) Support

Qt Quick is a new technology introduced in Qt 4.7 which makes it easier to create animated, touch enabled user interfaces. In preparation of more extensive use in future Marble versions we now ship an experimental QtDeclarative plugin. The plugin exposes the Marble widget and some other components to QML. Three example QML applications are included as well. You can start the examples as shown below (paths may be different on your system):

qmlviewer -I /usr/lib/kde4/plugins/marble/ /usr/share/marble/examples/qml/google-search/google-search.qml
A sample Marble QML application mimicking a popular search engine
A sample Marble QML application mimicking a popular search engine

Performance Improvements

Marble is known to run smooth even on older hardware. Still we found some ways to squeeze more speed out of it: Caching pixmaps, optimizing hot spots and improving projections, Marble now renders faster than ever. Although these optimizations were primarily developed to accelerate our mobile version, most of them apply equally well to Marble on the Desktop.

And more ...

There is a special version of Marble that doesn't require the KDE framework (it technically only depends on the Qt library). This version is commonly used for our Windows, Mac and Nokia N900 packages.

Marble 1.0 will be the first release where this special Qt-Only version will ship with a user interface translated into more than 50 languages - just like the KDE version.

Also the Qt-Only version will have a nice feature for OSM Mappers: The user can easily switch from the OpenStreetMap view in Marble to OSM editing tools such as JOSM, Merkaator and Potlatch: The tool will automatically open up the same area seen in Marble.

Visual Changelog: Marble 0.10

Marble 0.10 was released on August 10th, 2010. It is part of the KDE 4.5 Software Compilation. In the good tradition of recent years, we have collected those changes directly visible to the user. Please enjoy looking over the new and noteworthy:

Online Routing

Do you want to plan a bicycle tour in the nearby wood? Need driving instructions to get to an address in a foreign city? Besides searching for places, Marble can now display possible routes between two or more of them.

And the best thing is: The routes are draggable!

Routing in Marble
Online Routing in Marble

Places to travel along can be entered using search terms (e.g. addresses) in the new Routing tab on the left. Of course Marble also allows you to input them directly on the map. Routes are retrieved using OpenRouteService (restricted to Europe) and displayed on the map. Turn-by-turn instructions are displayed on the left.

You can customize the route using preferences like transport type (car, bicycle, foot). An arbitrary number of via points can be added easily: Use either search terms or create stopovers quickly and conveniently by dragging them out of the existing route and dropping them at the desired position. While a real-time navigation mode is scheduled for Marble 0.11, you can already export the route in the GPX format now. This feature is handy for using routes in conjunction with your navigation device or other software. This feature was brought to you by Dennis Nienhüser

Bulk Download for Tile data in Marble for Offline Usage

For normal usage, Marble downloads the map data that is needed on the fly in the background. It also saves the data that has been downloaded on the hard disc. Now imagine that you make a trip to Norway, and you don't know for sure whether you'll have internet during the trip. So you want to download the whole Oslo area in advance. Up to now this hasn't been possible. But with Marble 0.10.0 you can click "File->Download Region ..." and you get a dialog where you can specify the region and the zoom levels that you want to download. This feature was brought to you by Jens-Michael Hoffmann.

Downloading two levels of the currently visible map region
Download of the Visible Region

Support for Multiple Layers in Marble

So far, Marble has had support only for displaying a single map texture on top of the globe. (The only exception was the cloud feature which allowed having clouds displayed on top of the satellite map. This, however, was hard-coded and not extensible.)

For this release, Jens-Michal Hoffmann has worked on Multiple Layer support. This means that maps can now be created which display multiple texture layers. For instance: a cloud layer on top of a street texture layer on top of a satellite texture layer. This is all done in a generic way. So people who create maps for Marble can create an arbitrary amount of layers blended on top of each other. The best thing is: Due to the way the feature was implemented the performance doesn't change! And the clouds feature has been reworked to make use of the new mechanism.

Support for Gimp-like Filters Between Layers in Marble

The City of Dresden
shown in Marble with multiple layers: Satellite images provided via WMS displayed on top
of OpenStreetMap data via Multiply Blending.
The City of Dresden shown in Marble with multiple layers: Satellite images provided via WMS displayed on top of OpenStreetMap data via Multiply Blending.

As described before, Marble has support for multiple layers now. Layers can get blended on top of each other using Gimp-style "filters": You can choose among more than 30 blending algorithms, such as: Overlay, ColorBurn, Darken, Divide, Multiply, HardLight, ColorDodge, Lighten, Screen, SoftLight and VividLight. If you've ever use an application like Photoshop (TM), Krita or Gimp then you probably know what this means.

Quick and Dirty WMS Support and More Url Download Schemes.

Lots of map data is provided on the internet on servers via the Web Map Service ("WMS") protocol. Bernhard Beschow has added initial quick and dirty WMS support to Marble. This means that there are now a huge number of maps that can be easily displayed using Marble.

Marble Goes Mobile: Support for Nokia's N900 and UI profiles

With KDE 4.5, we have completed the first step toward mobile platform support: Marble will show a slightly different and simplified UI on the N900 Maemo platform compared to the desktop. For KDE 4.6 we aim for an even better user experience and improved performance.

Marble running on a Nokia N900
Marble on a Nokia N900

Marble Routing on Maemo 5
Marble Routing on Maemo5

For more information please visit the Marble Garage Project. Next stop will be the MeeGo version for Marble.

Display APRS (Automatic Packet Reporting System) Senders with Marble

This is one of our first more specialized Online Service Plugins: The APRS plugin created by Wes Hardaker shows worldwide Ham-Radio stations.

HAM Radio's APRS program allows radio transmitters to send their position and other information and is frequently used in disaster relief efforts for coordinating team distribution.

APRS senders displayed in Marble
APRS senders displayed in Marble

We are still looking for programmers who would like to create more Online-Plugins: e.g. Twitter, News, Earthquakes or a social network plugin. It's easy to do and there's an Online Service Plugin tutorial available on our website that shows how to do it.

Performance Improvements and More Changes Under the Hood ...

In addition to these major improvements, our Marble developers have worked on several other small features, bug fixes and performance improvements:

  • Two additional search backends: Hostip (try "planetkde.org") and OSM Nominatim (try "ATM, Karlsruhe") (Dennis Nienhüser)
  • Improved animation support for zoom and panning (Dennis Nienhüser)

Visual Changelog: Marble 0.9

Marble 0.9 got released on February 9th, 2010. It's part of the KDE 4.4 Software Compilation. This latest release features lots of incremental changes.

Support for Online Services: Weather Plugin, Plugin dialogs

Weather Plugin in Marble
Weather Plugin in Marble

During Google Summer of Code 2009 Bastian Holst improved support for Online Service Plugins. Most notably he added a weather plugin which displays information about the weather on the map for several weather stations. So you can now look up the weather condition, temperature, wind direction and wind speed for any place on earth.

Weather Plugin dialogs in Marble
Weather Plugin dialogs in Marble

Bastian Holst also added plugin dialogs to Marble: So it's now possible to easily add a custom "About Dialog" and "Configuration Dialog" for each plugin. Bastian added such dialogs for the Wikipedia Plugin and for the Weather Plugin. He also improved the Wikipedia plugin to show thumbnails of the photos that are displayed in the article. And he made the amount of Wikipedia links shown on the map configurable.

Support custom tile layout Url schemes ("Google Maps Support")

So far the Url schemes supported by Marble have been hardcoded. This allowed support for native Marble maps as well as OpenStreetMap support. But so far there hasn't been any support for arbitrary tile based maps. Now you can easily add support for your favourite map in Marble by creating a dgml/xml text file. Technically this allows for support of Google Maps just by editing a text file. However we feel that it's not legally allowed to ship Google Maps support with Marble. That's one of the reasons why Marble 0.9 doesn't ship with Google Maps support. But of course this feature will allow for easy integration of other maps in the future.

Bernhard Berschow has worked on this feature.

Google Maps in Marble
Google Maps in Marble: Example for a custom Url scheme

Google Maps in Marble
Google Maps in Marble: Example for a custom Url scheme

Multitouch support for Marble

Marco Martin added multitouch support to Marble:

Multitouch in Marble
Multitouch in Marble

Developer Feature: Marble GeoGraphicsView

Since Marble 0.9 the library now features initial support for a Marble GeoGraphicsView. This change adds a framework that is modelled after QGraphicsView. However in addition to a classic QGraphicsView the MarbleGraphicsView adds the following features:
  • Support for different projections
  • GeoPainter support
  • An API focused on geodetic coordinates ("Longitude"/"Latitude") instead of screen positions.
This allows for easy addition of objects to the Marble map in applications. Bastian Holst and Andrew Manson have worked on this framework during Marble 0.9 development.

Performance improvements and more changes under the hood ...

In addition to these major improvements our Marble developers have worked on several other small features, bug fixes and performance improvements:

  • Reload map, Speed improvements (Jens Michael Hoffmann)
  • Zoom on Double Click / Improved animation support (Dennis Nienhüser)

Visual Changelog: Marble 0.8

Marble 0.8 got released together with KDE 4.3 on August 4th 2009. Numerous changes have been made since Marble 0.7:

Support for Online Services: Wikipedia and FlickR

Online Services in Marble
Online Services in Marble (Wikipedia and FlickR)

In preparation to Google Summer of Code 2009 support for Online Service Plugins was integrated with Marble 0.8. Bastian Holst created a Wikipedia Plugin which displays georeferenced Wikipedia articles as an icon on the map. A click onto the icon launches a browser window that displays the referenced site. The data is provided through a webservice via GeoNames.org. Likewise a Photo Plugin got created which currently provides photos via the FlickR photo sharing site.

The feature lays the foundation for numerous other possible Online Service Plugins.

Online Services in Marble
Online Services in Marble (Wikipedia and FlickR)

Choose among Moons and Planets ...

Planet selection: Venus, Earth, Moon and Mars
Planet selection: Venus, Earth, Moon and Mars

2009 is the International Year of Astronomy: For this reason we furthermore improved the functionality that is related to the starry sky. With Marble 0.8 it's now possible to select maps by the name of the celestial body: In addition to Earth you can choose among Moon, Venus, Mars and other planets. This feature was implemented by Harshit Jain. Also we've added a list of astronomical observatories (Thanks go to Médéric Boquien for this feature).

Improved Status Bar: Download Indicator and Tile Level

Download Indicator and Tile Level
Download indicator and status bar configuration menu

OpenStreetMap enthusiasts can now easily view the current OSM tile level: A click onto the status bar using the right mouse button offers a menu which lets you customize the appearance of the status bar. Additionally we've added a progress indicator that displays the status of the map data download. All status bar improvements in this release were contributed by Jens-Michael Hoffmann.

Dynamic Coordinate Grid and Labels ...

Dynamic Coordinate Grid and Labels
Dynamic Coordinate Grid and Labels

In all previous versions of Marble the coordinate grid was always displayed without labels and only worked properly for low zoom levels. With Marble 0.8 the coordinate grid got a major overhaul: It now features aligned labels (together with the prime meridian and the tropical circles). The lines now properly adjust to the chosen zoom level. Even the DMS / Decimal setting is taken into account: See these two maps of Helgoland and compare the labels closely.

Performance improvements and more changes under the hood ...

Tuning: Choose the Graphics System that works best for you
Tuning: Choose the Graphics System that works best for you

If you're using Linux and if Marble runs slowly on your computer then you should try to switch the graphics system to Software Rendering. Often enough this will improve performance significantly. Based on Qt 4.5 we introduced this feature as a setting on the "View" tab (see screenshot).

More Changes

  • Our long time contributor Patrick Spendrin did a lot of work under the hood to fix bugs and to prepare further extension of the KML support.
  • Eckhart Wörner refactored and largely improved the GPS support.
  • Andrew Manson improved the proxy settings by adding Socks5 support.
  • Jens-Michael Hoffmann and Pino Toscano improved the performance of the map download.
  • Bastian Holst added the settings dialog to the Qt-Only version of Marble.
  • Magnus Valle created some more historic maps which still await to be published via GHNS.
  • Simon Edwards provided Python Bindings for Marble.

KML support in Marble
KML support in Marble

Visual Changelog: Marble 0.7

Marble 0.7 got released together with KDE 4.2 on January 27th 2009. Compared to Marble 0.6 there have been quite some changes:

Support for other celestial bodies

Moon phases in Marble
Moon phases in Marble

Marble 0.7 comes with a few new educational maps. One of them is a map of the moon which features all known craters and moon landing places. Not only does Marble show the Apollo landing sites it also includes the impact location of the most recent indian moon mission (Chandrayaan-1's MIP). If you enable sun shading you can also watch the change of the moon phases in Marble.

The big crater Tycho and its rays
The big crater Tycho and its rays

The red planet Mars in Marble
The red planet Mars in Marble

Using the Get Hot New Stuff dialog you can download further maps in Marble. Another celestial body that you'll find there is Mars. After downloading the Mars map theme you can explore this red planet, too and you can pay the two Mars Exploration Rovers Spirit and Opportunity a visit. Of course all Marble features honor the different dimensions of the other bodies in the solar system, so using the measure tool will give proper results in each case.

Mars in flat projection
Mars in flat projection

Improved KML support

KML support: Time zones
KML support: Time zones

We have further worked on improving KML support for Marble. KML is the file format used by other virtual globes such as Google Earth to display user data. Special focus has been put on displaying all kinds of polygons for this release. As an example you can see a KML file displayed inside Marble which shows the timezones. The other screenshot shows a KML file which we've created ourselves which has the word "Marble" displayed on top of the globe:

KML support: Colorful Marble writing
KML support: Colorful Marble writing

Support for historical maps

A historical map from 1687
A historical map from 1687

A feature which had been often requested was to show the earth at different times in history. We've taken one of Wikipedia's finest pictures of a historical map and converted it so that it would be possible to display the map in Marble. Notice how the legend got adjusted to fit well with the "new" old map. We've also added a feature which would show the accurate coastlines as they are known today. This way you can compare how much the cartographer was "off" when he drew the map back in 1687.

Historical map with accurate coast lines blended over
Historical map with accurate coast lines blended over.

Miles and more ...

Support for the Imperial Uni system
Support for the imperial unit system

Additionally we've tweaked Marble in lots of other places: We've added support for the deprecated Imperial Unit System so that people are able to measure distances in miles.

Another feature that users have been frequently asking for is having the map navigation control displayed on the map directly. This feature has been implemented as well. With Marble 0.7 it's now also possible to rearrange the infoboxes to your liking.

Marble world clock plasmoid

The beautiful world clock plasmoid.
The beautiful world clock plasmoid.

Marble 0.7 is the first release that comes with its own plasmoid for KDE 4's Plasma desktop. The plasmoid shows the time for different cities all over the world. It allows you to change the projection and it has got support for full time zone names.

Visual Changelog: Marble 0.6

Marble 0.6 got released together with KDE 4.1 on July 29th 2008. Here are the highlights of Marble 0.6:

OpenStreetMap Support

The Eiffel Tower in Marble
The Eiffel Tower in Marble - C'est magnifique!

From the user's perspective the most important change is certainly that Marble finally got support for a global roadmap, thanks to the OpenStreetMap ("OSM") project! OpenStreetMap is an open community which creates free, editable maps, in a spirit that is somewhat similar to Wikipedia.

The maps of OpenStreetMap have improved dramatically during the last 3 years, especially in Europe. Having OSM support means that you can zoom down to a resolution of a few centimeters, and view streetmaps of your neighbourhood -- as long as it has been mapped already. If this is not the case (yet), get equipped with a GPS device and join the OSM project!

The OpenStreetMap support currently implemented in Marble covers download of prerendered maps from the servers of the OpenStreetMap project. Every few days Marble will update the data in use. In the near future we plan to deliver more extensive OSM support which includes better rendering as well as improved functionality.

Rome in Marble
Rome in Marble/OSM

Rome in Marble
Palm/World islands in Dubai as displayed by Marble/OSM

Rome in Marble
Marble globe centered on Dubai

Realtime cloud cover and sun shading

Real-time cloud coverage in Marble
Real-time cloud coverage in Marble

The most notable change with regard to the satellite view is probably the addition of a real-time cloud cover: Every 3 hours Marble fetches the cloud data of our entire planet, and displays them on the satellite view. To make it feel even more realistic, sun shading has been added: There are two options:

  • Shading the dark side of the Earth
  • Viewing the Earth at Night map on the dark side of the Earth

Sun shading in flat map projection. Note the the measure line ...
Sun shading in flat map projection. Note the the measure line ...

Using the time control, you can watch how the sun shading changes with the daytime and seasons (note how the starry sky in the background changes, too!). It's also worthwhile to take a look at the different shapes of the solar terminator (the line between night and day) for each projection.

New maps: Temperature and Precipitation

Legend and globe for average surface air temperature in December
Legend and globe for average surface air temperature in December

With Marble 0.6 we've introduced four maps: Average Monthly Surface Air Temperature and Precipitation, for both July and December, so you can compare the data for summer and winter seasons (Credits: Legates, D.R. and Willmott, C.J. 1989, National Center for Atmospheric Research and New, M., Lister, D., Hulme, M. and Makin, I., 2002).

Legend and globe for average surface air temperature in December
Legend and flat map for average surface air temperature in July

New projection

Mercator is another "flat" projection. Unlike the Plate carré projection it preserves shapes and directions on the map and is therefore pretty popular.

The new Mercator projection in Marble
The new Mercator projection in Marble

Settings dialog

View settings in the new configuration dialog
View settings in the new configuration dialog

The KDE version of Marble has received a shiny new settings dialog (The Qt-Only version still lacks this feature). Here you can configure various settings. The map quality can be adjusted for the process of panning/zooming, as well as for the still image. On fast machines, you are able to enjoy "jumps" to the target, by enabling "Animate voyage to the target". Furthermore, there's also a dialog to adjust Cache/Proxy settings, and to configure the newly introduced plugins.

Configuration of navigation settings
Configuration of navigation settings

More features

Lots of other changes have happened since Marble 0.5 was released:

  • A Starry sky plugin which features the real constellations, and adjusts to the (current) time specified in the time control.
  • Marble now even finds places which got entered without accents (e.g. if you type in "Malaga" instead of "Màlaga").
  • Addition of an overview world map.
  • Download of map data and wikipedia is about 3-4 times faster now.
  • Different map quality levels, which can be assigned to panning and still images.
  • A High quality level, which features bilinear filtering.
  • Creation of tiles for the Atlas view at compile time. This removes the long map initialization during the first start of previous versions of Marble.
  • Custom map key for each map theme.
  • "Jump" Animations.
  • Alternative notation for degrees: Sexagesimal (degrees-minutes-seconds) or Decimal.
  • Copy Coordinates feature to be able to easily copy coordinates into your text editor.
  • Cache & proxy settings.
  • During startup Marble can return to where it was the last time it was used.

Configuration of navigation settings
The "Stars Plugin" in Marble: Watch Orion and the big dog on the left ...

Framework changes

In terms of framework Marble has received a huge overhaul:
  • Configurable storage layouts, projections and directory structure for tiles, which will enable us to easily import tiles from other sources (e.g. NASA WorldWind) in the future.
  • Colorization of grayscale map data (including matching map key entries), which could be nice for people who want to use Marble in their own applications for research at university.
  • Introduction of an XMLUI framework for maps via the DGML 2.0 map file format.
  • Complete rewrite of the DGML / KML support using QXmlStreamReader.
  • Introduction of a plugin architecture for layers.
  • Initial implementation of GeoPainter. GeoPainter largely resembles QPainter, but it uses geographical coordinates instead of pixel coordinates, and adjusts to projection specific needs.
  • Refactoring of projection classes.
  • Separation of the MarbleMap class from the widget to make non-widget uses like the World Clock plasmoid easier.

A simple test plugin that shows GeoPainter in action
A simple test plugin that shows GeoPainter and its annotation support in action