QgsDerivativeFilter Class Reference

Adds the ability to calculate derivatives in x- and y-directions. More...

#include <qgsderivativefilter.h>

Inheritance diagram for QgsDerivativeFilter:

Inheritance graph
[legend]
Collaboration diagram for QgsDerivativeFilter:

Collaboration graph
[legend]

List of all members.

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).


Detailed Description

Adds the ability to calculate derivatives in x- and y-directions.

Needs to be subclassed (e.g. for slope and aspect)

Definition at line 24 of file qgsderivativefilter.h.


Constructor & Destructor Documentation

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.


Member Function Documentation

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().


The documentation for this class was generated from the following files:

Generated on Sat Feb 4 19:17:32 2012 for Quantum GIS API Documentation by  doxygen 1.5.6