Quantum GIS API Documentation
1.8
|
00001 /*************************************************************************** 00002 qgshillshadefilter.h - description 00003 -------------------------------- 00004 begin : September 26th, 2011 00005 copyright : (C) 2011 by Marco Hugentobler 00006 email : marco dot hugentobler at sourcepole dot ch 00007 ***************************************************************************/ 00008 00009 /*************************************************************************** 00010 * * 00011 * This program is free software; you can redistribute it and/or modify * 00012 * it under the terms of the GNU General Public License as published by * 00013 * the Free Software Foundation; either version 2 of the License, or * 00014 * (at your option) any later version. * 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