QGIS API Documentation 3.39.0-Master (47f7b3a4989)
Loading...
Searching...
No Matches
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.
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