Marble

GeoSceneEquirectTileProjection.h
1 /*
2  SPDX-FileCopyrightText: 2016 Friedrich W. H. Kossebau <[email protected]>
3 
4  SPDX-License-Identifier: LGPL-2.0-or-later
5 */
6 
7 #ifndef MARBLE_GEOSCENEEQUIRECTTILEPROJECTION_H
8 #define MARBLE_GEOSCENEEQUIRECTTILEPROJECTION_H
9 
10 #include "GeoSceneAbstractTileProjection.h"
11 
12 namespace Marble
13 {
14 
15 /**
16  * Converts the x and y indices of tiles to and from geo coordinates.
17  * For tiles of maps in Equirectangular projection.
18  *
19  * Tiles do have the same width and the same height per zoomlevel.
20  * The number of tiles per dimension is twice that of the previous lower zoomlevel.
21  * The indexing is done in x dimension eastwards, with the first tiles beginning at -180 degree
22  * and an x value of 0 and the last tiles ending at +180 degree,
23  * in y dimension southwards with the first tiles beginning at +90 degree and a y value of 0
24  * and the last tiles ending at -90 degree.
25  */
27 {
28 public:
29  /**
30  * @brief Construct a new GeoSceneEquirectTileProjection.
31  */
33 
35 
36 public:
37  /**
38  * @copydoc
39  */
40  GeoSceneAbstractTileProjection::Type type() const override;
41 
42  /**
43  * @copydoc
44  */
45  QRect tileIndexes(const GeoDataLatLonBox &latLonBox, int zoomLevel) const override;
46 
47  /**
48  * @copydoc
49  */
50  GeoDataLatLonBox geoCoordinates(int zoomLevel, int x, int y) const override;
51 
53 
54 private:
55  Q_DISABLE_COPY(GeoSceneEquirectTileProjection)
56 };
57 
58 }
59 
60 #endif
virtual GeoDataLatLonBox geoCoordinates(int zoomLevel, int x, int y) const =0
Get the boundary geo coordinates corresponding to a tile.
Converts the x and y indices of tiles to and from geo coordinates.
A class that defines a 2D bounding box for geographic data.
Binds a QML item to a specific geodetic location in screen coordinates.
A base class for projections between tile indizes and geo coordinates in Marble.
This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Mon Sep 25 2023 03:50:19 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.