|
QGIS API Documentation
master-59fd5e0
|
00001 /*************************************************************************** 00002 qgsrasterdrawer.h 00003 ------------------- 00004 begin : June 2012 00005 copyright : (C) 2012 by Radim Blazek 00006 email : radim dot blazek at gmail.com 00007 ***************************************************************************/ 00008 00009 /*************************************************************************** 00010 * * 00011 * This program is free software; you can redistribute it and/or modify * 00012 * it under the terms of the GNU General Public License as published by * 00013 * the Free Software Foundation; either version 2 of the License, or * 00014 * (at your option) any later version. * 00015 * * 00016 ***************************************************************************/ 00017 00018 #ifndef QGSRASTERDRAWER_H 00019 #define QGSRASTERDRAWER_H 00020 00021 #include "qgsrasterinterface.h" 00022 #include <QMap> 00023 00024 class QPainter; 00025 class QImage; 00026 class QgsMapToPixel; 00027 struct QgsRasterViewPort; 00028 class QgsRasterIterator; 00029 00033 class QgsRasterDrawer 00034 { 00035 public: 00036 QgsRasterDrawer( QgsRasterIterator* iterator ); 00037 ~QgsRasterDrawer(); 00038 00039 void draw( QPainter* p, QgsRasterViewPort* viewPort, const QgsMapToPixel* theQgsMapToPixel ); 00040 00041 protected: 00048 void drawImage( QPainter* p, QgsRasterViewPort* viewPort, const QImage& img, int topLeftCol, int topLeftRow ) const; 00049 00050 private: 00051 QgsRasterIterator* mIterator; 00052 }; 00053 00054 #endif // QGSRASTERDRAWER_H