File indexing completed on 2024-05-12 03:50:11
0001 // SPDX-License-Identifier: LGPL-2.1-or-later 0002 // 0003 // SPDX-FileCopyrightText: 2012 Dennis Nienhüser <nienhueser@kde.org> 0004 // 0005 0006 0007 #ifndef MARBLE_GEODATAGROUNDOVERLAY_H 0008 #define MARBLE_GEODATAGROUNDOVERLAY_H 0009 0010 #include "GeoDataOverlay.h" 0011 #include "MarbleGlobal.h" 0012 #include "GeoDataLatLonBox.h" 0013 0014 namespace Marble { 0015 0016 class GeoDataGroundOverlayPrivate; 0017 class GeoDataLatLonQuad; 0018 0019 /** 0020 */ 0021 class GEODATA_EXPORT GeoDataGroundOverlay: public GeoDataOverlay 0022 { 0023 public: 0024 GeoDataGroundOverlay(); 0025 0026 GeoDataGroundOverlay( const GeoDataGroundOverlay &other ); 0027 0028 ~GeoDataGroundOverlay() override; 0029 0030 GeoDataGroundOverlay& operator=( const GeoDataGroundOverlay &other ); 0031 bool operator==( const GeoDataGroundOverlay &other ) const; 0032 bool operator!=( const GeoDataGroundOverlay &other ) const; 0033 0034 GeoDataFeature * clone() const override; 0035 0036 /** Provides type information for downcasting a GeoNode */ 0037 const char* nodeType() const override; 0038 0039 double altitude() const; 0040 0041 void setAltitude( double altitude ); 0042 0043 AltitudeMode altitudeMode() const; 0044 0045 void setAltitudeMode( const AltitudeMode altitudeMode ); 0046 0047 const GeoDataLatLonBox& latLonBox() const; 0048 0049 GeoDataLatLonBox& latLonBox(); 0050 0051 void setLatLonBox( const GeoDataLatLonBox &box ); 0052 0053 const GeoDataLatLonQuad& latLonQuad() const; 0054 0055 GeoDataLatLonQuad& latLonQuad(); 0056 0057 void setLatLonQuad( const GeoDataLatLonQuad &quad ); 0058 0059 private: 0060 Q_DECLARE_PRIVATE(GeoDataGroundOverlay) 0061 }; 0062 0063 } 0064 0065 #endif