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;
 
Provides global constants and enumerations for use throughout the application.
 
Represents a coordinate reference system (CRS).
 
Contains information about the context in which a coordinate transform is executed.
 
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.