16#ifndef QGSVECTORLAYERRENDERER_H 
   17#define QGSVECTORLAYERRENDERER_H 
   35#include <QElapsedTimer> 
   83    void prepareLabeling( 
QgsVectorLayer *layer, QSet<QString> &attributeNames );
 
   84    void prepareDiagrams( 
QgsVectorLayer *layer, QSet<QString> &attributeNames );
 
  104    std::unique_ptr<QgsFeedback> mFeedback = 
nullptr;
 
  114    QString mTemporalFilter;
 
  116    std::unique_ptr< QgsVectorLayerFeatureSource > mSource;
 
  119    std::vector< std::unique_ptr< QgsFeatureRenderer> > mRenderers;
 
  121    bool mDrawVertexMarkers;
 
  122    bool mVertexMarkerOnlyForSelection;
 
  124    double mVertexMarkerSize = 2.0;
 
  128    QSet<QString> mAttrNames;
 
  142    QPainter::CompositionMode mFeatureBlendMode;
 
  145    bool mSimplifyGeometry;
 
  147    QList< QgsMapClippingRegion > mClippingRegions;
 
  149    bool mApplyClipFilter = 
false;
 
  151    bool mApplyClipGeometries = 
false;
 
  153    bool mApplyLabelClipGeometries = 
false;
 
  154    bool mForceRasterRender = 
false;
 
  156    int mRenderTimeHint = 0;
 
  157    bool mBlockRenderUpdates = 
false;
 
  158    QElapsedTimer mElapsedTimer;
 
  160    bool mNoSetLayerExpressionContext = 
false;
 
  162    bool mEnableProfile = 
false;
 
  163    quint64 mPreparationTime = 0;
 
  165    std::unique_ptr< QgsSymbol > mSelectionSymbol;
 
 
GeometryType
The geometry types are used to group Qgis::WkbType in a coarse way.
VertexMarkerType
Editing vertex markers, used for showing vertices during a edit operation.
@ SemiTransparentCircle
Semi-transparent circle marker.
Stores the settings for rendering of all diagrams for a layer.
Evaluates and returns the diagram settings relating to a diagram for a specific feature.
Wrapper for iterator of features from vector data provider or vector layer.
Base class for feedback objects to be used for cancellation of something running in a worker thread.
Container of fields for a vector layer.
A geometry is the spatial representation of a feature.
A map clipping region (in map coordinates and CRS).
Base class for utility classes that encapsulate information necessary for rendering of map layers.
Contains information about the context of a rendering operation.
The QgsVectorLayerDiagramProvider class implements support for diagrams within the labeling engine.
Partial snapshot of vector layer's state (only the members necessary for access to features)
The QgsVectorLayerLabelProvider class implements a label provider for vector layers.
Implementation of threaded rendering for vector layers.
bool forceRasterRender() const override
Returns true if the renderer must be rendered to a raster paint device (e.g.
~QgsVectorLayerRenderer() override
void setLayerRenderingTimeHint(int time) override
Sets approximate render time (in ms) for the layer to render.
bool render() override
Do the rendering (based on data stored in the class).
QgsFeatureRenderer * featureRenderer()
Returns the feature renderer.
QgsFeedback * feedback() const override
Access to feedback object of the layer renderer (may be nullptr)
Represents a vector layer which manages a vector based data sets.
This class contains information how to simplify geometries fetched from a vector layer.
QSet< QgsFeatureId > QgsFeatureIds
QList< int > QgsAttributeList