#include <qgsderivativefilter.h>
Public Member Functions | |
QgsDerivativeFilter (const QString &inputFile, const QString &outputFile, const QString &outputFormat) | |
virtual | ~QgsDerivativeFilter () |
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 Member Functions | |
float | calcFirstDerX (float *x11, float *x21, float *x31, float *x12, float *x22, float *x32, float *x13, float *x23, float *x33) |
Calculates the first order derivative in x-direction according to Horn (1981). | |
float | calcFirstDerY (float *x11, float *x21, float *x31, float *x12, float *x22, float *x32, float *x13, float *x23, float *x33) |
Calculates the first order derivative in y-direction according to Horn (1981). |
Needs to be subclassed (e.g. for slope and aspect)
Definition at line 24 of file qgsderivativefilter.h.
QgsDerivativeFilter::QgsDerivativeFilter | ( | const QString & | inputFile, | |
const QString & | outputFile, | |||
const QString & | outputFormat | |||
) |
Definition at line 20 of file qgsderivativefilter.cpp.
QgsDerivativeFilter::~QgsDerivativeFilter | ( | ) | [virtual] |
Definition at line 26 of file qgsderivativefilter.cpp.
virtual float QgsDerivativeFilter::processNineCellWindow | ( | float * | x11, | |
float * | x21, | |||
float * | x31, | |||
float * | x12, | |||
float * | x22, | |||
float * | x32, | |||
float * | x13, | |||
float * | x23, | |||
float * | x33 | |||
) | [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
Implements QgsNineCellFilter.
Implemented in QgsAspectFilter, and QgsSlopeFilter.
float QgsDerivativeFilter::calcFirstDerX | ( | float * | x11, | |
float * | x21, | |||
float * | x31, | |||
float * | x12, | |||
float * | x22, | |||
float * | x32, | |||
float * | x13, | |||
float * | x23, | |||
float * | x33 | |||
) | [protected] |
Calculates the first order derivative in x-direction according to Horn (1981).
Definition at line 31 of file qgsderivativefilter.cpp.
References QgsNineCellFilter::mCellSizeX, QgsNineCellFilter::mInputNodataValue, and QgsNineCellFilter::mOutputNodataValue.
Referenced by QgsSlopeFilter::processNineCellWindow(), and QgsAspectFilter::processNineCellWindow().
float QgsDerivativeFilter::calcFirstDerY | ( | float * | x11, | |
float * | x21, | |||
float * | x31, | |||
float * | x12, | |||
float * | x22, | |||
float * | x32, | |||
float * | x13, | |||
float * | x23, | |||
float * | x33 | |||
) | [protected] |
Calculates the first order derivative in y-direction according to Horn (1981).
Definition at line 98 of file qgsderivativefilter.cpp.
References QgsNineCellFilter::mCellSizeY, QgsNineCellFilter::mInputNodataValue, and QgsNineCellFilter::mOutputNodataValue.
Referenced by QgsSlopeFilter::processNineCellWindow(), and QgsAspectFilter::processNineCellWindow().