Marble::KmlOsmPlacemarkDataTagWriter

Search for usage in LXR

Marble::KmlOsmPlacemarkDataTagWriter Class Reference

#include <KmlOsmPlacemarkDataTagWriter.h>

Static Public Member Functions

static bool write (const GeoDataFeature *feature, GeoWriter &writer)
 
static bool writeOsmData (const GeoDataGeometry *geometry, const OsmPlacemarkData &osmData, GeoWriter &writer)
 

Detailed Description

The KmlOsmPlacemarkDataTagWriter class is not a standard GeoTagWriter extension because the osm data fields have to be written in relation to the placemark's geometry.

Definition at line 22 of file KmlOsmPlacemarkDataTagWriter.h.

Member Function Documentation

◆ write()

bool Marble::KmlOsmPlacemarkDataTagWriter::write ( const GeoDataFeature * feature,
GeoWriter & writer )
static

write function writes a custom XML schema made to store OsmPlacemarkData in a valid KML context

See also
https://developers.google.com/kml/documentation/extendeddata#opaquedata

The custom schema has the following structure ( most complex one, for polygons ):

...
<ExtendedData xmlns:mx="http://marble.kde.org">
<mx:OsmPlacemarkData id=...>
<mx:tag k="key" v="value"/>
.. more tags
<mx:member index="-1"> //outer boundary
<mx:OsmPlacemarkData id=...>
<mx:nd index="0">
<mx:OsmPlacemarkData id= .../> //nd #0
</nd>
<mx:nd index="1">
<mx:OsmPlacemarkData id= .../> //nd #1
</nd>
... more nds
</member>
<mx:member index="0"> //first inner boundary
...
</member>
... more inner boundaries
</ExtendedData>
This class is used to encapsulate the osm data fields kept within a placemark's extendedData.
Wraps a GeoDataPlacemark for QML access.
Definition Placemark.h:24

Definition at line 20 of file KmlOsmPlacemarkDataTagWriter.cpp.

◆ writeOsmData()

bool Marble::KmlOsmPlacemarkDataTagWriter::writeOsmData ( const GeoDataGeometry * geometry,
const OsmPlacemarkData & osmData,
GeoWriter & writer )
static

Definition at line 44 of file KmlOsmPlacemarkDataTagWriter.cpp.


The documentation for this class was generated from the following files:
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Fri Nov 8 2024 12:02:45 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.