16 #ifndef QGSQUICKMAPCANVASMAP_H 17 #define QGSQUICKMAPCANVASMAP_H 21 #include <QtQuick/QQuickItem> 22 #include <QFutureSynchronizer> 28 #include "qgis_quick.h" 70 Q_PROPERTY(
bool freeze READ freeze WRITE setFreeze NOTIFY freezeChanged )
77 Q_PROPERTY(
bool isRendering READ isRendering NOTIFY isRenderingChanged )
84 Q_PROPERTY(
int mapUpdateInterval READ mapUpdateInterval WRITE setMapUpdateInterval NOTIFY mapUpdateIntervalChanged )
89 Q_PROPERTY(
bool incrementalRendering READ incrementalRendering WRITE setIncrementalRendering NOTIFY incrementalRenderingChanged )
96 QSGNode *updatePaintNode( QSGNode *oldNode, QQuickItem::UpdatePaintNodeData * ) override;
105 void setFreeze(
bool freeze );
108 bool isRendering() const;
111 int mapUpdateInterval() const;
114 void setMapUpdateInterval(
int mapUpdateInterval );
117 bool incrementalRendering() const;
120 void setIncrementalRendering(
bool incrementalRendering );
127 void renderStarting();
132 void mapCanvasRefreshed();
135 void freezeChanged();
138 void isRenderingChanged();
141 void mapUpdateIntervalChanged();
144 void incrementalRenderingChanged();
147 void geometryChanged( const QRectF &newGeometry, const QRectF &oldGeometry ) override;
151 void stopRendering();
156 void zoom( QPointF center, qreal scale );
161 void pan( QPointF oldPos, QPointF newPos );
171 void renderJobUpdated();
172 void renderJobFinished();
173 void onWindowChanged( QQuickWindow *window );
174 void onScreenChanged( QScreen *screen );
175 void onExtentChanged();
176 void onLayersChanged();
185 void updateTransform();
186 void zoomToFullExtent();
189 bool mPinching = false;
190 QPoint mPinchStartPoint;
196 QTimer mRefreshTimer;
198 bool mFreeze = false;
199 bool mNeedsRefresh = false;
200 QList<QMetaObject::Connection> mLayerConnections;
201 QTimer mMapUpdateTimer;
202 bool mIncrementalRendering = false;
205 #endif // QGSQUICKMAPCANVASMAP_H This class implements a visual Qt Quick Item that does map rendering according to the current map set...
Abstract base class for map rendering implementations.
The QgsQuickMapSettings class encapsulates QgsMapSettings class to offer settings of configuration of...
The QgsMapSettings class contains configuration for rendering of the map.
Job implementation that renders all layers in parallel.
std::unique_ptr< GEOSGeometry, GeosDeleter > unique_ptr
Scoped GEOS pointer.
Class that stores computed placement from labeling engine.
This class is responsible for keeping cache of rendered images resulting from a map rendering job...