KML is an XML format for geographic annotations developed by Keyhole, Inc. for their Keyhole Earth Viewer. The latter was renamed Google Earth after the eponymous company acquired Keyhole, Inc. in 2004. Since 2008 KML is an international standard of the OGC. Marble makes extensive use of KML both in internal representations and for serialization (reading and writing) of data.

This page assumes a basic knowledge of KML and concentrates on Marble specific aspects. Please refer to the KML Documentation at Google Developers for an introduction to KML and a complete reference.

KML Support in Marble

The following table summarizes Marble's support for KML serialization and display in Marble
Features Read Display/Use Write
Document
Folder
Placemark
NetworkLink
gx:Tour
Geometries Read Display/Use Write
Point
LineString
LinearRing
Polygon
MultiGeometry
Model
Region
gx:Track
gx:MultiTrack
Overlays Read Display/Use Write
PhotoOverlay
ScreenOverlay
GroundOverlay
Time Read Display/Use Write
TimeSpan
TimeStamp
gx:TimeSpan
gx:TimeStamp
Styles Read Display/Use Write
Style
StyleMap
BalloonStyle
ListStyle
LineStyle
PolyStyle
IconStyle
LabelStyle
Views Read Display/Use Write
Camera
LookAt

KML Generator

Generate .kml files with placemarks directly from points of interest stored in OpenStreetMap: Change the map region and the point of interest type in the dropdown list as you like and press the update data button. The KML contents appear in the text box; you can download them as a .kml file and open it in Marble.

Large region selected

The current map region is large. There's nothing wrong with that, but your browser may become slow for some time while handling the data if you press update data now. Zoom in further to avoid that.

Find in the selected region and .

<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://earth.google.com/kml/2.2">
<Document>
  <Placemark>
  <name>Gelaterie Genovesi</name>
  <Point>
   <coordinates>8.9536548,44.4078128,0</coordinates>
  </Point>
 </Placemark>
</Document>
</kml>

Technical Notes

OpenStreetMap data is retrieved via Overpass API from overpass-api.de. The server can handle both small and large requests. The latter will take longer, so expect some delay when querying data for large regions.

The conversion from OpenStreetMap XML to KML is performed by your browser. It needs to support XSL transformations (modern browsers do). Queries for large regions can slow your browser down or crash it. Syntax highlighting is only enabled for small KML files for similar reason.

Some points of interest have several alternative taggings in OpenStreetMap. The KML generator may miss some of them. Do not assume the results to be exhaustive; the KML generator is more a playground tool than meant for serious projects.