QGIS API Documentation  2.2.0-Valmiera
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Public Member Functions | Private Attributes | List of all members
QgsHillshadeFilter Class Reference

#include <qgshillshadefilter.h>

Inheritance diagram for QgsHillshadeFilter:
Inheritance graph
[legend]
Collaboration diagram for QgsHillshadeFilter:
Collaboration graph
[legend]

Public Member Functions

 QgsHillshadeFilter (const QString &inputFile, const QString &outputFile, const QString &outputFormat, double lightAzimuth=300, double lightAngle=40)
 ~QgsHillshadeFilter ()
float processNineCellWindow (float *x11, float *x21, float *x31, float *x12, float *x22, float *x32, float *x13, float *x23, float *x33)
 Calculates output value from nine input values.
float lightAzimuth () const
void setLightAzimuth (float azimuth)
float lightAngle () const
void setLightAngle (float angle)
- Public Member Functions inherited from QgsDerivativeFilter
 QgsDerivativeFilter (const QString &inputFile, const QString &outputFile, const QString &outputFormat)
virtual ~QgsDerivativeFilter ()
- Public Member Functions inherited from QgsNineCellFilter
 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.
double cellSizeX () const
void setCellSizeX (double size)
double cellSizeY () const
void setCellSizeY (double size)
double zFactor () const
void setZFactor (double factor)
double inputNodataValue () const
void setInputNodataValue (double value)
double outputNodataValue () const
void setOutputNodataValue (double value)

Private Attributes

float mLightAzimuth
float mLightAngle

Additional Inherited Members

- Protected Member Functions inherited from QgsDerivativeFilter
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)
- Protected Attributes inherited from QgsNineCellFilter
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.
double mZFactor
 Scale factor for z-value if x-/y- units are different to z-units (111120 for degree->meters and 370400 for degree->feet)

Detailed Description

Definition at line 23 of file qgshillshadefilter.h.

Constructor & Destructor Documentation

QgsHillshadeFilter::QgsHillshadeFilter ( const QString &  inputFile,
const QString &  outputFile,
const QString &  outputFormat,
double  lightAzimuth = 300,
double  lightAngle = 40 
)

Definition at line 20 of file qgshillshadefilter.cpp.

QgsHillshadeFilter::~QgsHillshadeFilter ( )

Definition at line 28 of file qgshillshadefilter.cpp.

Member Function Documentation

float QgsHillshadeFilter::lightAngle ( ) const
inline

Definition at line 38 of file qgshillshadefilter.h.

float QgsHillshadeFilter::lightAzimuth ( ) const
inline

Definition at line 36 of file qgshillshadefilter.h.

float QgsHillshadeFilter::processNineCellWindow ( float *  x11,
float *  x21,
float *  x31,
float *  x12,
float *  x22,
float *  x32,
float *  x13,
float *  x23,
float *  x33 
)
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 QgsDerivativeFilter.

Definition at line 32 of file qgshillshadefilter.cpp.

References QgsDerivativeFilter::calcFirstDerX(), QgsDerivativeFilter::calcFirstDerY(), M_PI, mLightAngle, mLightAzimuth, and QgsNineCellFilter::mOutputNodataValue.

Referenced by QgsRelief::processNineCellWindow().

void QgsHillshadeFilter::setLightAngle ( float  angle)
inline

Definition at line 39 of file qgshillshadefilter.h.

References MathUtils::angle().

void QgsHillshadeFilter::setLightAzimuth ( float  azimuth)
inline

Definition at line 37 of file qgshillshadefilter.h.

Member Data Documentation

float QgsHillshadeFilter::mLightAngle
private

Definition at line 43 of file qgshillshadefilter.h.

Referenced by processNineCellWindow().

float QgsHillshadeFilter::mLightAzimuth
private

Definition at line 42 of file qgshillshadefilter.h.

Referenced by processNineCellWindow().


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