QGIS API Documentation 3.37.0-Master (fdefdf9c27f)
qgsruggednessfilter.h
Go to the documentation of this file.
1/***************************************************************************
2 qgsruggednessfilter.h - description
3 ---------------------
4 begin : August 7th, 2009
5 copyright : (C) 2009 by Marco Hugentobler
6 email : marco dot hugentobler at karto dot baug dot ethz dot ch
7 ***************************************************************************/
8
9/***************************************************************************
10 * *
11 * This program is free software; you can redistribute it and/or modify *
12 * it under the terms of the GNU General Public License as published by *
13 * the Free Software Foundation; either version 2 of the License, or *
14 * (at your option) any later version. *
15 * *
16 ***************************************************************************/
17
18#ifndef QGSRUGGEDNESSFILTER_H
19#define QGSRUGGEDNESSFILTER_H
20
21#include "qgsninecellfilter.h"
22#include "qgis_analysis.h"
23
30class ANALYSIS_EXPORT QgsRuggednessFilter: public QgsNineCellFilter
31{
32 public:
33 QgsRuggednessFilter( const QString &inputFile, const QString &outputFile, const QString &outputFormat );
34
35 protected:
36
37 float processNineCellWindow( float *x11, float *x21, float *x31,
38 float *x12, float *x22, float *x32,
39 float *x13, float *x23, float *x33 ) override;
40
41#ifdef HAVE_OPENCL
42 private:
44
45 virtual const QString openClProgramBaseName() const override
46 {
47 return QStringLiteral( "ruggedness" );
48 }
49#endif
50
51};
52
53#endif // QGSRUGGEDNESSFILTER_H
Base class for raster analysis methods that work with a 3x3 cell filter and calculate the value of ea...
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.
Calculates the ruggedness index based on a 3x3 moving window.