#include <qgsninecellfilter.h>

Public Member Functions | |
| QgsNineCellFilter (const QString &inputFile, const QString &outputFile, const QString &outputFormat) | |
| Constructor that takes input file, output file and output format (GDAL string). | |
| virtual | ~QgsNineCellFilter () |
| int | processRaster (QProgressDialog *p) |
| Starts the calculation, reads from mInputFile and stores the result in mOutputFile. | |
Protected Member Functions | |
| virtual float | processNineCellWindow (float *x11, float *x21, float *x31, float *x12, float *x22, float *x32, float *x13, float *x23, float *x33)=0 |
| Calculates output value from nine input values. | |
Protected Attributes | |
| QString | mInputFile |
| QString | mOutputFile |
| QString | mOutputFormat |
| double | mCellSizeX |
| double | mCellSizeY |
| float | mInputNodataValue |
| The nodata value of the input layer. | |
| float | mOutputNodataValue |
| The nodata value of the output layer. | |
Private Member Functions | |
| QgsNineCellFilter () | |
| GDALDatasetH | openInputFile (int &nCellsX, int &nCellsY) |
| Opens the input file and returns the dataset handle and the number of pixels in x-/y- direction. | |
| GDALDriverH | openOutputDriver () |
| Opens the output driver and tests if it supports the creation of a new dataset. | |
| GDALDatasetH | openOutputFile (GDALDatasetH inputDataset, GDALDriverH outputDriver) |
| Opens the output file and sets the same geotransform and CRS as the input data. | |
Common examples are slope and aspect calculation in DEMs. Subclasses only implement \ the method that calculates the new value from the nine values. Everything else (reading file, writing file) is done by this subclass
Definition at line 30 of file qgsninecellfilter.h.
| QgsNineCellFilter::QgsNineCellFilter | ( | const QString & | inputFile, | |
| const QString & | outputFile, | |||
| const QString & | outputFormat | |||
| ) |
Constructor that takes input file, output file and output format (GDAL string).
Definition at line 28 of file qgsninecellfilter.cpp.
| QgsNineCellFilter::~QgsNineCellFilter | ( | ) | [virtual] |
Definition at line 39 of file qgsninecellfilter.cpp.
| QgsNineCellFilter::QgsNineCellFilter | ( | ) | [private] |
Definition at line 34 of file qgsninecellfilter.cpp.
| int QgsNineCellFilter::processRaster | ( | QProgressDialog * | p | ) |
Starts the calculation, reads from mInputFile and stores the result in mOutputFile.
| p | progress dialog that receives update and that is checked for abort. 0 if no progress bar is needed. |
Definition at line 44 of file qgsninecellfilter.cpp.
References mInputNodataValue, mOutputFile, mOutputNodataValue, openInputFile(), openOutputDriver(), openOutputFile(), and processNineCellWindow().
| GDALDatasetH QgsNineCellFilter::openInputFile | ( | int & | nCellsX, | |
| int & | nCellsY | |||
| ) | [private] |
Opens the input file and returns the dataset handle and the number of pixels in x-/y- direction.
Definition at line 197 of file qgsninecellfilter.cpp.
References mInputFile, and TO8.
Referenced by processRaster().
| GDALDriverH QgsNineCellFilter::openOutputDriver | ( | ) | [private] |
Opens the output driver and tests if it supports the creation of a new dataset.
Definition at line 215 of file qgsninecellfilter.cpp.
References mOutputFormat.
Referenced by processRaster().
| GDALDatasetH QgsNineCellFilter::openOutputFile | ( | GDALDatasetH | inputDataset, | |
| GDALDriverH | outputDriver | |||
| ) | [private] |
Opens the output file and sets the same geotransform and CRS as the input data.
Definition at line 236 of file qgsninecellfilter.cpp.
References mCellSizeX, mCellSizeY, and mOutputFile.
Referenced by processRaster().
| virtual float QgsNineCellFilter::processNineCellWindow | ( | float * | x11, | |
| float * | x21, | |||
| float * | x31, | |||
| float * | x12, | |||
| float * | x22, | |||
| float * | x32, | |||
| float * | x13, | |||
| float * | x23, | |||
| float * | x33 | |||
| ) | [protected, pure virtual] |
Calculates output value from nine input values.
The input values and the output value can be equal to the \ nodata value if not present or outside of the border. Must be implemented by subclasses
Implemented in QgsAspectFilter, QgsDerivativeFilter, QgsRuggednessFilter, QgsSlopeFilter, and QgsTotalCurvatureFilter.
Referenced by processRaster().
QString QgsNineCellFilter::mInputFile [protected] |
QString QgsNineCellFilter::mOutputFile [protected] |
Definition at line 61 of file qgsninecellfilter.h.
Referenced by openOutputFile(), and processRaster().
QString QgsNineCellFilter::mOutputFormat [protected] |
double QgsNineCellFilter::mCellSizeX [protected] |
Definition at line 64 of file qgsninecellfilter.h.
Referenced by QgsDerivativeFilter::calcFirstDerX(), openOutputFile(), and QgsTotalCurvatureFilter::processNineCellWindow().
double QgsNineCellFilter::mCellSizeY [protected] |
Definition at line 65 of file qgsninecellfilter.h.
Referenced by QgsDerivativeFilter::calcFirstDerY(), openOutputFile(), and QgsTotalCurvatureFilter::processNineCellWindow().
float QgsNineCellFilter::mInputNodataValue [protected] |
The nodata value of the input layer.
Definition at line 67 of file qgsninecellfilter.h.
Referenced by QgsDerivativeFilter::calcFirstDerX(), QgsDerivativeFilter::calcFirstDerY(), QgsTotalCurvatureFilter::processNineCellWindow(), QgsRuggednessFilter::processNineCellWindow(), and processRaster().
float QgsNineCellFilter::mOutputNodataValue [protected] |
The nodata value of the output layer.
Definition at line 69 of file qgsninecellfilter.h.
Referenced by QgsDerivativeFilter::calcFirstDerX(), QgsDerivativeFilter::calcFirstDerY(), QgsTotalCurvatureFilter::processNineCellWindow(), QgsSlopeFilter::processNineCellWindow(), QgsRuggednessFilter::processNineCellWindow(), QgsAspectFilter::processNineCellWindow(), and processRaster().
1.5.6