QGIS API Documentation 3.37.0-Master (fdefdf9c27f)
qgstilingscheme.h
Go to the documentation of this file.
1/***************************************************************************
2 qgstilingscheme.h
3 --------------------------------------
4 Date : July 2017
5 Copyright : (C) 2017 by Martin Dobias
6 Email : wonder dot sk at gmail dot com
7 ***************************************************************************
8 * *
9 * This program is free software; you can redistribute it and/or modify *
10 * it under the terms of the GNU General Public License as published by *
11 * the Free Software Foundation; either version 2 of the License, or *
12 * (at your option) any later version. *
13 * *
14 ***************************************************************************/
15
16#ifndef QGSTILINGSCHEME_H
17#define QGSTILINGSCHEME_H
18
19#include "qgis_3d.h"
20
22#include <qgspointxy.h>
23
24class QgsRectangle;
25struct QgsChunkNodeId;
26
27#define SIP_NO_FILE
28
36class _3D_EXPORT QgsTilingScheme
37{
38 public:
40 QgsTilingScheme() = default;
41
44
46 QgsPointXY tileToMap( int x, int y, int z ) const;
48 void mapToTile( const QgsPointXY &pt, int z, float &x, float &y ) const;
49
51 QgsRectangle tileToExtent( int x, int y, int z ) const;
52
54 QgsRectangle tileToExtent( const QgsChunkNodeId &nodeId ) const;
55
57 void extentToTile( const QgsRectangle &extent, int &x, int &y, int &z ) const;
58
60 QgsCoordinateReferenceSystem crs() const { return mCrs; }
61
67 QgsRectangle fullExtent() const { return mFullExtent; }
68
69 private:
70 QgsPointXY mMapOrigin;
71 double mBaseTileSide = 0;
73 QgsRectangle mFullExtent;
74
75
76};
77
78#endif // QGSTILINGSCHEME_H
This class represents a coordinate reference system (CRS).
A class to represent a 2D point.
Definition: qgspointxy.h:60
A rectangle specified with double values.
Definition: qgsrectangle.h:42
QgsCoordinateReferenceSystem crs() const
Returns CRS of the tiling scheme.
QgsRectangle fullExtent() const
Returns the full extent used in the constructor, which might not be square.
QgsTilingScheme()=default
Creates invalid tiling scheme.
const QgsCoordinateReferenceSystem & crs