As the title of the post already suggests, I’m glad to let you know that the patch adding support for the rendering of ground overlays has been merged to the Marble’s master branch. 😀
After solving bugs that occurred mainly during the rendering of overlays having a GeoDataLatLonBox with a rotation parameter other than 0, Marble is now capable of displaying ground overlays by simply opening a KML file referencing one.
However, the rotation angle was not the only problem source, as issues also appeared when displaying overlays that extended over the antimeridian. In fact, this turned out to be the most annoying corner case, as dealing with it meant treating multiple situations separately and led to ugly code.
Unit testing has been another important part of the patch, as it was dependent on the GeoDataLatLonBox and TileId classes, to which we added new utility methods that had to be properly tested. One particular method returns the smallest bounding box of a rotated LatLonBox and is particularly useful for filtering out tiles that do not intersect with any ground overlays, improving the rendering performance significantly.
But I guess you might be more interested in what Marble can actually do now, so here are the screenshots you probably expected to see from the beginning (clicking on any of them will take you to an album containing more samples):
The work on the editor mode for overlays has started already, so you will soon be to edit the images in an interactive manner.
Hope you enjoy this new feature as much as I do. Stay tuned! 😀