QGIS API Documentation  3.6.0-Noosa (5873452)
qgsquickmaptransform.h
Go to the documentation of this file.
1 /***************************************************************************
2  qgsquickmaptransform.h
3  --------------------------------------
4  Date : 27.12.2014
5  Copyright : (C) 2014 by Matthias Kuhn
6  Email : matthias (at) opengis.ch
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 QGSQUICKMAPTRANSFORM_H
17 #define QGSQUICKMAPTRANSFORM_H
18 
19 #include <QQuickItem>
20 #include <QMatrix4x4>
21 
22 #include "qgis_quick.h"
23 
25 
37 class QUICK_EXPORT QgsQuickMapTransform : public QQuickTransform
38 {
39  Q_OBJECT
40 
44  Q_PROPERTY( QgsQuickMapSettings *mapSettings READ mapSettings WRITE setMapSettings NOTIFY mapSettingsChanged )
45 
46  public:
48  QgsQuickMapTransform() = default;
49  ~QgsQuickMapTransform() = default;
50 
57  void applyTo( QMatrix4x4 *matrix ) const;
58 
60  QgsQuickMapSettings *mapSettings() const;
61 
63  void setMapSettings( QgsQuickMapSettings *mapSettings );
64 
65  signals:
67  void mapSettingsChanged();
68 
69  private slots:
70  void updateMatrix();
71 
72  private:
73  QgsQuickMapSettings *mMapSettings = nullptr; // not owned
74  QMatrix4x4 mMatrix;
75 };
76 
77 #endif // QGSQUICKMAPTRANSFORM_H
The QgsQuickMapSettings class encapsulates QgsMapSettings class to offer settings of configuration of...
The QgsQuickMapTransform is transformation that can be attached to any QQuickItem.