18 #ifndef QGSMESHCALCUTILS_H
19 #define QGSMESHCALCUTILS_H
25 #include <QStringList>
37 #include "qgis_core.h"
48 class CORE_EXPORT QgsMeshCalcUtils
63 const QStringList &usedGroupNames,
79 const QStringList &usedGroupNames,
89 std::shared_ptr<const QgsMeshMemoryDatasetGroup> group(
const QString &groupName )
const;
98 std::shared_ptr<QgsMeshMemoryDataset> number(
double val,
double time )
const;
104 std::shared_ptr<QgsMeshMemoryDataset> copy( std::shared_ptr<const QgsMeshMemoryDataset> dataset0 )
const;
200 double ffilter(
double val1,
double filter )
const;
201 double fadd(
double val1,
double val2 )
const;
202 double fsubtract(
double val1,
double val2 )
const;
203 double fmultiply(
double val1,
double val2 )
const;
204 double fdivide(
double val1,
double val2 )
const;
205 double fpower(
double val1,
double val2 )
const;
206 double fequal(
double val1,
double val2 )
const;
207 double fnotEqual(
double val1,
double val2 )
const;
208 double fgreaterThan(
double val1,
double val2 )
const;
209 double flesserThan(
double val1,
double val2 )
const;
210 double flesserEqual(
double val1,
double val2 )
const;
211 double fgreaterEqual(
double val1,
double val2 )
const;
212 double flogicalAnd(
double val1,
double val2 )
const;
213 double flogicalOr(
double val1,
double val2 )
const;
214 double flogicalNot(
double val1 )
const;
215 double fchangeSign(
double val1 )
const;
216 double fmin(
double val1,
double val2 )
const;
217 double fmax(
double val1,
double val2 )
const;
218 double fabs(
double val1 )
const;
219 double fsumAggregated( QVector<double> &vals )
const;
220 double fminimumAggregated( QVector<double> &vals )
const;
221 double fmaximumAggregated( QVector<double> &vals )
const;
222 double faverageAggregated( QVector<double> &vals )
const;
231 std::shared_ptr<QgsMeshMemoryDatasetGroup> createMemoryDatasetGroup(
const QString &datasetGroupName,
const QgsInterval &relativeTime =
QgsInterval() )
const;
241 std::shared_ptr<QgsMeshMemoryDataset> createMemoryDataset(
const QgsMeshDatasetIndex &datasetIndex )
const;
252 int datasetIndex )
const;
258 int datasetIndex )
const;
270 void activate( std::shared_ptr<QgsMeshMemoryDataset> dataset,
271 std::shared_ptr<const QgsMeshMemoryDataset> refDataset =
nullptr )
const;
284 std::function<
double(
double )> func )
const;
289 std::function<
double(
double,
double )> func )
const;
293 std::function<
double( QVector<double>& )> func )
const;
296 const QgsMesh *nativeMesh()
const;
297 void updateMesh()
const;
302 QVector<double> mTimes;
304 QMap < QString, std::shared_ptr<QgsMeshMemoryDatasetGroup> > mDatasetGroupMap;
309 #endif // QGSMESHCALCUTILS_H