marble
#include <GeoDataRegion.h>
Public Member Functions | |
GeoDataRegion () | |
GeoDataRegion (const GeoDataRegion &other) | |
GeoDataRegion (GeoDataFeature *feature) | |
virtual | ~GeoDataRegion () |
const GeoDataLatLonAltBox & | latLonAltBox () const |
GeoDataLod & | lod () const |
virtual const char * | nodeType () const |
bool | operator!= (const GeoDataRegion &other) const |
GeoDataRegion & | operator= (const GeoDataRegion &other) |
bool | operator== (const GeoDataRegion &other) const |
virtual void | pack (QDataStream &stream) const |
void | setLatLonAltBox (const GeoDataLatLonAltBox &latLonAltBox) |
void | setLod (const GeoDataLod &lod) |
virtual void | unpack (QDataStream &stream) |
Public Member Functions inherited from Marble::GeoDataObject | |
GeoDataObject () | |
GeoDataObject (const GeoDataObject &) | |
virtual | ~GeoDataObject () |
QString | id () const |
GeoDataObject & | operator= (const GeoDataObject &) |
virtual GeoDataObject * | parent () const |
QString | resolvePath (const QString &relativePath) const |
void | setId (const QString &value) |
virtual void | setParent (GeoDataObject *parent) |
void | setTargetId (const QString &value) |
QString | targetId () const |
Public Member Functions inherited from Marble::GeoNode | |
GeoNode () | |
virtual | ~GeoNode () |
Public Member Functions inherited from Marble::Serializable | |
virtual | ~Serializable () |
Additional Inherited Members | |
Protected Member Functions inherited from Marble::GeoDataObject | |
virtual bool | equals (const GeoDataObject &other) const |
Detailed Description
GeoDataRegion describes the visibility and extent of a feature.
GeoDataRegion is a tool class that implements the Region tag/class of the Open Geospatial Consortium standard KML 2.2.
GeoDataRegion provides all aspects that can be taken into account to find out whether a GeoDataFeature (or a GeoDataLink) is visible on the map:
- On one hand GeoDataRegion owns a GeoDataLatLon(Alt)Box object. GeoDataLatLon(Alt)Box is a bounding box in geodesic coordinates. As such GeoDataLatLon(Alt)Box allows to determine whether the feature is located inside the area that the observer/camera is looking at ("viewLatLonAltBox").
- Additionally GeoDataRegion has got a GeoDataLod ("Level of Detail") object. GeoDataLod describes the least and maximum size on the screen that is required to consider a feature to be active.
A feature is visible if it's active and if its latLonAltBox covers the area that is being looked at by the observer.
Definition at line 49 of file GeoDataRegion.h.
Constructor & Destructor Documentation
Marble::GeoDataRegion::GeoDataRegion | ( | ) |
Creates a new GeoDataRegion object that is not assigned to a feature. Naturally it's recommended to assign a feature or a link to the region (and therefore it's recommended to use one of the other constructors instead). This constructor allows to create a stand alone region which can get assigned to the feature or link later on.
Definition at line 31 of file GeoDataRegion.cpp.
Marble::GeoDataRegion::GeoDataRegion | ( | const GeoDataRegion & | other | ) |
Creates a new GeoDataRegion as a copy of other
.
Definition at line 37 of file GeoDataRegion.cpp.
|
explicit |
Creates a new GeoDataRegion object that is associated to a feature. In the model the feature represents the parent object of the region.
Definition at line 43 of file GeoDataRegion.cpp.
|
virtual |
Destroys a Region object.
Definition at line 50 of file GeoDataRegion.cpp.
Member Function Documentation
const GeoDataLatLonAltBox & Marble::GeoDataRegion::latLonAltBox | ( | ) | const |
Returns a geodesic bounding box ("latLonAltBox") of the region. Returns a geodesic bounding box that describes the extent of a feature or a link. If no latLonAltBox has been set then a GeoDataLatLonAltBox object will be calculated automatically: If the associated parent object is a feature then the geometry that might be associated to the feature will be used to calculate the GeoDataLatLonAltBox. Otherwise the coordinate will be used to create a GeoDataLatLonAltBox (in case that there is no geometry assigned to the feature or if the parent object of the region is a GeoDataLink).
Definition at line 73 of file GeoDataRegion.cpp.
GeoDataLod & Marble::GeoDataRegion::lod | ( | ) | const |
Returns the region's level of detail. The level of detail is returned as a lod object. If no lod has been set then a GeoDataLod object with default values is being returned.
Definition at line 117 of file GeoDataRegion.cpp.
|
virtual |
Provides type information for downcasting a GeoNode.
Implements Marble::GeoDataObject.
Definition at line 56 of file GeoDataRegion.cpp.
bool Marble::GeoDataRegion::operator!= | ( | const GeoDataRegion & | other | ) | const |
Definition at line 68 of file GeoDataRegion.cpp.
GeoDataRegion & Marble::GeoDataRegion::operator= | ( | const GeoDataRegion & | other | ) |
Definition at line 153 of file GeoDataRegion.cpp.
bool Marble::GeoDataRegion::operator== | ( | const GeoDataRegion & | other | ) | const |
Definition at line 61 of file GeoDataRegion.cpp.
|
virtual |
Serialize the Region to a stream.
- Parameters
-
stream the stream.
Reimplemented from Marble::GeoDataObject.
Definition at line 136 of file GeoDataRegion.cpp.
void Marble::GeoDataRegion::setLatLonAltBox | ( | const GeoDataLatLonAltBox & | latLonAltBox | ) |
Sets the latLonAltBox of the region. Sets the geodesic bounding box that describes the extent of a feature or a link.
Definition at line 110 of file GeoDataRegion.cpp.
void Marble::GeoDataRegion::setLod | ( | const GeoDataLod & | lod | ) |
Sets a region's level of detail. The level of detail is set as a lod object.
Definition at line 129 of file GeoDataRegion.cpp.
|
virtual |
Unserialize the Region from a stream.
- Parameters
-
stream the stream.
Reimplemented from Marble::GeoDataObject.
Definition at line 145 of file GeoDataRegion.cpp.
The documentation for this class was generated from the following files:
Documentation copyright © 1996-2020 The KDE developers.
Generated on Mon Jun 22 2020 13:13:45 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.