00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef QGSHILLSHADEFILTER_H
00019 #define QGSHILLSHADEFILTER_H
00020
00021 #include "qgsderivativefilter.h"
00022
00023 class ANALYSIS_EXPORT QgsHillshadeFilter: public QgsDerivativeFilter
00024 {
00025 public:
00026 QgsHillshadeFilter( const QString& inputFile, const QString& outputFile, const QString& outputFormat, double lightAzimuth = 300,
00027 double lightAngle = 40 );
00028 ~QgsHillshadeFilter();
00029
00032 float processNineCellWindow( float* x11, float* x21, float* x31,
00033 float* x12, float* x22, float* x32,
00034 float* x13, float* x23, float* x33 );
00035
00036 float lightAzimuth() const { return mLightAzimuth; }
00037 void setLightAzimuth( float azimuth ) { mLightAzimuth = azimuth; }
00038 float lightAngle() const { return mLightAngle; }
00039 void setLightAngle( float angle ) { mLightAngle = angle; }
00040
00041 private:
00042 float mLightAzimuth;
00043 float mLightAngle;
00044 };
00045
00046 #endif // QGSHILLSHADEFILTER_H