23#ifndef QGSRASTERPROJECTOR_H
24#define QGSRASTERPROJECTOR_H
71 int bandCount() const override;
73 Qgis::DataType dataType(
int bandNo ) const override;
80 int srcDatumTransform = -1,
int destDatumTransform = -1 )
SIP_DEPRECATED;
98 static QString precisionLabel( Precision
precision );
103 bool destExtentSize( const
QgsRectangle &srcExtent,
int srcXSize,
int srcYSize,
108 const
QgsRectangle &srcExtent,
int srcXSize,
int srcYSize,
120 Q_DECL_DEPRECATED
int mSrcDatumTransform = -1;
123 Q_DECL_DEPRECATED
int mDestDatumTransform = -1;
126 Precision mPrecision = Approximate;
148 ProjectorData(
const ProjectorData &other ) =
delete;
149 ProjectorData &operator=(
const ProjectorData &other ) =
delete;
156 bool srcRowCol(
int destRow,
int destCol,
int *srcRow,
int *srcCol );
159 int srcRows()
const {
return mSrcRows; }
160 int srcCols()
const {
return mSrcCols; }
165 void destPointOnCPMatrix(
int row,
int col,
double *theX,
double *theY );
168 int matrixRow(
int destRow );
171 int matrixCol(
int destCol );
174 inline bool preciseSrcRowCol(
int destRow,
int destCol,
int *srcRow,
int *srcCol );
177 inline bool approximateSrcRowCol(
int destRow,
int destCol,
int *srcRow,
int *srcCol );
195 void calcSrcExtent();
198 void calcSrcRowsCols();
213 void calcHelper(
int matrixRow,
QgsPointXY *points );
219 QString cpToString()
const;
264 double mDestRowsPerMatrixRow;
267 double mDestColsPerMatrixCol;
270 QList< QList<QgsPointXY> > mCPMatrix;
274 QList< QList<bool> > mCPLegalMatrix;
293 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 QgsRasterInterface * clone() const =0
Clone itself, create deep copy.
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.
Implements approximate projection support for optimised raster transformation.
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.