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;
74 QgsProcessingAlgorithm *createInstance()
const override;
80 QgsGeometry meshElement(
int index )
const override;
84class QgsExportMeshFacesAlgorithm :
public QgsExportMeshOnElement
87 QString shortHelpString()
const override;
88 QString shortDescription()
const override;
89 QString name()
const override;
90 QString displayName()
const override;
93 QgsProcessingAlgorithm *createInstance()
const override;
99 QgsGeometry meshElement(
int index )
const override;
103class QgsExportMeshEdgesAlgorithm :
public QgsExportMeshOnElement
106 QString shortHelpString()
const override;
107 QString shortDescription()
const override;
108 QString name()
const override;
109 QString displayName()
const override;
112 QgsProcessingAlgorithm *createInstance()
const override;
118 QgsGeometry meshElement(
int index )
const override;
126 QString
name()
const override;
128 QString
group()
const override;
129 QString
groupId()
const override;
135 void initAlgorithm(
const QVariantMap &configuration = QVariantMap() )
override;
136 bool prepareAlgorithm(
const QVariantMap ¶meters, QgsProcessingContext &context, QgsProcessingFeedback *feedback )
override;
137 QVariantMap
processAlgorithm(
const QVariantMap ¶meters, QgsProcessingContext &context, QgsProcessingFeedback *feedback )
override;
140 QSet<int> supportedDataType();
142 QgsTriangularMesh mTriangularMesh;
144 QList<DataGroup> mDataPerGroup;
145 QgsCoordinateTransform mTransform;
146 int mExportVectorOption = 2;
147 QgsMeshRendererSettings mLayerRendererSettings;
153 QString
name()
const override;
155 QString
group()
const override;
156 QString
groupId()
const override;
162 void initAlgorithm(
const QVariantMap &configuration = QVariantMap() )
override;
163 bool prepareAlgorithm(
const QVariantMap ¶meters, QgsProcessingContext &context, QgsProcessingFeedback *feedback )
override;
164 QVariantMap
processAlgorithm(
const QVariantMap ¶meters, QgsProcessingContext &context, QgsProcessingFeedback *feedback )
override;
167 QSet<int> supportedDataType();
169 QgsTriangularMesh mTriangularMesh;
171 QList<DataGroup> mDataPerGroup;
172 QgsCoordinateTransform mTransform;
173 QgsMeshRendererSettings mLayerRendererSettings;
179 QString
name()
const override;
181 QString
group()
const override;
182 QString
groupId()
const override;
188 void initAlgorithm(
const QVariantMap &configuration = QVariantMap() )
override;
189 bool prepareAlgorithm(
const QVariantMap ¶meters, QgsProcessingContext &context, QgsProcessingFeedback *feedback )
override;
190 QVariantMap
processAlgorithm(
const QVariantMap ¶meters, QgsProcessingContext &context, QgsProcessingFeedback *feedback )
override;
195 QgsTriangularMesh mTriangularMesh;
197 QVector<double> mLevels;
199 QList<DataGroup> mDataPerGroup;
200 QgsCoordinateTransform mTransform;
201 QgsMeshRendererSettings mLayerRendererSettings;
202 QString mDateTimeString;
208 QString
name()
const override;
210 QString
group()
const override;
211 QString
groupId()
const override;
217 void initAlgorithm(
const QVariantMap &configuration = QVariantMap() )
override;
218 bool prepareAlgorithm(
const QVariantMap ¶meters, QgsProcessingContext &context, QgsProcessingFeedback *feedback )
override;
219 QVariantMap
processAlgorithm(
const QVariantMap ¶meters, QgsProcessingContext &context, QgsProcessingFeedback *feedback )
override;
224 QgsTriangularMesh mTriangularMesh;
226 QList<DataGroup> mDataPerGroup;
227 QgsCoordinateReferenceSystem mMeshLayerCrs;
228 QgsMeshRendererSettings mLayerRendererSettings;
234 QString
name()
const override;
236 QString
group()
const override;
237 QString
groupId()
const override;
243 void initAlgorithm(
const QVariantMap &configuration = QVariantMap() )
override;
244 bool prepareAlgorithm(
const QVariantMap ¶meters, QgsProcessingContext &context, QgsProcessingFeedback *feedback )
override;
245 QVariantMap
processAlgorithm(
const QVariantMap ¶meters, QgsProcessingContext &context, QgsProcessingFeedback *feedback )
override;
250 QgsTriangularMesh mTriangularMesh;
252 QgsCoordinateReferenceSystem mMeshLayerCrs;
253 QgsMeshRendererSettings mLayerRendererSettings;
255 QList<int> mGroupIndexes;
256 QList<DataGroup> mDatasets;
257 QList<qint64> mRelativeTimeSteps;
258 QStringList mTimeStepString;
259 QMap<qint64, QMap<int, int>> mRelativeTimeToData;
260 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 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.