18#ifndef QGSALGORITHMEXPORTMESH_H
19#define QGSALGORITHMEXPORTMESH_H
43 QString
group()
const override;
44 QString
groupId()
const override;
47 void initAlgorithm(
const QVariantMap &configuration = QVariantMap() )
override;
48 bool prepareAlgorithm(
const QVariantMap ¶meters, QgsProcessingContext &context, QgsProcessingFeedback *feedback )
override;
49 QVariantMap
processAlgorithm(
const QVariantMap ¶meters, QgsProcessingContext &context, QgsProcessingFeedback *feedback )
override;
53 virtual QSet<int> supportedDataType()
const = 0;
56 virtual QgsGeometry meshElement(
int index )
const = 0;
59 QList<DataGroup> mDataPerGroup;
60 QgsCoordinateTransform mTransform;
61 int mExportVectorOption = 2;
62 int mElementCount = 0;
65class QgsExportMeshVerticesAlgorithm :
public QgsExportMeshOnElement
68 QString shortHelpString()
const override;
69 QString shortDescription()
const override;
70 QString name()
const override;
71 QString displayName()
const override;
72 QStringList tags()
const override;
75 QgsProcessingAlgorithm *createInstance()
const override;
81 QgsGeometry meshElement(
int index )
const override;
85class QgsExportMeshFacesAlgorithm :
public QgsExportMeshOnElement
88 QString shortHelpString()
const override;
89 QString shortDescription()
const override;
90 QString name()
const override;
91 QString displayName()
const override;
92 QStringList tags()
const override;
95 QgsProcessingAlgorithm *createInstance()
const override;
101 QgsGeometry meshElement(
int index )
const override;
105class QgsExportMeshEdgesAlgorithm :
public QgsExportMeshOnElement
108 QString shortHelpString()
const override;
109 QString shortDescription()
const override;
110 QString name()
const override;
111 QString displayName()
const override;
112 QStringList tags()
const override;
115 QgsProcessingAlgorithm *createInstance()
const override;
121 QgsGeometry meshElement(
int index )
const override;
129 QString
name()
const override;
131 QStringList
tags()
const override;
132 QString
group()
const override;
133 QString
groupId()
const override;
139 void initAlgorithm(
const QVariantMap &configuration = QVariantMap() )
override;
140 bool prepareAlgorithm(
const QVariantMap ¶meters, QgsProcessingContext &context, QgsProcessingFeedback *feedback )
override;
141 QVariantMap
processAlgorithm(
const QVariantMap ¶meters, QgsProcessingContext &context, QgsProcessingFeedback *feedback )
override;
144 QSet<int> supportedDataType();
146 QgsTriangularMesh mTriangularMesh;
148 QList<DataGroup> mDataPerGroup;
149 QgsCoordinateTransform mTransform;
150 int mExportVectorOption = 2;
151 QgsMeshRendererSettings mLayerRendererSettings;
157 QString
name()
const override;
159 QStringList
tags()
const override;
160 QString
group()
const override;
161 QString
groupId()
const override;
167 void initAlgorithm(
const QVariantMap &configuration = QVariantMap() )
override;
168 bool prepareAlgorithm(
const QVariantMap ¶meters, QgsProcessingContext &context, QgsProcessingFeedback *feedback )
override;
169 QVariantMap
processAlgorithm(
const QVariantMap ¶meters, QgsProcessingContext &context, QgsProcessingFeedback *feedback )
override;
172 QSet<int> supportedDataType();
174 QgsTriangularMesh mTriangularMesh;
176 QList<DataGroup> mDataPerGroup;
177 QgsCoordinateTransform mTransform;
178 QgsMeshRendererSettings mLayerRendererSettings;
184 QString
name()
const override;
186 QStringList
tags()
const override;
187 QString
group()
const override;
188 QString
groupId()
const override;
194 void initAlgorithm(
const QVariantMap &configuration = QVariantMap() )
override;
195 bool prepareAlgorithm(
const QVariantMap ¶meters, QgsProcessingContext &context, QgsProcessingFeedback *feedback )
override;
196 QVariantMap
processAlgorithm(
const QVariantMap ¶meters, QgsProcessingContext &context, QgsProcessingFeedback *feedback )
override;
201 QgsTriangularMesh mTriangularMesh;
203 QVector<double> mLevels;
205 QList<DataGroup> mDataPerGroup;
206 QgsCoordinateTransform mTransform;
207 QgsMeshRendererSettings mLayerRendererSettings;
208 QString mDateTimeString;
214 QString
name()
const override;
216 QStringList
tags()
const override;
217 QString
group()
const override;
218 QString
groupId()
const override;
224 void initAlgorithm(
const QVariantMap &configuration = QVariantMap() )
override;
225 bool prepareAlgorithm(
const QVariantMap ¶meters, QgsProcessingContext &context, QgsProcessingFeedback *feedback )
override;
226 QVariantMap
processAlgorithm(
const QVariantMap ¶meters, QgsProcessingContext &context, QgsProcessingFeedback *feedback )
override;
231 QgsTriangularMesh mTriangularMesh;
233 QList<DataGroup> mDataPerGroup;
234 QgsCoordinateReferenceSystem mMeshLayerCrs;
235 QgsMeshRendererSettings mLayerRendererSettings;
241 QString
name()
const override;
243 QStringList
tags()
const override;
244 QString
group()
const override;
245 QString
groupId()
const override;
251 void initAlgorithm(
const QVariantMap &configuration = QVariantMap() )
override;
252 bool prepareAlgorithm(
const QVariantMap ¶meters, QgsProcessingContext &context, QgsProcessingFeedback *feedback )
override;
253 QVariantMap
processAlgorithm(
const QVariantMap ¶meters, QgsProcessingContext &context, QgsProcessingFeedback *feedback )
override;
258 QgsTriangularMesh mTriangularMesh;
260 QgsCoordinateReferenceSystem mMeshLayerCrs;
261 QgsMeshRendererSettings mLayerRendererSettings;
263 QList<int> mGroupIndexes;
264 QList<DataGroup> mDatasets;
265 QList<qint64> mRelativeTimeSteps;
266 QStringList mTimeStepString;
267 QMap<qint64, QMap<int, int>> mRelativeTimeToData;
268 QMap<int, QgsMeshDatasetGroupMetadata> mGroupsMetadata;
ProcessingSourceType
Processing data source types.
@ VectorPoint
Vector point layers.
@ VectorPolygon
Vector polygon layers.
@ VectorLine
Vector line layers.
WkbType
The WKB type describes the number of dimensions a geometry has.
@ LineStringZ
LineStringZ.
A block of 3d stacked mesh data related N faces defined on base mesh frame.
A block of integers/doubles from a mesh dataset.
Abstract base class for processing algorithms.
virtual QgsProcessingAlgorithm * createInstance() const =0
Creates a new instance of the algorithm class.
virtual QString group() const
Returns the name of the group this algorithm belongs to.
virtual bool prepareAlgorithm(const QVariantMap ¶meters, QgsProcessingContext &context, QgsProcessingFeedback *feedback)
Prepares the algorithm to run using the specified parameters.
virtual QString groupId() const
Returns the unique ID of the group this algorithm belongs to.
virtual QString shortHelpString() const
Returns a localised short helper string for the algorithm.
virtual QString shortDescription() const
Returns an optional translated short description of the algorithm.
virtual QString displayName() const =0
Returns the translated algorithm name, which should be used for any user-visible display of the algor...
virtual QVariantMap processAlgorithm(const QVariantMap ¶meters, QgsProcessingContext &context, QgsProcessingFeedback *feedback)=0
Runs the algorithm using the specified parameters.
virtual QStringList tags() const
Returns a list of tags which relate to the algorithm, and are used to assist users in searching for s...
virtual void initAlgorithm(const QVariantMap &configuration=QVariantMap())=0
Initializes the algorithm using the specified configuration.
virtual QString name() const =0
Returns the algorithm name, used for identifying the algorithm.
ElementType
Defines type of mesh elements.