Marble

TileCoordsPyramid.h
1 // SPDX-License-Identifier: LGPL-2.1-or-later
2 
3 #ifndef MARBLE_TILECOORDSPYRAMID_H
4 #define MARBLE_TILECOORDSPYRAMID_H
5 
6 #include <QtGlobal>
7 #include "marble_export.h"
8 
9 class QRect;
10 
11 namespace Marble
12 {
13 
14 class MARBLE_EXPORT TileCoordsPyramid
15 {
16  public:
17  TileCoordsPyramid( int const topLevel, int const bottomLevel );
18  TileCoordsPyramid( TileCoordsPyramid const & other );
19  TileCoordsPyramid();
20  TileCoordsPyramid & operator=( TileCoordsPyramid const & rhs );
21  ~TileCoordsPyramid();
22 
23  int topLevel() const;
24  int bottomLevel() const;
25  void setBottomLevelCoords( QRect const & coords );
26  QRect coords( int const level ) const;
27 
28  void setValidTileLevels( const QVector<int> validLevels );
29  QVector<int> validTileLevels();
30 
31  /**
32  * @brief returns the number of tiles covered by one pyramid
33  **/
34  qint64 tilesCount() const;
35 
36  private:
37  void swap( TileCoordsPyramid & other );
38  class Private;
39  Private * d; // not const, needs to be swapable
40 };
41 
42 }
43 
44 #endif
Binds a QML item to a specific geodetic location in screen coordinates.
This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Mon Oct 2 2023 03:52:10 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.