56 QgsRelief(
const QString &inputFile,
const QString &outputFile,
const QString &outputFormat );
69 double zFactor()
const {
return mZFactor; }
72 void clearReliefColors();
74 QList<QgsRelief::ReliefColor>
reliefColors()
const {
return mReliefColors; }
81 QList<QgsRelief::ReliefColor> calculateOptimizedReliefClasses();
84 bool exportFrequencyDistributionToCsv(
const QString &file );
93 QString mOutputFormat;
95 double mCellSizeX = 0.0;
96 double mCellSizeY = 0.0;
98 float mInputNodataValue = -1;
100 float mOutputNodataValue = -1;
104 std::unique_ptr<QgsSlopeFilter> mSlopeFilter;
105 std::unique_ptr<QgsAspectFilter> mAspectFilter;
106 std::unique_ptr<QgsHillshadeFilter> mHillshadeFilter285;
107 std::unique_ptr<QgsHillshadeFilter> mHillshadeFilter300;
108 std::unique_ptr<QgsHillshadeFilter> mHillshadeFilter315;
111 QList<ReliefColor> mReliefColors;
113 bool processNineCellWindow(
float *x1,
float *x2,
float *x3,
float *x4,
float *x5,
float *x6,
float *x7,
float *x8,
float *x9,
unsigned char *red,
unsigned char *green,
unsigned char *blue );
122 GDALDriverH openOutputDriver();
133 bool getElevationColor(
double elevation,
int *red,
int *green,
int *blue )
const;
136 void setDefaultReliefColors();
142 int frequencyClassForElevation(
double elevation,
double minElevation,
double elevationClassRange );
144 void optimiseClassBreaks( QList<int> &breaks,
double *frequencies );
152 bool calculateRegression(
const QList<QPair<int, double>> &input,
double &a,
double &b );