18 #ifndef QGSMESHCALCUTILS_H 
   19 #define QGSMESHCALCUTILS_H 
   25 #include <QStringList> 
   37 #include "qgis_core.h" 
   49 class CORE_EXPORT QgsMeshCalcUtils
 
   64                       const QStringList &usedGroupNames,
 
   80                       const QStringList &usedGroupNames,
 
   90     std::shared_ptr<const QgsMeshMemoryDatasetGroup> group( 
const QString &groupName ) 
const;
 
   99     std::shared_ptr<QgsMeshMemoryDataset> number( 
double val, 
double time ) 
const;
 
  105     std::shared_ptr<QgsMeshMemoryDataset> copy( std::shared_ptr<const QgsMeshMemoryDataset> dataset0 ) 
const;
 
  201     double ffilter( 
double val1, 
double filter ) 
const;
 
  202     double fadd( 
double val1, 
double val2 ) 
const;
 
  203     double fsubtract( 
double val1, 
double val2 ) 
const;
 
  204     double fmultiply( 
double val1, 
double val2 ) 
const;
 
  205     double fdivide( 
double val1, 
double val2 ) 
const;
 
  206     double fpower( 
double val1, 
double val2 ) 
const;
 
  207     double fequal( 
double val1, 
double val2 ) 
const;
 
  208     double fnotEqual( 
double val1, 
double val2 ) 
const;
 
  209     double fgreaterThan( 
double val1, 
double val2 ) 
const;
 
  210     double flesserThan( 
double val1, 
double val2 ) 
const;
 
  211     double flesserEqual( 
double val1, 
double val2 ) 
const;
 
  212     double fgreaterEqual( 
double val1, 
double val2 ) 
const;
 
  213     double flogicalAnd( 
double val1, 
double val2 ) 
const;
 
  214     double flogicalOr( 
double val1, 
double val2 ) 
const;
 
  215     double flogicalNot( 
double val1 ) 
const;
 
  216     double fchangeSign( 
double val1 ) 
const;
 
  217     double fmin( 
double val1, 
double val2 ) 
const;
 
  218     double fmax( 
double val1, 
double val2 ) 
const;
 
  219     double fabs( 
double val1 ) 
const;
 
  220     double fsumAggregated( QVector<double> &vals ) 
const;
 
  221     double fminimumAggregated( QVector<double> &vals ) 
const;
 
  222     double fmaximumAggregated( QVector<double> &vals ) 
const;
 
  223     double faverageAggregated( QVector<double> &vals ) 
const;
 
  232     std::shared_ptr<QgsMeshMemoryDatasetGroup> createMemoryDatasetGroup( 
const QString &datasetGroupName, 
const QgsInterval &relativeTime = 
QgsInterval() ) 
const;
 
  242     std::shared_ptr<QgsMeshMemoryDataset> createMemoryDataset( 
const QgsMeshDatasetIndex &datasetIndex ) 
const;
 
  253         int datasetIndex ) 
const;
 
  259         int datasetIndex ) 
const;
 
  271     void activate( std::shared_ptr<QgsMeshMemoryDataset> dataset,
 
  272                    std::shared_ptr<const QgsMeshMemoryDataset> refDataset = 
nullptr ) 
const;
 
  285                 std::function<
double( 
double )> func ) 
const;
 
  290                 std::function<
double( 
double, 
double )> func ) 
const;
 
  294                    std::function<
double( QVector<double>& )> func ) 
const;
 
  297     const QgsMesh *nativeMesh() 
const;
 
  298     void updateMesh() 
const;
 
  304     QVector<double> mTimes;
 
  305     QMap < QString, std::shared_ptr<QgsMeshMemoryDatasetGroup> > mDatasetGroupMap; 
 
A geometry is the spatial representation of a feature.
A representation of the interval between two datetime values.
QgsMeshDatasetIndex is index that identifies the dataset group (e.g.
Represents a mesh layer supporting display of data on structured or unstructured meshes.
Class that represents a dataset group stored in memory.
A rectangle specified with double values.
Triangular/Derived Mesh is mesh with vertices in map coordinates.
Mesh - vertices, edges and faces.