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;
100 bool destExtentSize(
const QgsRectangle &srcExtent,
int srcXSize,
int srcYSize,
105 const QgsRectangle &srcExtent,
int srcXSize,
int srcYSize,
106 QgsRectangle &destExtent SIP_OUT,
int &destXSize SIP_OUT,
int &destYSize SIP_OUT );
117 Q_DECL_DEPRECATED
int mSrcDatumTransform = -1;
120 Q_DECL_DEPRECATED
int mDestDatumTransform = -1;
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();
208 void calcHelper(
int matrixRow,
QgsPointXY *points );
214 QString cpToString();
258 double mDestRowsPerMatrixRow;
261 double mDestColsPerMatrixCol;
264 QList< QList<QgsPointXY> > mCPMatrix;
268 QList< QList<bool> > mCPLegalMatrix;
287 double mSqrTolerance;
A rectangle specified with double values.
Precision precision() const
A class to represent a 2D point.
The Qgis class provides global constants for use throughout the application.
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.
Contains information about the context in which a coordinate transform is executed.
Base class for processing filters like renderers, reprojector, resampler etc.
void setPrecision(Precision precision)
QgsRasterProjector implements approximate projection support for it calculates grid of points in sour...
QgsCoordinateReferenceSystem destinationCrs() const
Returns the destination CRS.
Precision
Precision defines if each pixel is reprojected or approximate reprojection based on an approximation ...
virtual QgsRasterInterface * clone() const =0
Clone itself, create deep copy.
This class represents a coordinate reference system (CRS).
Feedback object tailored for raster block reading.