• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdeedu API Reference
  • KDE Home
  • Contact Us
 

marble

  • sources
  • kde-4.14
  • kdeedu
  • marble
  • src
  • lib
  • marble
  • geodata
  • data
GeoDataPlacemark.cpp
Go to the documentation of this file.
1 //
2 // This file is part of the Marble Virtual Globe.
3 //
4 // This program is free software licensed under the GNU LGPL. You can
5 // find a copy of this license in LICENSE.txt in the top directory of
6 // the source code.
7 //
8 // Copyright 2004-2007 Torsten Rahn <tackat@kde.org>
9 // Copyright 2007 Inge Wallin <ingwa@kde.org>
10 // Copyright 2008-2009 Patrick Spendrin <ps_ml@gmx.de>
11 //
12 
13 
14 // Own
15 #include "GeoDataPlacemark.h"
16 
17 // Private
18 #include "GeoDataPlacemark_p.h"
19 
20 #include "GeoDataMultiGeometry.h"
21 #include "GeoDataCoordinates.h"
22 
23 // Qt
24 #include <QDataStream>
25 #include "MarbleDebug.h"
26 #include "GeoDataTrack.h"
27 #include "GeoDataModel.h"
28 
29 namespace Marble
30 {
31 GeoDataPlacemark::GeoDataPlacemark()
32  : GeoDataFeature( new GeoDataPlacemarkPrivate )
33 {
34  p()->m_geometry->setParent( this );
35 }
36 
37 GeoDataPlacemark::GeoDataPlacemark( const GeoDataPlacemark& other )
38 : GeoDataFeature( other )
39 {
40  // FIXME: violates invariant of this == p()->m_geometry->parent() for other (which could lead to crashes)
41  p()->m_geometry->setParent( this );
42 }
43 
44 GeoDataPlacemark::GeoDataPlacemark( const QString& name )
45  : GeoDataFeature( new GeoDataPlacemarkPrivate )
46 {
47  d->m_name = name;
48  p()->m_geometry->setParent( this );
49 }
50 
51 GeoDataPlacemark::~GeoDataPlacemark()
52 {
53 }
54 
55 bool GeoDataPlacemark::operator==( const GeoDataPlacemark& other ) const
56 {
57  if ( !equals(other) ||
58  p()->m_countrycode != other.p()->m_countrycode ||
59  p()->m_area != other.p()->m_area ||
60  p()->m_population != other.p()->m_population ||
61  p()->m_state != other.p()->m_state ) {
62  return false;
63  }
64 
65  if ( !p()->m_geometry && !other.p()->m_geometry ) {
66  return true;
67  } else if ( (!p()->m_geometry && other.p()->m_geometry) ||
68  (p()->m_geometry && !other.p()->m_geometry) ) {
69  return false;
70  }
71 
72  if ( p()->m_geometry->nodeType() != other.p()->m_geometry->nodeType() ) {
73  return false;
74  }
75 
76  if ( p()->m_geometry->nodeType() == GeoDataTypes::GeoDataPolygonType ) {
77  GeoDataPolygon *thisPoly = dynamic_cast<GeoDataPolygon*>( p()->m_geometry );
78  GeoDataPolygon *otherPoly = dynamic_cast<GeoDataPolygon*>( other.p()->m_geometry );
79  Q_ASSERT( thisPoly && otherPoly );
80 
81  if ( *thisPoly != *otherPoly ) {
82  return false;
83  }
84  } else if ( p()->m_geometry->nodeType() == GeoDataTypes::GeoDataLineStringType ) {
85  GeoDataLineString *thisLine = dynamic_cast<GeoDataLineString*>( p()->m_geometry );
86  GeoDataLineString *otherLine = dynamic_cast<GeoDataLineString*>( other.p()->m_geometry );
87  Q_ASSERT( thisLine && otherLine );
88 
89  if ( *thisLine != *otherLine ) {
90  return false;
91  }
92  } else if ( p()->m_geometry->nodeType() == GeoDataTypes::GeoDataModelType ) {
93  GeoDataModel *thisModel = dynamic_cast<GeoDataModel*>( p()->m_geometry );
94  GeoDataModel *otherModel = dynamic_cast<GeoDataModel*>( other.p()->m_geometry );
95  Q_ASSERT( thisModel && otherModel );
96 
97  if ( *thisModel != *otherModel ) {
98  return false;
99  }
100  /*} else if ( p()->m_geometry->nodeType() == GeoDataTypes::GeoDataMultiGeometryType ) {
101  GeoDataMultiGeometry *thisMG = dynamic_cast<GeoDataMultiGeometry*>( p()->m_geometry );
102  GeoDataMultiGeometry *otherMG = dynamic_cast<GeoDataMultiGeometry*>( other.p()->m_geometry );
103  Q_ASSERT( thisMG && otherMG );
104 
105  if ( *thisMG != *otherMG ) {
106  return false;
107  } */ // Does not have equality operators. I guess they need to be implemented soon.
108  } else if ( p()->m_geometry->nodeType() == GeoDataTypes::GeoDataTrackType ) {
109  GeoDataTrack *thisTrack = dynamic_cast<GeoDataTrack*>( p()->m_geometry );
110  GeoDataTrack *otherTrack = dynamic_cast<GeoDataTrack*>( other.p()->m_geometry );
111  Q_ASSERT( thisTrack && otherTrack );
112 
113  if ( *thisTrack != *otherTrack ) {
114  return false;
115  }
116  } else if ( p()->m_geometry->nodeType() == GeoDataTypes::GeoDataMultiTrackType ) {
117  GeoDataMultiTrack *thisMT = dynamic_cast<GeoDataMultiTrack*>( p()->m_geometry );
118  GeoDataMultiTrack *otherMT = dynamic_cast<GeoDataMultiTrack*>( other.p()->m_geometry );
119  Q_ASSERT( thisMT && otherMT );
120 
121  if ( *thisMT != *otherMT ) {
122  return false;
123  }
124  } else if ( p()->m_geometry->nodeType() == GeoDataTypes::GeoDataPointType ) {
125  GeoDataPoint *thisPoint = dynamic_cast<GeoDataPoint*>( p()->m_geometry );
126  GeoDataPoint *otherPoint = dynamic_cast<GeoDataPoint*>( other.p()->m_geometry );
127  Q_ASSERT( thisPoint && otherPoint );
128 
129  if ( *thisPoint != *otherPoint ) {
130  return false;
131  }
132  }
133 
134  return true;
135 }
136 
137 bool GeoDataPlacemark::operator!=( const GeoDataPlacemark& other ) const
138 {
139  return !this->operator==( other );
140 }
141 
142 GeoDataPlacemarkPrivate* GeoDataPlacemark::p()
143 {
144  return static_cast<GeoDataPlacemarkPrivate*>(d);
145 }
146 
147 const GeoDataPlacemarkPrivate* GeoDataPlacemark::p() const
148 {
149  return static_cast<GeoDataPlacemarkPrivate*>(d);
150 }
151 
152 GeoDataGeometry* GeoDataPlacemark::geometry()
153 {
154  return p()->m_geometry;
155 }
156 
157 const GeoDataGeometry* GeoDataPlacemark::geometry() const
158 {
159  return p()->m_geometry;
160 }
161 
162 const GeoDataLookAt *GeoDataPlacemark::lookAt() const
163 {
164  return dynamic_cast<const GeoDataLookAt*>( abstractView() );
165 }
166 
167 GeoDataLookAt *GeoDataPlacemark::lookAt()
168 {
169  return dynamic_cast<GeoDataLookAt*>( abstractView() );
170 }
171 
172 GeoDataCoordinates GeoDataPlacemark::coordinate( const QDateTime &dateTime, bool *iconAtCoordinates ) const
173 {
174  bool hasIcon = false;
175  GeoDataCoordinates coord;
176 
177  if( p()->m_geometry ) {
178  // Beware: comparison between pointers, not strings.
179  if ( p()->m_geometry->nodeType() == GeoDataTypes::GeoDataPointType ) {
180  hasIcon = true;
181  coord = static_cast<const GeoDataPoint *>( p()->m_geometry )->coordinates();
182  } else if ( p()->m_geometry->nodeType() == GeoDataTypes::GeoDataMultiGeometryType ) {
183  const GeoDataMultiGeometry *multiGeometry = static_cast<const GeoDataMultiGeometry *>( p()->m_geometry );
184 
185  QVector<GeoDataGeometry*>::ConstIterator it = multiGeometry->constBegin();
186  QVector<GeoDataGeometry*>::ConstIterator end = multiGeometry->constEnd();
187  for ( ; it != end; ++it ) {
188  if ( (*it)->nodeType() == GeoDataTypes::GeoDataPointType ) {
189  hasIcon = true;
190  break;
191  }
192  }
193 
194  coord = p()->m_geometry->latLonAltBox().center();
195  } else if ( p()->m_geometry->nodeType() == GeoDataTypes::GeoDataTrackType ) {
196  const GeoDataTrack *track = static_cast<const GeoDataTrack *>( p()->m_geometry );
197  hasIcon = track->size() != 0 && track->firstWhen() <= dateTime;
198  coord = track->coordinatesAt( dateTime );
199  } else {
200  coord = p()->m_geometry->latLonAltBox().center();
201  }
202  }
203 
204  if ( iconAtCoordinates != 0 ) {
205  *iconAtCoordinates = hasIcon;
206  }
207  return coord;
208 }
209 
210 void GeoDataPlacemark::coordinate( qreal& lon, qreal& lat, qreal& alt ) const
211 {
212  coordinate().geoCoordinates( lon, lat, alt );
213 }
214 
215 void GeoDataPlacemark::setCoordinate( qreal lon, qreal lat, qreal alt, GeoDataPoint::Unit _unit)
216 {
217  setGeometry( new GeoDataPoint(lon, lat, alt, _unit ) );
218 }
219 
220 void GeoDataPlacemark::setCoordinate( const GeoDataCoordinates &point )
221 {
222  setGeometry ( new GeoDataPoint( point ) );
223 }
224 
225 void GeoDataPlacemark::setCoordinate( const GeoDataPoint &point )
226 {
227  setGeometry ( new GeoDataPoint( point ) );
228 }
229 
230 void GeoDataPlacemark::setGeometry( GeoDataGeometry *entry )
231 {
232  detach();
233  delete p()->m_geometry;
234  p()->m_geometry = entry;
235  p()->m_geometry->setParent( this );
236 }
237 
238 qreal GeoDataPlacemark::area() const
239 {
240  return p()->m_area;
241 }
242 
243 void GeoDataPlacemark::setArea( qreal area )
244 {
245  detach();
246  p()->m_area = area;
247 }
248 
249 qint64 GeoDataPlacemark::population() const
250 {
251  return p()->m_population;
252 }
253 
254 void GeoDataPlacemark::setPopulation( qint64 population )
255 {
256  detach();
257  p()->m_population = population;
258 }
259 
260 const QString GeoDataPlacemark::state() const
261 {
262  return p()->m_state;
263 }
264 
265 void GeoDataPlacemark::setState( const QString &state )
266 {
267  detach();
268  p()->m_state = state;
269 }
270 
271 const QString GeoDataPlacemark::countryCode() const
272 {
273  return p()->m_countrycode;
274 }
275 
276 void GeoDataPlacemark::setCountryCode( const QString &countrycode )
277 {
278  detach();
279  p()->m_countrycode = countrycode;
280 }
281 
282 bool GeoDataPlacemark::isBalloonVisible() const
283 {
284  return p()->m_isBalloonVisible;
285 }
286 
287 void GeoDataPlacemark::setBalloonVisible( bool visible )
288 {
289  detach();
290  p()->m_isBalloonVisible = visible;
291 }
292 
293 void GeoDataPlacemark::pack( QDataStream& stream ) const
294 {
295  GeoDataFeature::pack( stream );
296 
297  stream << p()->m_countrycode;
298  stream << p()->m_area;
299  stream << p()->m_population;
300  if ( p()->m_geometry )
301  {
302  stream << p()->m_geometry->geometryId();
303  p()->m_geometry->pack( stream );
304  }
305  else
306  {
307  stream << InvalidGeometryId;
308  }
309 }
310 
311 QXmlStreamWriter& GeoDataPlacemark::pack( QXmlStreamWriter& stream ) const
312 {
313  stream.writeStartElement( "placemark" );
314 
315  stream.writeEndElement();
316  return stream;
317 }
318 
319 QXmlStreamWriter& GeoDataPlacemark::operator <<( QXmlStreamWriter& stream ) const
320 {
321  pack( stream );
322  return stream;
323 }
324 
325 void GeoDataPlacemark::unpack( QDataStream& stream )
326 {
327  detach();
328  GeoDataFeature::unpack( stream );
329 
330  stream >> p()->m_countrycode;
331  stream >> p()->m_area;
332  stream >> p()->m_population;
333  int geometryId;
334  stream >> geometryId;
335  switch( geometryId ) {
336  case InvalidGeometryId:
337  break;
338  case GeoDataPointId:
339  {
340  GeoDataPoint* point = new GeoDataPoint;
341  point->unpack( stream );
342  delete p()->m_geometry;
343  p()->m_geometry = point;
344  }
345  break;
346  case GeoDataLineStringId:
347  {
348  GeoDataLineString* lineString = new GeoDataLineString;
349  lineString->unpack( stream );
350  delete p()->m_geometry;
351  p()->m_geometry = lineString;
352  }
353  break;
354  case GeoDataLinearRingId:
355  {
356  GeoDataLinearRing* linearRing = new GeoDataLinearRing;
357  linearRing->unpack( stream );
358  delete p()->m_geometry;
359  p()->m_geometry = linearRing;
360  }
361  break;
362  case GeoDataPolygonId:
363  {
364  GeoDataPolygon* polygon = new GeoDataPolygon;
365  polygon->unpack( stream );
366  delete p()->m_geometry;
367  p()->m_geometry = polygon;
368  }
369  break;
370  case GeoDataMultiGeometryId:
371  {
372  GeoDataMultiGeometry* multiGeometry = new GeoDataMultiGeometry;
373  multiGeometry->unpack( stream );
374  delete p()->m_geometry;
375  p()->m_geometry = multiGeometry;
376  }
377  break;
378  case GeoDataModelId:
379  break;
380  default: break;
381  };
382 }
383 
384 }
Marble::GeoDataCoordinates::Unit
Unit
enum used constructor to specify the units used
Definition: GeoDataCoordinates.h:64
Marble::GeoDataPointId
Definition: Serializable.h:42
Marble::GeoDataPoint
A Geometry object representing a 3d point.
Definition: GeoDataPoint.h:47
GeoDataCoordinates.h
Marble::GeoDataPlacemark::lookAt
const GeoDataLookAt * lookAt() const
Returns GeoDataLookAt object if lookAt is setup earlier otherwise It will convert GeoDataCoordinates ...
Definition: GeoDataPlacemark.cpp:162
Marble::GeoDataCoordinates
A 3d point representation.
Definition: GeoDataCoordinates.h:52
Marble::GeoDataGeometry::nodeType
virtual const char * nodeType() const
Provides type information for downcasting a GeoData.
Definition: GeoDataGeometry.cpp:77
Marble::GeoDataTypes::GeoDataMultiGeometryType
const char * GeoDataMultiGeometryType
Definition: GeoDataTypes.cpp:60
Marble::GeoDataMultiTrack
Definition: GeoDataMultiTrack.h:25
Marble::GeoDataTrack
A geometry for tracking objects made of (time, coordinates) pairs.
Definition: GeoDataTrack.h:54
Marble::GeoDataPlacemarkPrivate::m_isBalloonVisible
bool m_isBalloonVisible
Definition: GeoDataPlacemark_p.h:112
Marble::GeoDataTypes::GeoDataPointType
const char * GeoDataPointType
Definition: GeoDataTypes.cpp:68
Marble::GeoDataPlacemark::pack
virtual void pack(QDataStream &stream) const
Serialize the Placemark to a data stream.
Definition: GeoDataPlacemark.cpp:293
Marble::GeoDataLinearRing
A LinearRing that allows to store a closed, contiguous set of line segments.
Definition: GeoDataLinearRing.h:68
Marble::GeoDataPlacemarkPrivate::nodeType
virtual const char * nodeType() const
Definition: GeoDataPlacemark_p.h:96
Marble::GeoDataMultiGeometry::unpack
virtual void unpack(QDataStream &stream)
Unserialize the contents of the feature from stream.
Definition: GeoDataMultiGeometry.cpp:227
Marble::GeoDataTypes::GeoDataPolygonType
const char * GeoDataPolygonType
Definition: GeoDataTypes.cpp:69
QXmlStreamWriter
QDataStream
Marble::GeoDataFeaturePrivate::m_name
QString m_name
Definition: GeoDataFeature_p.h:184
Marble::GeoDataPlacemarkPrivate
Definition: GeoDataPlacemark_p.h:23
Marble::GeoDataGeometry
A base class for all geodata features.
Definition: GeoDataGeometry.h:47
Marble::GeoDataFeature::equals
bool equals(const GeoDataFeature &other) const
Definition: GeoDataFeature.cpp:94
Marble::GeoDataPlacemark::~GeoDataPlacemark
~GeoDataPlacemark()
Delete the placemark.
Definition: GeoDataPlacemark.cpp:51
GeoDataModel.h
Marble::GeoDataPlacemark::coordinate
GeoDataCoordinates coordinate(const QDateTime &dateTime=QDateTime(), bool *iconAtCoordinates=0) const
Return the coordinates of the placemark at time dateTime as a GeoDataCoordinates. ...
Definition: GeoDataPlacemark.cpp:172
GeoDataPlacemark_p.h
Marble::GeoDataPlacemark::setCoordinate
void setCoordinate(qreal longitude, qreal latitude, qreal altitude=0, GeoDataCoordinates::Unit _unit=GeoDataCoordinates::Radian)
Set the coordinate of the placemark in longitude and latitude.
Definition: GeoDataPlacemark.cpp:215
Marble::GeoDataPlacemark::setState
void setState(const QString &state)
Set the state state of the placemark.
Definition: GeoDataPlacemark.cpp:265
Marble::GeoDataFeature::pack
virtual void pack(QDataStream &stream) const
Serialize the contents of the feature to stream.
Definition: GeoDataFeature.cpp:844
Marble::GeoDataModel
Definition: GeoDataModel.h:29
Marble::GeoDataLineString::unpack
virtual void unpack(QDataStream &stream)
Unserialize the LineString from a stream.
Definition: GeoDataLineString.cpp:662
MarbleDebug.h
GeoDataTrack.h
Marble::GeoDataLinearRingId
Definition: Serializable.h:44
Marble::GeoDataPlacemark::population
qint64 population() const
Return the population of the placemark.
Definition: GeoDataPlacemark.cpp:249
Marble::GeoDataGeometry::pack
virtual void pack(QDataStream &stream) const
Serialize the contents of the feature to stream.
Definition: GeoDataGeometry.cpp:127
Marble::GeoDataPlacemark::geometry
GeoDataGeometry * geometry()
The geometry of the GeoDataPlacemark is to be rendered to the marble map along with the icon at the c...
Definition: GeoDataPlacemark.cpp:152
Marble::GeoDataObject::setParent
virtual void setParent(GeoDataObject *parent)
Sets the parent of the object.
Definition: GeoDataObject.cpp:70
GeoDataMultiGeometry.h
Marble::GeoDataFeature::abstractView
const GeoDataAbstractView * abstractView() const
Get the Abstract view of the feature.
Definition: GeoDataFeature.cpp:610
Marble::GeoDataPlacemark::isBalloonVisible
bool isBalloonVisible() const
Returns whether balloon is visible or not.
Definition: GeoDataPlacemark.cpp:282
Marble::GeoDataCoordinates::geoCoordinates
void geoCoordinates(qreal &lon, qreal &lat, GeoDataCoordinates::Unit unit=GeoDataCoordinates::Radian) const
use this function to get the longitude and latitude with one call - use the unit parameter to switch ...
Definition: GeoDataCoordinates.cpp:715
Marble::GeoDataPlacemark::operator!=
bool operator!=(const GeoDataPlacemark &other) const
Definition: GeoDataPlacemark.cpp:137
Marble::GeoDataPolygon
A polygon that can have "holes".
Definition: GeoDataPolygon.h:81
Marble::GeoDataPlacemarkPrivate::m_countrycode
QString m_countrycode
Definition: GeoDataPlacemark_p.h:108
Marble::GeoDataMultiGeometryId
Definition: Serializable.h:46
Marble::GeoDataPoint::unpack
virtual void unpack(QDataStream &stream)
Unserialize the contents of the feature from stream.
Definition: GeoDataPoint.cpp:111
Marble::GeoDataFeature::unpack
virtual void unpack(QDataStream &stream)
Unserialize the contents of the feature from stream.
Definition: GeoDataFeature.cpp:859
Marble::GeoDataTypes::GeoDataMultiTrackType
const char * GeoDataMultiTrackType
Definition: GeoDataTypes.cpp:61
Marble::GeoDataPlacemark::GeoDataPlacemark
GeoDataPlacemark()
Create a new placemark.
Definition: GeoDataPlacemark.cpp:31
Marble::GeoDataPlacemarkPrivate::m_area
qreal m_area
Definition: GeoDataPlacemark_p.h:109
Marble::GeoDataFeature::d
GeoDataFeaturePrivate * d
Definition: GeoDataFeature.h:506
Marble::GeoDataTypes::GeoDataLineStringType
const char * GeoDataLineStringType
Definition: GeoDataTypes.cpp:53
QString
Marble::GeoDataPlacemark::operator<<
virtual QXmlStreamWriter & operator<<(QXmlStreamWriter &stream) const
Definition: GeoDataPlacemark.cpp:319
Marble::GeoDataMultiGeometry::constBegin
QVector< GeoDataGeometry * >::ConstIterator constBegin() const
Definition: GeoDataMultiGeometry.cpp:146
GeoDataPlacemark.h
Marble::GeoDataTrack::size
int size() const
Returns the number of points in the track.
Definition: GeoDataTrack.cpp:81
Marble::GeoDataLineString
A LineString that allows to store a contiguous set of line segments.
Definition: GeoDataLineString.h:75
Marble::GeoDataModelId
Definition: Serializable.h:48
Marble::GeoDataPlacemarkPrivate::m_population
qint64 m_population
Definition: GeoDataPlacemark_p.h:110
Marble::GeoDataPlacemark::operator==
bool operator==(const GeoDataPlacemark &other) const
Equality operators.
Definition: GeoDataPlacemark.cpp:55
Marble::GeoDataLatLonAltBox::center
virtual GeoDataCoordinates center() const
returns the center of this box
Definition: GeoDataLatLonAltBox.cpp:151
Marble::GeoDataPlacemark::state
const QString state() const
Return the state of the placemark.
Definition: GeoDataPlacemark.cpp:260
Marble::GeoDataPlacemark::setPopulation
void setPopulation(qint64 population)
Sets the population of the placemark.
Definition: GeoDataPlacemark.cpp:254
Marble::GeoDataPolygon::unpack
virtual void unpack(QDataStream &stream)
Unserialize the Polygon from a stream.
Definition: GeoDataPolygon.cpp:174
Marble::GeoDataTrack::coordinatesAt
GeoDataCoordinates coordinatesAt(const QDateTime &when) const
If interpolate() is true, return the coordinates interpolated from the time values before and after w...
Definition: GeoDataTrack.cpp:124
Marble::GeoDataLookAt
Definition: GeoDataLookAt.h:23
Marble::GeoDataTrack::firstWhen
QDateTime firstWhen() const
Return the time value of the first point in the track, or an invalid QDateTime if the track is empty...
Definition: GeoDataTrack.cpp:96
Marble::GeoDataPlacemark::countryCode
const QString countryCode() const
Return the country code of the placemark.
Definition: GeoDataPlacemark.cpp:271
QVector
Marble::GeoDataPlacemark::unpack
virtual void unpack(QDataStream &stream)
Deserialize the Placemark from a data stream.
Definition: GeoDataPlacemark.cpp:325
Marble::GeoDataPlacemarkPrivate::m_state
QString m_state
Definition: GeoDataPlacemark_p.h:111
Marble::GeoDataFeature
A base class for all geodata features.
Definition: GeoDataFeature.h:57
Marble::GeoDataFeature::name
QString name() const
The name of the feature.
Definition: GeoDataFeature.cpp:544
Marble::GeoDataMultiGeometry::constEnd
QVector< GeoDataGeometry * >::ConstIterator constEnd() const
Definition: GeoDataMultiGeometry.cpp:151
Marble::GeoDataMultiGeometry
Definition: GeoDataMultiGeometry.h:33
Marble::GeoDataPlacemark::area
qreal area() const
Return the area size of the feature in square km.
Definition: GeoDataPlacemark.cpp:238
Marble::GeoDataPlacemark::setArea
void setArea(qreal area)
Set the area size of the feature in square km.
Definition: GeoDataPlacemark.cpp:243
Marble::GeoDataPlacemark::setBalloonVisible
void setBalloonVisible(bool visible)
Set visibility of the balloon.
Definition: GeoDataPlacemark.cpp:287
Marble::GeoDataTypes::GeoDataModelType
const char * GeoDataModelType
Definition: GeoDataTypes.cpp:59
Marble::GeoDataGeometry::latLonAltBox
virtual const GeoDataLatLonAltBox & latLonAltBox() const
Definition: GeoDataGeometry.cpp:122
Marble::GeoDataLineStringId
Definition: Serializable.h:43
Marble::GeoDataTypes::GeoDataTrackType
const char * GeoDataTrackType
Definition: GeoDataTypes.cpp:86
Marble::GeoDataPlacemark::setCountryCode
void setCountryCode(const QString &code)
Set the country code of the placemark.
Definition: GeoDataPlacemark.cpp:276
Marble::GeoDataPlacemark
a class representing a point of interest on the map
Definition: GeoDataPlacemark.h:54
Marble::GeoDataFeature::detach
virtual void detach()
Definition: GeoDataFeature.cpp:824
QDateTime
QXmlStreamWriter::writeEndElement
void writeEndElement()
QXmlStreamWriter::writeStartElement
void writeStartElement(const QString &qualifiedName)
Marble::GeoDataPolygonId
Definition: Serializable.h:45
Marble::InvalidGeometryId
Definition: Serializable.h:41
Marble::GeoDataPlacemarkPrivate::m_geometry
GeoDataGeometry * m_geometry
Definition: GeoDataPlacemark_p.h:107
Marble::GeoDataGeometry::geometryId
virtual EnumGeometryId geometryId() const
Definition: GeoDataGeometry.cpp:82
Marble::GeoDataPlacemark::setGeometry
void setGeometry(GeoDataGeometry *entry)
Sets the current Geometry of this Placemark.
Definition: GeoDataPlacemark.cpp:230
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Mon Jun 22 2020 13:13:39 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

marble

Skip menu "marble"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

kdeedu API Reference

Skip menu "kdeedu API Reference"
  • Analitza
  •     lib
  • kalgebra
  • kalzium
  •   libscience
  • kanagram
  • kig
  •   lib
  • klettres
  • marble
  • parley
  • rocs
  •   App
  •   RocsCore
  •   VisualEditor
  •   stepcore

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal