23 #ifndef QGSRASTERPROJECTOR_H
24 #define QGSRASTERPROJECTOR_H
26 #include "qgis_core.h"
68 int bandCount() const override;
70 Qgis::DataType dataType(
int bandNo ) const override;
77 int srcDatumTransform = -1,
int destDatumTransform = -1 )
SIP_DEPRECATED;
95 static QString precisionLabel( Precision
precision );
100 bool destExtentSize( const
QgsRectangle &srcExtent,
int srcXSize,
int srcYSize,
105 const
QgsRectangle &srcExtent,
int srcXSize,
int srcYSize,
117 Q_DECL_DEPRECATED
int mSrcDatumTransform = -1;
120 Q_DECL_DEPRECATED
int mDestDatumTransform = -1;
123 Precision mPrecision = Approximate;
145 ProjectorData(
const ProjectorData &other ) =
delete;
146 ProjectorData &operator=(
const ProjectorData &other ) =
delete;
153 bool srcRowCol(
int destRow,
int destCol,
int *srcRow,
int *srcCol );
156 int srcRows()
const {
return mSrcRows; }
157 int srcCols()
const {
return mSrcCols; }
162 void destPointOnCPMatrix(
int row,
int col,
double *theX,
double *theY );
165 int matrixRow(
int destRow );
168 int matrixCol(
int destCol );
171 inline bool preciseSrcRowCol(
int destRow,
int destCol,
int *srcRow,
int *srcCol );
174 inline bool approximateSrcRowCol(
int destRow,
int destCol,
int *srcRow,
int *srcCol );
192 void calcSrcExtent();
195 void calcSrcRowsCols();
210 void calcHelper(
int matrixRow,
QgsPointXY *points );
216 QString cpToString();
261 double mDestRowsPerMatrixRow;
264 double mDestColsPerMatrixCol;
267 QList< QList<QgsPointXY> > mCPMatrix;
271 QList< QList<bool> > mCPLegalMatrix;
290 double mSqrTolerance;
The Qgis class provides global constants for use throughout the application.
This class represents a coordinate reference system (CRS).
Contains information about the context in which a coordinate transform is executed.
A class to represent a 2D point.
Feedback object tailored for raster block reading.
Base class for processing filters like renderers, reprojector, resampler etc.
virtual QgsRasterBlock * block(int bandNo, const QgsRectangle &extent, int width, int height, QgsRasterBlockFeedback *feedback=nullptr)=0
Read block of data using given extent and size.
virtual QgsRasterInterface * clone() const =0
Clone itself, create deep copy.
QgsRasterProjector implements approximate projection support for it calculates grid of points in sour...
QgsCoordinateReferenceSystem destinationCrs() const
Returns the destination CRS.
void setPrecision(Precision precision)
Precision
Precision defines if each pixel is reprojected or approximate reprojection based on an approximation ...
Precision precision() const
A rectangle specified with double values.