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,
89 ~QgsMeshVectorArrowRenderer()
override;
98 void drawVectorDataOnVertices( );
100 void drawVectorDataOnFaces( );
102 void drawVectorDataOnEdges( );
104 void drawVectorDataOnPoints(
const QSet<int> indexesToRender,
const QVector<QgsMeshVertex> &points );
106 void drawVectorDataOnGrid( );
108 void drawVectorArrow(
const QgsPointXY &lineStart,
double xVal,
double yVal,
double magnitude );
111 double &vectorLength,
126 double calcExtentBufferSize()
const;
130 const QVector<double> &mDatasetValuesMag;
131 double mMinMag = 0.0;
132 double mMaxMag = 0.0;
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.