QGIS API Documentation 3.39.0-Master (47f7b3a4989)
Loading...
Searching...
No Matches
qgsrasterdrawer.h
Go to the documentation of this file.
1/***************************************************************************
2 qgsrasterdrawer.h
3 -------------------
4 begin : June 2012
5 copyright : (C) 2012 by Radim Blazek
6 email : radim dot blazek at gmail.com
7 ***************************************************************************/
8
9/***************************************************************************
10 * *
11 * This program is free software; you can redistribute it and/or modify *
12 * it under the terms of the GNU General Public License as published by *
13 * the Free Software Foundation; either version 2 of the License, or *
14 * (at your option) any later version. *
15 * *
16 ***************************************************************************/
17
18#ifndef QGSRASTERDRAWER_H
19#define QGSRASTERDRAWER_H
20
21#include "qgis_core.h"
22#include "qgis_sip.h"
23#include <QMap>
24
25class QPainter;
26class QImage;
27class QgsMapToPixel;
32
37class CORE_EXPORT QgsRasterDrawer
38{
39 public:
40
47 Q_DECL_DEPRECATED QgsRasterDrawer( QgsRasterIterator *iterator, double dpiTarget ) SIP_DEPRECATED;
48
54
62 void draw( QPainter *p, QgsRasterViewPort *viewPort, const QgsMapToPixel *qgsMapToPixel, QgsRasterBlockFeedback *feedback = nullptr );
63
71 void draw( QgsRenderContext &context, QgsRasterViewPort *viewPort, QgsRasterBlockFeedback *feedback = nullptr );
72
73 protected:
74
85 void drawImage( QPainter *p, QgsRasterViewPort *viewPort, const QImage &img, int topLeftCol, int topLeftRow, const QgsMapToPixel *mapToPixel = nullptr ) const SIP_SKIP;
86
87 private:
88 QgsRasterIterator *mIterator = nullptr;
89 double mDpiTarget = -1.0;
90 double mDpiScaleFactor = 1.0;
91 double mDevicePixelRatio = 1.0;
92};
93
94#endif // QGSRASTERDRAWER_H
Perform transforms between map coordinates and device coordinates.
Feedback object tailored for raster block reading.
The drawing pipe for raster layers.
Iterator for sequentially processing raster cells.
Contains information about the context of a rendering operation.
#define SIP_DEPRECATED
Definition qgis_sip.h:106
#define SIP_SKIP
Definition qgis_sip.h:126
This class provides details of the viewable area that a raster will be rendered into.