18 #ifndef QGSFUZZIFYRASTERALGORITHM_H 19 #define QGSFUZZIFYRASTERALGORITHM_H 35 QString
group()
const final;
37 void initAlgorithm(
const QVariantMap &configuration = QVariantMap() )
final;
45 virtual void addAlgorithmParams() = 0;
66 std::unique_ptr< QgsRasterInterface > mInterface;
71 int mNbCellsXProvider = 0;
72 int mNbCellsYProvider = 0;
75 const double mNoDataValue = -9999;
82 class QgsFuzzifyRasterLinearMembershipAlgorithm :
public QgsFuzzifyRasterAlgorithmBase
86 QgsFuzzifyRasterLinearMembershipAlgorithm() =
default;
88 QString svgIconPath()
const override {
return QgsApplication::iconPath( QStringLiteral(
"/algorithms/mAlgorithmFuzzifyLinear.svg" ) ); }
89 QString name()
const override;
90 QString displayName()
const override;
91 QStringList tags()
const override;
92 QString shortHelpString()
const override;
93 QgsFuzzifyRasterLinearMembershipAlgorithm *createInstance()
const override SIP_FACTORY;
96 void addAlgorithmParams()
override;
101 double mFuzzifyLowBound;
102 double mFuzzifyHighBound;
107 class QgsFuzzifyRasterPowerMembershipAlgorithm :
public QgsFuzzifyRasterAlgorithmBase
111 QgsFuzzifyRasterPowerMembershipAlgorithm() =
default;
113 QString svgIconPath()
const override {
return QgsApplication::iconPath( QStringLiteral(
"/algorithms/mAlgorithmFuzzifyPower.svg" ) ); }
114 QString name()
const override;
115 QString displayName()
const override;
116 QStringList tags()
const override;
117 QString shortHelpString()
const override;
118 QgsFuzzifyRasterPowerMembershipAlgorithm *createInstance()
const override SIP_FACTORY;
121 void addAlgorithmParams()
override;
126 double mFuzzifyLowBound;
127 double mFuzzifyHighBound;
128 double mFuzzifyExponent;
133 class QgsFuzzifyRasterLargeMembershipAlgorithm :
public QgsFuzzifyRasterAlgorithmBase
137 QgsFuzzifyRasterLargeMembershipAlgorithm() =
default;
139 QString svgIconPath()
const override {
return QgsApplication::iconPath( QStringLiteral(
"/algorithms/mAlgorithmFuzzifyLarge.svg" ) ); }
140 QString name()
const override;
141 QString displayName()
const override;
142 QStringList tags()
const override;
143 QString shortHelpString()
const override;
144 QgsFuzzifyRasterLargeMembershipAlgorithm *createInstance()
const override SIP_FACTORY;
147 void addAlgorithmParams()
override;
152 double mFuzzifyMidpoint;
153 double mFuzzifySpread;
158 class QgsFuzzifyRasterSmallMembershipAlgorithm :
public QgsFuzzifyRasterAlgorithmBase
162 QgsFuzzifyRasterSmallMembershipAlgorithm() =
default;
164 QString svgIconPath()
const override {
return QgsApplication::iconPath( QStringLiteral(
"/algorithms/mAlgorithmFuzzifySmall.svg" ) ); }
165 QString name()
const override;
166 QString displayName()
const override;
167 QStringList tags()
const override;
168 QString shortHelpString()
const override;
169 QgsFuzzifyRasterSmallMembershipAlgorithm *createInstance()
const override SIP_FACTORY;
172 void addAlgorithmParams()
override;
177 double mFuzzifyMidpoint;
178 double mFuzzifySpread;
183 class QgsFuzzifyRasterGaussianMembershipAlgorithm :
public QgsFuzzifyRasterAlgorithmBase
187 QgsFuzzifyRasterGaussianMembershipAlgorithm() =
default;
189 QString svgIconPath()
const override {
return QgsApplication::iconPath( QStringLiteral(
"/algorithms/mAlgorithmFuzzifyGaussian.svg" ) ); }
190 QString name()
const override;
191 QString displayName()
const override;
192 QStringList tags()
const override;
193 QString shortHelpString()
const override;
194 QgsFuzzifyRasterGaussianMembershipAlgorithm *createInstance()
const override SIP_FACTORY;
197 void addAlgorithmParams()
override;
202 double mFuzzifyMidpoint;
203 double mFuzzifySpread;
208 class QgsFuzzifyRasterNearMembershipAlgorithm :
public QgsFuzzifyRasterAlgorithmBase
212 QgsFuzzifyRasterNearMembershipAlgorithm() =
default;
214 QString svgIconPath()
const override {
return QgsApplication::iconPath( QStringLiteral(
"/algorithms/mAlgorithmFuzzifyNear.svg" ) ); }
215 QString name()
const override;
216 QString displayName()
const override;
217 QStringList tags()
const override;
218 QString shortHelpString()
const override;
219 QgsFuzzifyRasterNearMembershipAlgorithm *createInstance()
const override SIP_FACTORY;
222 void addAlgorithmParams()
override;
227 double mFuzzifyMidpoint;
228 double mFuzzifySpread;
235 #endif // QGSALGORITHMFUZZIFYRASTER_H virtual bool prepareAlgorithm(const QVariantMap ¶meters, QgsProcessingContext &context, QgsProcessingFeedback *feedback) SIP_THROW(QgsProcessingException)
Prepares the algorithm to run using the specified parameters.
A rectangle specified with double values.
Base class for providing feedback from a processing algorithm.
Represents a raster layer.
virtual QString group() const
Returns the name of the group this algorithm belongs to.
static QString iconPath(const QString &iconFile)
Returns path to the desired icon file.
DataType
Raster data types.
static QIcon getThemeIcon(const QString &name)
Helper to get a theme icon.
Thirty two bit floating point (float)
Abstract base class for processing algorithms.
virtual void initAlgorithm(const QVariantMap &configuration=QVariantMap())=0
Initializes the algorithm using the specified configuration.
virtual QVariantMap processAlgorithm(const QVariantMap ¶meters, QgsProcessingContext &context, QgsProcessingFeedback *feedback) SIP_THROW(QgsProcessingException)=0
Runs the algorithm using the specified parameters.
This class represents a coordinate reference system (CRS).
virtual QString groupId() const
Returns the unique ID of the group this algorithm belongs to.
Contains information about the context in which a processing algorithm is executed.
Base class for raster data providers.