QGIS API Documentation  3.6.0-Noosa (5873452)
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 
24 class QgsRectangle;
25 
32 class _3D_EXPORT QgsTilingScheme
33 {
34  public:
36  QgsTilingScheme() = default;
37 
39  QgsTilingScheme( const QgsRectangle &fullExtent, const QgsCoordinateReferenceSystem &crs );
40 
42  QgsPointXY tileToMap( int x, int y, int z ) const;
44  void mapToTile( const QgsPointXY &pt, int z, float &x, float &y ) const;
45 
47  QgsRectangle tileToExtent( int x, int y, int z ) const;
48 
50  void extentToTile( const QgsRectangle &extent, int &x, int &y, int &z ) const;
51 
53  QgsCoordinateReferenceSystem crs() const { return mCrs; }
54 
55  private:
56  QgsPointXY mMapOrigin;
57  double mBaseTileSide = 0;
59 
60 };
61 
62 #endif // QGSTILINGSCHEME_H
A rectangle specified with double values.
Definition: qgsrectangle.h:41
QgsCoordinateReferenceSystem crs() const
Returns CRS of the tiling scheme.
A class to represent a 2D point.
Definition: qgspointxy.h:43
const QgsCoordinateReferenceSystem & crs
This class represents a coordinate reference system (CRS).
3 The class encapsulates tiling scheme (just like with WMTS / TMS / XYZ layers).