18#ifndef QGSALGORITHMEXTRACTBYLOCATION_H
19#define QGSALGORITHMEXTRACTBYLOCATION_H
30using namespace Qt::StringLiterals;
53 void addPredicateParameter();
54 Predicate reversePredicate( Predicate predicate )
const;
55 QStringList predicateOptionsList()
const;
60 const QList<int> &selectedPredicates,
61 const std::function<
void(
const QgsFeature & )> &handleFeatureFunction,
62 bool onlyRequireTargetIds,
69 long long mTargetFeatureCount = 0;
70 long long mIntersectFeatureCount = 0;
73 void processByIteratingOverTargetSource(
77 const QList<int> &selectedPredicates,
78 const std::function<
void(
const QgsFeature & )> &handleFeatureFunction,
79 bool onlyRequireTargetIds,
83 void processByIteratingOverIntersectSource(
87 const QList<int> &selectedPredicates,
88 const std::function<
void(
const QgsFeature & )> &handleFeatureFunction,
89 bool onlyRequireTargetIds,
99class QgsSelectByLocationAlgorithm :
public QgsLocationBasedAlgorithm
102 QgsSelectByLocationAlgorithm() =
default;
103 void initAlgorithm(
const QVariantMap &configuration = QVariantMap() )
override;
105 QString svgIconPath()
const override {
return QgsApplication::iconPath( u
"/algorithms/mAlgorithmSelectLocation.svg"_s ); }
106 QString name()
const override;
108 QString displayName()
const override;
109 QStringList tags()
const override;
110 QString group()
const override;
111 QString groupId()
const override;
112 QString shortHelpString()
const override;
113 QString shortDescription()
const override;
114 QgsSelectByLocationAlgorithm *createInstance() const override
SIP_FACTORY;
117 QVariantMap processAlgorithm( const QVariantMap ¶meters, QgsProcessingContext &context, QgsProcessingFeedback *feedback ) override;
123class QgsExtractByLocationAlgorithm : public QgsLocationBasedAlgorithm
126 QgsExtractByLocationAlgorithm() =
default;
127 void initAlgorithm(
const QVariantMap &configuration = QVariantMap() )
override;
128 QString name()
const override;
129 QString displayName()
const override;
130 QStringList tags()
const override;
131 QString group()
const override;
132 QString groupId()
const override;
133 QString shortHelpString()
const override;
134 QString shortDescription()
const override;
135 QgsExtractByLocationAlgorithm *createInstance() const override
SIP_FACTORY;
138 QVariantMap processAlgorithm( const QVariantMap ¶meters, QgsProcessingContext &context, QgsProcessingFeedback *feedback ) override;
139 bool prepareAlgorithm( const QVariantMap ¶meters, QgsProcessingContext &context, QgsProcessingFeedback *feedback ) override;
QFlags< ProcessingAlgorithmFlag > ProcessingAlgorithmFlags
Flags indicating how and when an algorithm operates and should be exposed to users.
static QIcon getThemeIcon(const QString &name, const QColor &fillColor=QColor(), const QColor &strokeColor=QColor())
Helper to get a theme icon.
static QString iconPath(const QString &iconFile)
Returns path to the desired icon file.
Represents a coordinate reference system (CRS).
An interface for objects which provide features via a getFeatures method.
The feature class encapsulates a single feature including its unique ID, geometry and a list of field...
Abstract base class for processing algorithms.
Contains information about the context in which a processing algorithm is executed.
Base class for providing feedback from a processing algorithm.
QSet< QgsFeatureId > QgsFeatureIds