QGIS API Documentation
2.18.21-Las Palmas (9fba24a)
|
QgsRasterProjector implements approximate projection support for it calculates grid of points in source CRS for target CRS + extent which are used to calculate affine transformation matrices. More...
#include <qgsrasterprojector.h>
Public Types | |
enum | Precision { Approximate = 0, Exact = 1 } |
Precision defines if each pixel is reprojected or approximate reprojection based on an approximation matrix of reprojected points is used. More... | |
Public Types inherited from QgsRasterInterface | |
enum | Capability { NoCapabilities = 0, Size = 1 << 1, Create = 1 << 2, Remove = 1 << 3, BuildPyramids = 1 << 4, Identify = 1 << 5, IdentifyValue = 1 << 6, IdentifyText = 1 << 7, IdentifyHtml = 1 << 8, IdentifyFeature = 1 << 9 } |
If you add to this, please also add to capabilitiesString() More... | |
Public Member Functions | |
Q_DECL_DEPRECATED | QgsRasterProjector (const QgsCoordinateReferenceSystem &theSrcCRS, const QgsCoordinateReferenceSystem &theDestCRS, int theSrcDatumTransform, int theDestDatumTransform, const QgsRectangle &theDestExtent, int theDestRows, int theDestCols, double theMaxSrcXRes, double theMaxSrcYRes, const QgsRectangle &theExtent) |
Q_DECL_DEPRECATED | QgsRasterProjector (const QgsCoordinateReferenceSystem &theSrcCRS, const QgsCoordinateReferenceSystem &theDestCRS, const QgsRectangle &theDestExtent, int theDestRows, int theDestCols, double theMaxSrcXRes, double theMaxSrcYRes, const QgsRectangle &theExtent) |
Q_DECL_DEPRECATED | QgsRasterProjector (const QgsCoordinateReferenceSystem &theSrcCRS, const QgsCoordinateReferenceSystem &theDestCRS, double theMaxSrcXRes, double theMaxSrcYRes, const QgsRectangle &theExtent) |
QgsRasterProjector () | |
Q_DECL_DEPRECATED | QgsRasterProjector (const QgsRasterProjector &projector) |
Copy constructor. More... | |
~QgsRasterProjector () | |
The destructor. More... | |
int | bandCount () const override |
Get number of bands. More... | |
QgsRasterBlock * | block (int bandNo, const QgsRectangle &extent, int width, int height) override |
Read block of data using given extent and size. More... | |
QgsRasterBlock * | block2 (int bandNo, const QgsRectangle &extent, int width, int height, QgsRasterBlockFeedback *feedback=nullptr) override |
Read block of data using given extent and size. More... | |
QgsRasterProjector * | clone () const override |
Clone itself, create deep copy. More... | |
QGis::DataType | dataType (int bandNo) const override |
Returns data type for the band specified by number. More... | |
QgsCoordinateReferenceSystem | destCrs () const |
Get destination CRS. More... | |
bool | destExtentSize (const QgsRectangle &theSrcExtent, int theSrcXSize, int theSrcYSize, QgsRectangle &theDestExtent, int &theDestXSize, int &theDestYSize) |
Calculate destination extent and size from source extent and size. More... | |
QgsRasterProjector & | operator= (const QgsRasterProjector &projector) |
Precision | precision () const |
void | setCRS (const QgsCoordinateReferenceSystem &theSrcCRS, const QgsCoordinateReferenceSystem &theDestCRS, int srcDatumTransform=-1, int destDatumTransform=-1) |
set source and destination CRS More... | |
Q_DECL_DEPRECATED void | setMaxSrcRes (double theMaxSrcXRes, double theMaxSrcYRes) |
void | setPrecision (Precision precision) |
QgsCoordinateReferenceSystem | srcCrs () const |
Get source CRS. More... | |
Public Member Functions inherited from QgsRasterInterface | |
QgsRasterInterface (QgsRasterInterface *input=nullptr) | |
virtual | ~QgsRasterInterface () |
virtual QgsRasterBandStats | bandStatistics (int theBandNo, int theStats=QgsRasterBandStats::All, const QgsRectangle &theExtent=QgsRectangle(), int theSampleSize=0) |
Get band statistics. More... | |
virtual int | capabilities () const |
Returns a bitmask containing the supported capabilities. More... | |
QString | capabilitiesString () const |
Returns the above in friendly format. More... | |
virtual void | cumulativeCut (int theBandNo, double theLowerCount, double theUpperCount, double &theLowerValue, double &theUpperValue, const QgsRectangle &theExtent=QgsRectangle(), int theSampleSize=0) |
Find values for cumulative pixel count cut. More... | |
int | dataTypeSize (int bandNo) |
virtual QgsRectangle | extent () |
Get the extent of the interface. More... | |
virtual QString | generateBandName (int theBandNumber) const |
helper function to create zero padded band names More... | |
virtual bool | hasHistogram (int theBandNo, int theBinCount, double theMinimum=std::numeric_limits< double >::quiet_NaN(), double theMaximum=std::numeric_limits< double >::quiet_NaN(), const QgsRectangle &theExtent=QgsRectangle(), int theSampleSize=0, bool theIncludeOutOfRange=false) |
Returns true if histogram is available (cached, already calculated), the parameters are the same as in histogram() More... | |
virtual bool | hasStatistics (int theBandNo, int theStats=QgsRasterBandStats::All, const QgsRectangle &theExtent=QgsRectangle(), int theSampleSize=0) |
Returns true if histogram is available (cached, already calculated). More... | |
virtual QgsRasterHistogram | histogram (int theBandNo, int theBinCount=0, double theMinimum=std::numeric_limits< double >::quiet_NaN(), double theMaximum=std::numeric_limits< double >::quiet_NaN(), const QgsRectangle &theExtent=QgsRectangle(), int theSampleSize=0, bool theIncludeOutOfRange=false) |
Get histogram. More... | |
virtual QgsRasterInterface * | input () const |
Current input. More... | |
virtual bool | on () const |
Is on/off. More... | |
virtual void | readXML (const QDomElement &filterElem) |
Sets base class members from xml. More... | |
virtual bool | setInput (QgsRasterInterface *input) |
Set input. More... | |
virtual void | setOn (bool on) |
Set on/off. More... | |
virtual QGis::DataType | srcDataType (int bandNo) const |
Returns source data type for the band specified by number, source data type may be shorter than dataType. More... | |
virtual const QgsRasterInterface * | srcInput () const |
Get source / raw input, the first in pipe, usually provider. More... | |
virtual QgsRasterInterface * | srcInput () |
virtual void | writeXML (QDomDocument &doc, QDomElement &parentElem) const |
Write base class members to xml. More... | |
virtual int | xBlockSize () const |
Get block size. More... | |
virtual int | xSize () const |
Get raster size. More... | |
virtual int | yBlockSize () const |
virtual int | ySize () const |
Static Public Member Functions | |
static bool | extentSize (const QgsCoordinateTransform *ct, const QgsRectangle &theSrcExtent, int theSrcXSize, int theSrcYSize, QgsRectangle &theDestExtent, int &theDestXSize, int &theDestYSize) |
Calculate destination extent and size from source extent and size. More... | |
static QString | precisionLabel (Precision precision) |
Additional Inherited Members | |
Protected Member Functions inherited from QgsRasterInterface | |
void | initHistogram (QgsRasterHistogram &theHistogram, int theBandNo, int theBinCount=0, double theMinimum=std::numeric_limits< double >::quiet_NaN(), double theMaximum=std::numeric_limits< double >::quiet_NaN(), const QgsRectangle &theExtent=QgsRectangle(), int theSampleSize=0, bool theIncludeOutOfRange=false) |
Fill in histogram defaults if not specified. More... | |
void | initStatistics (QgsRasterBandStats &theStatistics, int theBandNo, int theStats=QgsRasterBandStats::All, const QgsRectangle &theExtent=QgsRectangle(), int theBinCount=0) |
Fill in statistics defaults if not specified. More... | |
Protected Attributes inherited from QgsRasterInterface | |
QList< QgsRasterHistogram > | mHistograms |
List of cached histograms, all bands mixed. More... | |
QgsRasterInterface * | mInput |
bool | mOn |
QList< QgsRasterBandStats > | mStatistics |
List of cached statistics, all bands mixed. More... | |
QgsRasterProjector implements approximate projection support for it calculates grid of points in source CRS for target CRS + extent which are used to calculate affine transformation matrices.
Definition at line 44 of file qgsrasterprojector.h.
Precision defines if each pixel is reprojected or approximate reprojection based on an approximation matrix of reprojected points is used.
Enumerator | |
---|---|
Approximate | Approximate (default), fast but possibly inaccurate. |
Exact | Exact, precise but slow. |
Definition at line 50 of file qgsrasterprojector.h.
QgsRasterProjector::QgsRasterProjector | ( | const QgsCoordinateReferenceSystem & | theSrcCRS, |
const QgsCoordinateReferenceSystem & | theDestCRS, | ||
int | theSrcDatumTransform, | ||
int | theDestDatumTransform, | ||
const QgsRectangle & | theDestExtent, | ||
int | theDestRows, | ||
int | theDestCols, | ||
double | theMaxSrcXRes, | ||
double | theMaxSrcYRes, | ||
const QgsRectangle & | theExtent | ||
) |
Definition at line 25 of file qgsrasterprojector.cpp.
QgsRasterProjector::QgsRasterProjector | ( | const QgsCoordinateReferenceSystem & | theSrcCRS, |
const QgsCoordinateReferenceSystem & | theDestCRS, | ||
const QgsRectangle & | theDestExtent, | ||
int | theDestRows, | ||
int | theDestCols, | ||
double | theMaxSrcXRes, | ||
double | theMaxSrcYRes, | ||
const QgsRectangle & | theExtent | ||
) |
Definition at line 50 of file qgsrasterprojector.cpp.
QgsRasterProjector::QgsRasterProjector | ( | const QgsCoordinateReferenceSystem & | theSrcCRS, |
const QgsCoordinateReferenceSystem & | theDestCRS, | ||
double | theMaxSrcXRes, | ||
double | theMaxSrcYRes, | ||
const QgsRectangle & | theExtent | ||
) |
Definition at line 73 of file qgsrasterprojector.cpp.
QgsRasterProjector::QgsRasterProjector | ( | ) |
Definition at line 91 of file qgsrasterprojector.cpp.
QgsRasterProjector::QgsRasterProjector | ( | const QgsRasterProjector & | projector | ) |
Copy constructor.
Definition at line 100 of file qgsrasterprojector.cpp.
QgsRasterProjector::~QgsRasterProjector | ( | ) |
The destructor.
Definition at line 136 of file qgsrasterprojector.cpp.
|
overridevirtual |
Get number of bands.
Implements QgsRasterInterface.
Definition at line 140 of file qgsrasterprojector.cpp.
|
overridevirtual |
Read block of data using given extent and size.
Returns pointer to data. Caller is responsible to free the memory returned.
bandNo | band number |
extent | extent of block |
width | pixel width of block |
height | pixel height of block |
Implements QgsRasterInterface.
Definition at line 834 of file qgsrasterprojector.cpp.
|
overridevirtual |
Read block of data using given extent and size.
Returns pointer to data. Caller is responsible to free the memory returned.
bandNo | band number |
extent | extent of block |
width | pixel width of block |
height | pixel height of block |
feedback | optional raster feedback object for cancellation/preview |
Reimplemented from QgsRasterInterface.
Definition at line 839 of file qgsrasterprojector.cpp.
|
overridevirtual |
Clone itself, create deep copy.
Implements QgsRasterInterface.
Definition at line 124 of file qgsrasterprojector.cpp.
|
overridevirtual |
Returns data type for the band specified by number.
Implements QgsRasterInterface.
Definition at line 147 of file qgsrasterprojector.cpp.
|
inline |
Get destination CRS.
Definition at line 111 of file qgsrasterprojector.h.
bool QgsRasterProjector::destExtentSize | ( | const QgsRectangle & | theSrcExtent, |
int | theSrcXSize, | ||
int | theSrcYSize, | ||
QgsRectangle & | theDestExtent, | ||
int & | theDestXSize, | ||
int & | theDestYSize | ||
) |
Calculate destination extent and size from source extent and size.
Definition at line 952 of file qgsrasterprojector.cpp.
|
static |
Calculate destination extent and size from source extent and size.
Definition at line 964 of file qgsrasterprojector.cpp.
QgsRasterProjector & QgsRasterProjector::operator= | ( | const QgsRasterProjector & | projector | ) |
Definition at line 110 of file qgsrasterprojector.cpp.
|
inline |
Definition at line 116 of file qgsrasterprojector.h.
Definition at line 822 of file qgsrasterprojector.cpp.
void QgsRasterProjector::setCRS | ( | const QgsCoordinateReferenceSystem & | theSrcCRS, |
const QgsCoordinateReferenceSystem & | theDestCRS, | ||
int | srcDatumTransform = -1 , |
||
int | destDatumTransform = -1 |
||
) |
set source and destination CRS
|
inline |
Definition at line 114 of file qgsrasterprojector.h.
|
inline |
Definition at line 117 of file qgsrasterprojector.h.
|
inline |
Get source CRS.
Definition at line 108 of file qgsrasterprojector.h.