18#ifndef QGSMESHVECTORRENDERER_H
19#define QGSMESHVECTORRENDERER_H
35class QgsMeshLayerRendererFeedback;
39class QgsMeshVectorRenderer
43 QgsMeshVectorRenderer() =
default;
48 virtual ~QgsMeshVectorRenderer();
50 virtual void draw() = 0;
56 const QVector<double> &datasetValuesMag,
57 double datasetMagMaximumValue,
58 double datasetMagMinimumValue,
63 QgsMeshLayerRendererFeedback *feedBack,
75class QgsMeshVectorArrowRenderer :
public QgsMeshVectorRenderer
81 const QVector<double> &datasetValuesMag,
82 double datasetMagMaximumValue,
83 double datasetMagMinimumValue,
88 ~QgsMeshVectorArrowRenderer()
override;
97 void drawVectorDataOnVertices( );
99 void drawVectorDataOnFaces( );
101 void drawVectorDataOnEdges( );
103 void drawVectorDataOnPoints(
const QSet<int> indexesToRender,
const QVector<QgsMeshVertex> &points );
105 void drawVectorDataOnGrid( );
107 virtual void drawVector(
const QgsPointXY &lineStart,
double xVal,
double yVal,
double magnitude );
110 double &vectorLength,
125 double calcExtentBufferSize()
const;
129 const QVector<double> &mDatasetValuesMag;
130 double mMinMag = 0.0;
131 double mMaxMag = 0.0;
152class QgsMeshVectorWindBarbRenderer :
public QgsMeshVectorArrowRenderer
158 const QVector<double> &datasetValuesMag,
159 double datasetMagMaximumValue,
160 double datasetMagMinimumValue,
165 ~QgsMeshVectorWindBarbRenderer()
override;
168 void drawVector(
const QgsPointXY &lineStart,
double xVal,
double yVal,
double magnitude )
override;
Class defining color to render mesh datasets.
QgsMeshDataBlock is a block of integers/doubles that can be used to retrieve: active flags (e....
Represents a renderer settings for vector datasets.
A class to represent a 2D point.
A rectangle specified with double values.
Contains information about the context of a rendering operation.
Triangular/Derived Mesh is mesh with vertices in map coordinates.