QGIS API Documentation 3.41.0-Master (45a0abf3bec)
|
Contains information about the context of a rendering operation. More...
#include <qgsrendercontext.h>
Public Member Functions | |
QgsRenderContext () | |
QgsRenderContext (const QgsRenderContext &rh) | |
~QgsRenderContext () override | |
void | addSymbolLayerClipGeometry (const QString &symbolLayerId, const QgsGeometry &geometry) |
Add a clip geometry to be applied to the symbolLayer before rendering. | |
Q_DECL_DEPRECATED void | addSymbolLayerClipPath (const QString &symbolLayerId, QPainterPath path) |
Add a clip path to be applied to the symbolLayer before rendering. | |
void | clearCustomProperty (const QString &property) |
Clears the specified custom rendering property. | |
Q_DECL_DEPRECATED void | clearCustomRenderingFlag (const QString &flag) |
Clears the specified custom rendering flag. | |
QList< QgsMapClippingRegion > | clippingRegions () const |
Returns the list of clipping regions to apply during the render. | |
double | convertFromMapUnits (double sizeInMapUnits, Qgis::RenderUnit outputUnit) const |
Converts a size from map units to the specified units. | |
double | convertFromPainterUnits (double size, Qgis::RenderUnit unit) const |
Converts a size from painter units (pixels) to the specified render unit. | |
double | convertMetersToMapUnits (double meters) const |
Convert meter distances to active MapUnit values for QgsUnitTypes::RenderMetersInMapUnits. | |
double | convertToMapUnits (double size, Qgis::RenderUnit unit, const QgsMapUnitScale &scale=QgsMapUnitScale()) const |
Converts a size from the specified units to map units. | |
double | convertToPainterUnits (double size, Qgis::RenderUnit unit, const QgsMapUnitScale &scale=QgsMapUnitScale(), Qgis::RenderSubcomponentProperty property=Qgis::RenderSubcomponentProperty::Generic) const |
Converts a size from the specified units to painter units (pixels). | |
QgsCoordinateTransform | coordinateTransform () const |
Returns the current coordinate transform for the context. | |
long long | currentFrame () const |
Returns the current frame number of the map (in frames per second), for maps which are part of an animation. | |
int | currentMaskId () const |
Returns the current mask id, which can be used with maskPainter() | |
QVariantMap | customProperties () const |
Returns custom rendering properties. | |
Q_DECL_DEPRECATED QVariantMap | customRenderingFlags () const |
Gets custom rendering flags. | |
QSize | deviceOutputSize () const |
Returns the device output size of the render. | |
float | devicePixelRatio () const |
Returns the device pixel ratio. | |
Q_DECL_DEPRECATED QSet< const QgsSymbolLayer * > | disabledSymbolLayers () const |
When rendering a map layer in a second pass (for selective masking), some symbol layers may be disabled. | |
QSet< QString > | disabledSymbolLayersV2 () const |
When rendering a map layer in a second pass (for selective masking), some symbol layers may be disabled. | |
const QgsDistanceArea & | distanceArea () const |
A general purpose distance and area calculator, capable of performing ellipsoid based calculations. | |
double | dpiTarget () const |
Returns the targeted DPI for rendering. | |
bool | drawEditingInformation () const |
Returns true if edit markers should be drawn during the render operation. | |
QgsElevationMap * | elevationMap () const |
Returns the destination elevation map for the render operation. | |
QgsExpressionContext & | expressionContext () |
Gets the expression context. | |
const QgsExpressionContext & | expressionContext () const |
Gets the expression context (const version). | |
const QgsRectangle & | extent () const |
When rendering a map layer, calling this method returns the "clipping" extent for the layer (in the layer's CRS). | |
QgsGeometry | featureClipGeometry () const |
Returns the geometry to use to clip features at render time. | |
const QgsFeatureFilterProvider * | featureFilterProvider () const |
Gets the filter feature provider used for additional filtering of rendered features. | |
QgsFeedback * | feedback () const |
Returns the feedback object that can be queried regularly during rendering to check if rendering should be canceled, if set. | |
Qgis::RenderContextFlags | flags () const |
Returns combination of flags used for rendering. | |
bool | forceVectorOutput () const |
Returns true if rendering operations should use vector operations instead of any faster raster shortcuts. | |
double | frameRate () const |
Returns the frame rate of the map, for maps which are part of an animation. | |
const QgsAbstractGeometry * | geometry () const |
Returns pointer to the unsegmentized geometry. | |
bool | hasRenderedFeatureHandlers () const |
Returns true if the context has any rendered feature handlers. | |
QImage::Format | imageFormat () const |
Returns the QImage format which should be used for QImages created during rendering. | |
bool | isGuiPreview () const |
Returns the Gui preview mode. | |
bool | isSymbolLayerEnabled (const QgsSymbolLayer *layer) const |
When rendering a map layer in a second pass (for selective masking), some symbol layers may be disabled. | |
QgsLabelingEngine * | labelingEngine () const |
Gets access to new labeling engine (may be nullptr ). | |
QgsLabelSink * | labelSink () const |
Returns the associated label sink, or nullptr if not set. | |
QgsRectangle | mapExtent () const |
Returns the original extent of the map being rendered. | |
const QgsMapToPixel & | mapToPixel () const |
Returns the context's map to pixel transform, which transforms between map coordinates and device coordinates. | |
const QgsMaskIdProvider * | maskIdProvider () const |
Returns the mask id provider attached to the context. | |
QPainter * | maskPainter (int id=0) |
Returns a mask QPainter for the render operation. | |
QgsMaskRenderSettings & | maskSettings () |
Returns a reference to the mask render settings, which control how masks are drawn and behave during render operations. | |
const QgsMaskRenderSettings & | maskSettings () const |
Returns a reference to the mask render settings, which control how masks are drawn and behave during render operations. | |
QgsRenderContext & | operator= (const QgsRenderContext &rh) |
QSize | outputSize () const |
Returns the size of the resulting rendered image, in pixels. | |
QPainter * | painter () |
Returns the destination QPainter for the render operation. | |
const QPainter * | painter () const |
Returns the const destination QPainter for the render operation. | |
const QgsPathResolver & | pathResolver () const |
Returns the path resolver for conversion between relative and absolute paths during rendering operations, e.g. | |
QPainter * | previewRenderPainter () |
Returns the const destination QPainter for temporary in-progress preview renders. | |
const QPainter * | previewRenderPainter () const |
Returns the const destination QPainter for temporary in-progress preview renders. | |
QList< QgsRenderedFeatureHandlerInterface * > | renderedFeatureHandlers () const |
Returns the list of rendered feature handlers to use while rendering map layers. | |
double | rendererScale () const |
Returns the renderer map scale. | |
Qgis::RendererUsage | rendererUsage () const |
Returns the renderer usage. | |
bool | renderingStopped () const |
Returns true if the rendering operation has been stopped and any ongoing rendering should be canceled immediately. | |
double | scaleFactor () const |
Returns the scaling factor for the render to convert painter units to physical sizes. | |
double | segmentationTolerance () const |
Gets the segmentation tolerance applied when rendering curved geometries. | |
QgsAbstractGeometry::SegmentationToleranceType | segmentationToleranceType () const |
Gets segmentation tolerance type (maximum angle or maximum difference between curve and approximation) | |
QColor | selectionColor () const |
Returns the color to use when rendering selected features. | |
void | setCoordinateTransform (const QgsCoordinateTransform &t) |
Sets the current coordinate transform for the context. | |
void | setCurrentFrame (long long frame) |
Sets the current frame of the map, for maps which are part of an animation. | |
void | setCurrentMaskId (int id) |
Stores a mask id as the "current" one. | |
void | setCustomProperty (const QString &property, const QVariant &value) |
Sets a custom rendering property. | |
Q_DECL_DEPRECATED void | setCustomRenderingFlag (const QString &flag, const QVariant &value) |
Sets a custom rendering flag. | |
void | setDevicePixelRatio (float ratio) |
Sets the device pixel ratio. | |
Q_DECL_DEPRECATED void | setDisabledSymbolLayers (const QSet< const QgsSymbolLayer * > &symbolLayers) |
When rendering a map layer in a second pass (for selective masking), some symbol layers may be disabled. | |
void | setDisabledSymbolLayersV2 (const QSet< QString > &symbolLayers) |
When rendering a map layer in a second pass (for selective masking), some symbol layers may be disabled. | |
void | setDistanceArea (const QgsDistanceArea &distanceArea) |
A general purpose distance and area calculator, capable of performing ellipsoid based calculations. | |
void | setDpiTarget (double dpi) |
Sets the targeted dpi for rendering. | |
void | setDrawEditingInformation (bool b) |
Sets whether edit markers should be drawn during the render operation. | |
void | setElevationMap (QgsElevationMap *map) |
Sets the destination elevation map for the render operation. | |
void | setExpressionContext (const QgsExpressionContext &context) |
Sets the expression context. | |
void | setExtent (const QgsRectangle &extent) |
When rendering a map layer, calling this method sets the "clipping" extent for the layer (in the layer's CRS). | |
void | setFeatureClipGeometry (const QgsGeometry &geometry) |
Sets a geometry to use to clip features at render time. | |
void | setFeatureFilterProvider (const QgsFeatureFilterProvider *ffp) |
Set a filter feature provider used for additional filtering of rendered features. | |
void | setFeedback (QgsFeedback *feedback) |
Attach a feedback object that can be queried regularly during rendering to check if rendering should be canceled. | |
void | setFlag (Qgis::RenderContextFlag flag, bool on=true) |
Enable or disable a particular flag (other flags are not affected) | |
void | setFlags (Qgis::RenderContextFlags flags) |
Set combination of flags that will be used for rendering. | |
void | setForceVectorOutput (bool force) |
Sets whether rendering operations should use vector operations instead of any faster raster shortcuts. | |
void | setFrameRate (double rate) |
Sets the frame rate of the map (in frames per second), for maps which are part of an animation. | |
void | setGeometry (const QgsAbstractGeometry *geometry) |
Sets pointer to original (unsegmentized) geometry. | |
void | setImageFormat (QImage::Format format) |
Sets QImage format which should be used for QImages created during rendering. | |
void | setIsGuiPreview (bool preview) |
Sets GUI preview mode. | |
void | setLabelingEngine (QgsLabelingEngine *engine) |
Assigns the labeling engine. | |
void | setLabelSink (QgsLabelSink *sink) |
Assigns the label sink which will take over responsibility for handling labels. | |
void | setMapExtent (const QgsRectangle &extent) |
Sets the original extent of the map being rendered. | |
void | setMapToPixel (const QgsMapToPixel &mtp) |
Sets the context's map to pixel transform, which transforms between map coordinates and device coordinates. | |
void | setMaskIdProvider (QgsMaskIdProvider *provider) |
Attaches a mask id provider to the context. | |
void | setMaskPainter (QPainter *p, int id=0) |
Sets a mask QPainter for the render operation. | |
void | setMaskSettings (const QgsMaskRenderSettings &settings) |
Sets the mask render settings, which control how masks are drawn and behave during render operations. | |
void | setOutputSize (QSize size) |
Sets the size of the resulting rendered image, in pixels. | |
void | setPainter (QPainter *p) |
Sets the destination QPainter for the render operation. | |
void | setPainterFlagsUsingContext (QPainter *painter=nullptr) const |
Sets relevant flags on a destination painter, using the flags and settings currently defined for the render context. | |
void | setPathResolver (const QgsPathResolver &resolver) |
Sets the path resolver for conversion between relative and absolute paths during rendering operations, e.g. | |
void | setPreviewRenderPainter (QPainter *painter) |
Sets the destination painter for temporary in-progress preview renders. | |
void | setRendererScale (double scale) |
Sets the renderer map scale. | |
void | setRendererUsage (Qgis::RendererUsage usage) |
Sets the renderer usage. | |
void | setRenderingStopped (bool stopped) |
Sets whether the rendering operation has been stopped and any ongoing rendering should be canceled immediately. | |
void | setScaleFactor (double factor) |
Sets the scaling factor for the render to convert painter units to physical sizes. | |
void | setSegmentationTolerance (double tolerance) |
Sets the segmentation tolerance applied when rendering curved geometries. | |
void | setSegmentationToleranceType (QgsAbstractGeometry::SegmentationToleranceType type) |
Sets segmentation tolerance type (maximum angle or maximum difference between curve and approximation) | |
void | setSelectionColor (const QColor &color) |
Sets the color to use when rendering selected features. | |
void | setShowSelection (bool showSelection) |
Sets whether vector selections should be shown in the rendered map. | |
void | setSymbologyReferenceScale (double scale) |
Sets the symbology reference scale. | |
void | setTextRenderFormat (Qgis::TextRenderFormat format) |
Sets the text render format, which dictates how text is rendered (e.g. | |
void | setTextureOrigin (const QPointF &origin) |
Sets the texture origin, which should be used as a brush transform when rendering using QBrush objects. | |
void | setTransformContext (const QgsCoordinateTransformContext &context) |
Sets the context's coordinate transform context, which stores various information regarding which datum transforms should be used when transforming points from a source to destination coordinate reference system. | |
void | setUseAdvancedEffects (bool enabled) |
Used to enable or disable advanced effects such as blend modes. | |
void | setUseRenderingOptimization (bool enabled) |
Sets whether the rendering optimization (geometry simplification) should be executed. | |
void | setVectorSimplifyMethod (const QgsVectorSimplifyMethod &simplifyMethod) |
Sets the simplification setting to use when rendering vector layers. | |
void | setZRange (const QgsDoubleRange &range) |
Sets the range of z-values which should be rendered. | |
bool | showSelection () const |
Returns true if vector selections should be shown in the rendered map. | |
QVector< QgsGeometry > | symbolLayerClipGeometries (const QString &symbolLayerId) const |
Returns clipping geometries to be applied to the symbolLayer before rendering. | |
Q_DECL_DEPRECATED QList< QPainterPath > | symbolLayerClipPaths (const QString &symbolLayerId) const |
Returns clip paths to be applied to the symbolLayer before rendering. | |
bool | symbolLayerHasClipGeometries (const QString &symbolLayerId) const |
Returns true if the symbol layer with matching ID has any associated clip geometries. | |
double | symbologyReferenceScale () const |
Returns the symbology reference scale. | |
bool | testFlag (Qgis::RenderContextFlag flag) const |
Check whether a particular flag is enabled. | |
Qgis::TextRenderFormat | textRenderFormat () const |
Returns the text render format, which dictates how text is rendered (e.g. | |
QPointF | textureOrigin () const |
Returns the texture origin, which should be used as a brush transform when rendering using QBrush objects. | |
QgsCoordinateTransformContext | transformContext () const |
Returns the context's coordinate transform context, which stores various information regarding which datum transforms should be used when transforming points from a source to destination coordinate reference system. | |
bool | useAdvancedEffects () const |
Returns true if advanced effects such as blend modes such be used. | |
bool | useRenderingOptimization () const |
Returns true if the rendering optimization (geometry simplification) can be executed. | |
QgsVectorSimplifyMethod & | vectorSimplifyMethod () |
Returns the simplification settings to use when rendering vector layers. | |
const QgsVectorSimplifyMethod & | vectorSimplifyMethod () const |
Returns the simplification settings to use when rendering vector layers. | |
QgsDoubleRange | zRange () const |
Returns the range of z-values which should be rendered. | |
Public Member Functions inherited from QgsTemporalRangeObject | |
QgsTemporalRangeObject (bool enabled=false) | |
Constructor QgsTemporalRangeObject. | |
virtual | ~QgsTemporalRangeObject ()=default |
bool | isTemporal () const |
Returns true if the object's temporal range is enabled, and the object will be filtered when rendering maps with a specific time range set. | |
void | setIsTemporal (bool enabled) |
Sets whether the temporal range is enabled (i.e. | |
void | setTemporalRange (const QgsDateTimeRange &range) |
Sets the temporal range for the object. | |
const QgsDateTimeRange & | temporalRange () const |
Returns the datetime range for the object. | |
Static Public Member Functions | |
static QgsRenderContext | fromMapSettings (const QgsMapSettings &mapSettings) |
create initialized QgsRenderContext instance from given QgsMapSettings | |
static QgsRenderContext | fromQPainter (QPainter *painter) |
Creates a default render context given a pixel based QPainter destination. | |
Contains information about the context of a rendering operation.
The context of a rendering operation defines properties such as the conversion ratio between screen and map units, the extents to be rendered etc.
Definition at line 61 of file qgsrendercontext.h.
QgsRenderContext::QgsRenderContext | ( | ) |
Definition at line 32 of file qgsrendercontext.cpp.
|
overridedefault |
QgsRenderContext::QgsRenderContext | ( | const QgsRenderContext & | rh | ) |
Definition at line 43 of file qgsrendercontext.cpp.
void QgsRenderContext::addSymbolLayerClipGeometry | ( | const QString & | symbolLayerId, |
const QgsGeometry & | geometry | ||
) |
Add a clip geometry to be applied to the symbolLayer before rendering.
Definition at line 870 of file qgsrendercontext.cpp.
void QgsRenderContext::addSymbolLayerClipPath | ( | const QString & | symbolLayerId, |
QPainterPath | path | ||
) |
Add a clip path to be applied to the symbolLayer before rendering.
Definition at line 851 of file qgsrendercontext.cpp.
|
inline |
Clears the specified custom rendering property.
Definition at line 923 of file qgsrendercontext.h.
|
inline |
Clears the specified custom rendering flag.
flag | the flag name |
Definition at line 915 of file qgsrendercontext.h.
QList< QgsMapClippingRegion > QgsRenderContext::clippingRegions | ( | ) | const |
Returns the list of clipping regions to apply during the render.
These regions are always in the final destination CRS for the map.
Definition at line 756 of file qgsrendercontext.cpp.
double QgsRenderContext::convertFromMapUnits | ( | double | sizeInMapUnits, |
Qgis::RenderUnit | outputUnit | ||
) | const |
Converts a size from map units to the specified units.
Definition at line 623 of file qgsrendercontext.cpp.
double QgsRenderContext::convertFromPainterUnits | ( | double | size, |
Qgis::RenderUnit | unit | ||
) | const |
Converts a size from painter units (pixels) to the specified render unit.
Definition at line 495 of file qgsrendercontext.cpp.
double QgsRenderContext::convertMetersToMapUnits | ( | double | meters | ) | const |
Convert meter distances to active MapUnit values for QgsUnitTypes::RenderMetersInMapUnits.
Definition at line 663 of file qgsrendercontext.cpp.
double QgsRenderContext::convertToMapUnits | ( | double | size, |
Qgis::RenderUnit | unit, | ||
const QgsMapUnitScale & | scale = QgsMapUnitScale() |
||
) | const |
Converts a size from the specified units to map units.
The conversion respects the limits specified by the optional scale parameter.
Definition at line 557 of file qgsrendercontext.cpp.
double QgsRenderContext::convertToPainterUnits | ( | double | size, |
Qgis::RenderUnit | unit, | ||
const QgsMapUnitScale & | scale = QgsMapUnitScale() , |
||
Qgis::RenderSubcomponentProperty | property = Qgis::RenderSubcomponentProperty::Generic |
||
) | const |
Converts a size from the specified units to painter units (pixels).
The conversion respects the limits specified by the optional scale parameter.
Since QGIS 3.22 the optional property argument can be used to specify the associated property. This is used in some contexts to refine the converted size. For example, a Qgis::RenderSubcomponentProperty::BlurSize property will be limited to a suitably fast range when the render context has the Qgis::RenderContextFlag::RenderSymbolPreview set.
Definition at line 387 of file qgsrendercontext.cpp.
|
inline |
Returns the current coordinate transform for the context.
This represents the coordinate transform required to transform a layer which is being rendered back to the CRS of the rendered map. If no coordinate transformation is required, or the render context is not associated with a map layer render, then an invalid coordinate transformation is returned.
Definition at line 234 of file qgsrendercontext.h.
long long QgsRenderContext::currentFrame | ( | ) | const |
Returns the current frame number of the map (in frames per second), for maps which are part of an animation.
Returns -1 if the map is not associated with an animation.
Definition at line 831 of file qgsrendercontext.cpp.
|
inline |
Returns the current mask id, which can be used with maskPainter()
Definition at line 847 of file qgsrendercontext.h.
|
inline |
Returns custom rendering properties.
Objects might honour these to alter their rendering.
Definition at line 888 of file qgsrendercontext.h.
|
inline |
Gets custom rendering flags.
Layers might honour these to alter their rendering.
Definition at line 878 of file qgsrendercontext.h.
QSize QgsRenderContext::deviceOutputSize | ( | ) | const |
Returns the device output size of the render.
This is equivalent to the output size multiplicated by the device pixel ratio.
Definition at line 816 of file qgsrendercontext.cpp.
float QgsRenderContext::devicePixelRatio | ( | ) | const |
Returns the device pixel ratio.
Common values are 1 for normal-dpi displays and 2 for high-dpi "retina" displays.
Definition at line 806 of file qgsrendercontext.cpp.
QSet< const QgsSymbolLayer * > QgsRenderContext::disabledSymbolLayers | ( | ) | const |
When rendering a map layer in a second pass (for selective masking), some symbol layers may be disabled.
Returns the list of disabled symbol layers.
Definition at line 907 of file qgsrendercontext.cpp.
QSet< QString > QgsRenderContext::disabledSymbolLayersV2 | ( | ) | const |
When rendering a map layer in a second pass (for selective masking), some symbol layers may be disabled.
Returns the list of disabled symbol layer ids.
Definition at line 912 of file qgsrendercontext.cpp.
|
inline |
A general purpose distance and area calculator, capable of performing ellipsoid based calculations.
Definition at line 239 of file qgsrendercontext.h.
|
inline |
Returns the targeted DPI for rendering.
Definition at line 325 of file qgsrendercontext.h.
bool QgsRenderContext::drawEditingInformation | ( | ) | const |
Returns true
if edit markers should be drawn during the render operation.
Definition at line 330 of file qgsrendercontext.cpp.
QgsElevationMap * QgsRenderContext::elevationMap | ( | ) | const |
Returns the destination elevation map for the render operation.
Definition at line 841 of file qgsrendercontext.cpp.
|
inline |
Gets the expression context.
This context should be used for all expression evaluation associated with this render context.
Definition at line 681 of file qgsrendercontext.h.
|
inline |
Gets the expression context (const version).
This context should be used for all expression evaluation associated with this render context.
Definition at line 689 of file qgsrendercontext.h.
|
inline |
When rendering a map layer, calling this method returns the "clipping" extent for the layer (in the layer's CRS).
This extent is a "worst-case" scenario, which is guaranteed to cover the complete visible portion of the layer when it is rendered to a map. It is often larger than the actual visible portion of that layer.
Definition at line 290 of file qgsrendercontext.h.
QgsGeometry QgsRenderContext::featureClipGeometry | ( | ) | const |
Returns the geometry to use to clip features at render time.
When vector features are rendered, they should be clipped to this geometry.
Definition at line 761 of file qgsrendercontext.cpp.
const QgsFeatureFilterProvider * QgsRenderContext::featureFilterProvider | ( | ) | const |
Gets the filter feature provider used for additional filtering of rendered features.
Definition at line 382 of file qgsrendercontext.cpp.
QgsFeedback * QgsRenderContext::feedback | ( | ) | const |
Returns the feedback object that can be queried regularly during rendering to check if rendering should be canceled, if set.
Maybe be nullptr
.
Definition at line 218 of file qgsrendercontext.cpp.
Qgis::RenderContextFlags QgsRenderContext::flags | ( | ) | const |
Returns combination of flags used for rendering.
Definition at line 236 of file qgsrendercontext.cpp.
bool QgsRenderContext::forceVectorOutput | ( | ) | const |
Returns true
if rendering operations should use vector operations instead of any faster raster shortcuts.
Definition at line 315 of file qgsrendercontext.cpp.
double QgsRenderContext::frameRate | ( | ) | const |
Returns the frame rate of the map, for maps which are part of an animation.
Returns -1 if the map is not associated with an animation.
Definition at line 821 of file qgsrendercontext.cpp.
|
static |
create initialized QgsRenderContext instance from given QgsMapSettings
Definition at line 246 of file qgsrendercontext.cpp.
|
static |
Creates a default render context given a pixel based QPainter destination.
If no painter is specified or the painter has no device, then a default DPI of 88 will be assumed.
Definition at line 160 of file qgsrendercontext.cpp.
|
inline |
Returns pointer to the unsegmentized geometry.
Definition at line 692 of file qgsrendercontext.h.
|
inline |
Returns true
if the context has any rendered feature handlers.
Definition at line 815 of file qgsrendercontext.h.
|
inline |
Returns the QImage format which should be used for QImages created during rendering.
Definition at line 1130 of file qgsrendercontext.h.
|
inline |
Returns the Gui preview mode.
GUI preview mode is used to change the behavior of some renderings when they are done to preview of symbology in the GUI. This is especially used to display mask symbol layers rather than painting them in a mask painter, which is not meant to be visible, by definition.
Definition at line 870 of file qgsrendercontext.h.
bool QgsRenderContext::isSymbolLayerEnabled | ( | const QgsSymbolLayer * | layer | ) | const |
When rendering a map layer in a second pass (for selective masking), some symbol layers may be disabled.
Checks whether a given symbol layer has been disabled for the current pass.
Definition at line 917 of file qgsrendercontext.cpp.
|
inline |
Gets access to new labeling engine (may be nullptr
).
Definition at line 419 of file qgsrendercontext.h.
|
inline |
Returns the associated label sink, or nullptr
if not set.
Definition at line 426 of file qgsrendercontext.h.
|
inline |
Returns the original extent of the map being rendered.
Unlike extent(), this extent is always in the final destination CRS for the map render and represents the exact bounds of the map being rendered.
Definition at line 302 of file qgsrendercontext.h.
|
inline |
Returns the context's map to pixel transform, which transforms between map coordinates and device coordinates.
Definition at line 309 of file qgsrendercontext.h.
|
inline |
Returns the mask id provider attached to the context.
Definition at line 832 of file qgsrendercontext.h.
|
inline |
Returns a mask QPainter for the render operation.
Multiple mask painters can be defined, each with a unique identifier. nullptr is returned if a mask painter with the given identifier does not exist. This is currently used to implement selective masking.
Definition at line 163 of file qgsrendercontext.h.
|
inline |
Returns a reference to the mask render settings, which control how masks are drawn and behave during render operations.
Definition at line 995 of file qgsrendercontext.h.
|
inline |
Returns a reference to the mask render settings, which control how masks are drawn and behave during render operations.
Definition at line 986 of file qgsrendercontext.h.
QgsRenderContext & QgsRenderContext::operator= | ( | const QgsRenderContext & | rh | ) |
Definition at line 101 of file qgsrendercontext.cpp.
QSize QgsRenderContext::outputSize | ( | ) | const |
Returns the size of the resulting rendered image, in pixels.
Definition at line 796 of file qgsrendercontext.cpp.
|
inline |
Returns the destination QPainter for the render operation.
Definition at line 108 of file qgsrendercontext.h.
|
inline |
Returns the const destination QPainter for the render operation.
Definition at line 117 of file qgsrendercontext.h.
|
inline |
Returns the path resolver for conversion between relative and absolute paths during rendering operations, e.g.
for resolving relative symbol paths.
Definition at line 265 of file qgsrendercontext.h.
|
inline |
Returns the const destination QPainter for temporary in-progress preview renders.
May be nullptr
if temporary in-progress preview renders are not required.
Definition at line 128 of file qgsrendercontext.h.
|
inline |
Returns the const destination QPainter for temporary in-progress preview renders.
May be nullptr
if temporary in-progress preview renders are not required.
Definition at line 140 of file qgsrendercontext.h.
QList< QgsRenderedFeatureHandlerInterface * > QgsRenderContext::renderedFeatureHandlers | ( | ) | const |
Returns the list of rendered feature handlers to use while rendering map layers.
Definition at line 751 of file qgsrendercontext.cpp.
|
inline |
Returns the renderer map scale.
This will match the desired scale denominator for the rendered map, eg 1000.0 for a 1:1000 map render.
Definition at line 395 of file qgsrendercontext.h.
|
inline |
Returns the renderer usage.
Definition at line 1138 of file qgsrendercontext.h.
|
inline |
Returns true
if the rendering operation has been stopped and any ongoing rendering should be canceled immediately.
Definition at line 336 of file qgsrendercontext.h.
|
inline |
Returns the scaling factor for the render to convert painter units to physical sizes.
This is usually equal to the number of pixels per millimeter.
Definition at line 317 of file qgsrendercontext.h.
|
inline |
Gets the segmentation tolerance applied when rendering curved geometries.
Definition at line 722 of file qgsrendercontext.h.
|
inline |
Gets segmentation tolerance type (maximum angle or maximum difference between curve and approximation)
Definition at line 736 of file qgsrendercontext.h.
|
inline |
Returns the color to use when rendering selected features.
Definition at line 433 of file qgsrendercontext.h.
void QgsRenderContext::setCoordinateTransform | ( | const QgsCoordinateTransform & | t | ) |
Sets the current coordinate transform for the context.
This represents the coordinate transform required to transform the layer which is being rendered back to the CRS of the rendered map.
Set to an invalid QgsCoordinateTransform to indicate that no transformation is required.
Definition at line 340 of file qgsrendercontext.cpp.
void QgsRenderContext::setCurrentFrame | ( | long long | frame | ) |
Sets the current frame of the map, for maps which are part of an animation.
Defaults to -1 if the map is not associated with an animation.
Definition at line 836 of file qgsrendercontext.cpp.
|
inline |
Stores a mask id as the "current" one.
Definition at line 839 of file qgsrendercontext.h.
|
inline |
Sets a custom rendering property.
Objects might honour these to alter their rendering.
Definition at line 907 of file qgsrendercontext.h.
|
inline |
Sets a custom rendering flag.
Layers might honour these to alter their rendering.
flag | the flag name |
value | the flag value |
Definition at line 897 of file qgsrendercontext.h.
void QgsRenderContext::setDevicePixelRatio | ( | float | ratio | ) |
Sets the device pixel ratio.
Common values are 1 for normal-dpi displays and 2 for high-dpi "retina" displays.
Definition at line 811 of file qgsrendercontext.cpp.
void QgsRenderContext::setDisabledSymbolLayers | ( | const QSet< const QgsSymbolLayer * > & | symbolLayers | ) |
When rendering a map layer in a second pass (for selective masking), some symbol layers may be disabled.
Sets the list of disabled symbol layers.
Definition at line 895 of file qgsrendercontext.cpp.
void QgsRenderContext::setDisabledSymbolLayersV2 | ( | const QSet< QString > & | symbolLayers | ) |
When rendering a map layer in a second pass (for selective masking), some symbol layers may be disabled.
Sets the list of disabled symbol layer ids.
Definition at line 902 of file qgsrendercontext.cpp.
|
inline |
A general purpose distance and area calculator, capable of performing ellipsoid based calculations.
Will be used to convert meter distances to active MapUnit values for QgsUnitTypes::RenderMetersInMapUnits
Definition at line 514 of file qgsrendercontext.h.
|
inline |
Sets the targeted dpi for rendering.
Definition at line 530 of file qgsrendercontext.h.
void QgsRenderContext::setDrawEditingInformation | ( | bool | b | ) |
Sets whether edit markers should be drawn during the render operation.
Definition at line 345 of file qgsrendercontext.cpp.
void QgsRenderContext::setElevationMap | ( | QgsElevationMap * | map | ) |
Sets the destination elevation map for the render operation.
Ownership of the elevation map is not transferred and the QgsElevationMap destination must stay alive for the duration of any rendering operations.
Definition at line 846 of file qgsrendercontext.cpp.
|
inline |
Sets the expression context.
This context is used for all expression evaluation associated with this render context.
Definition at line 674 of file qgsrendercontext.h.
|
inline |
When rendering a map layer, calling this method sets the "clipping" extent for the layer (in the layer's CRS).
This extent should be a "worst-case" scenario, which is guaranteed to completely cover the entire visible portion of the layer when it is rendered to the map. It may be larger than the actual visible area, but MUST contain at least the entire visible area.
Definition at line 477 of file qgsrendercontext.h.
void QgsRenderContext::setFeatureClipGeometry | ( | const QgsGeometry & | geometry | ) |
Sets a geometry to use to clip features at render time.
Definition at line 766 of file qgsrendercontext.cpp.
void QgsRenderContext::setFeatureFilterProvider | ( | const QgsFeatureFilterProvider * | ffp | ) |
Set a filter feature provider used for additional filtering of rendered features.
ffp | the filter feature provider |
Definition at line 370 of file qgsrendercontext.cpp.
void QgsRenderContext::setFeedback | ( | QgsFeedback * | feedback | ) |
Attach a feedback object that can be queried regularly during rendering to check if rendering should be canceled.
Ownership of feedback is NOT transferred, and the caller must take care that it exists for the lifetime of the render context.
Definition at line 213 of file qgsrendercontext.cpp.
void QgsRenderContext::setFlag | ( | Qgis::RenderContextFlag | flag, |
bool | on = true |
||
) |
Enable or disable a particular flag (other flags are not affected)
Definition at line 228 of file qgsrendercontext.cpp.
void QgsRenderContext::setFlags | ( | Qgis::RenderContextFlags | flags | ) |
Set combination of flags that will be used for rendering.
Definition at line 223 of file qgsrendercontext.cpp.
void QgsRenderContext::setForceVectorOutput | ( | bool | force | ) |
Sets whether rendering operations should use vector operations instead of any faster raster shortcuts.
Definition at line 350 of file qgsrendercontext.cpp.
void QgsRenderContext::setFrameRate | ( | double | rate | ) |
Sets the frame rate of the map (in frames per second), for maps which are part of an animation.
Defaults to -1 if the map is not associated with an animation.
Definition at line 826 of file qgsrendercontext.cpp.
|
inline |
Sets pointer to original (unsegmentized) geometry.
Definition at line 694 of file qgsrendercontext.h.
|
inline |
Sets QImage format which should be used for QImages created during rendering.
Definition at line 1121 of file qgsrendercontext.h.
|
inline |
Sets GUI preview mode.
GUI preview mode is used to change the behavior of some renderings when they are done to preview of symbology in the GUI. This is especially used to display mask symbol layers rather than painting them in a mask painter, which is not meant to be visible, by definition.
Definition at line 858 of file qgsrendercontext.h.
|
inline |
Assigns the labeling engine.
Definition at line 597 of file qgsrendercontext.h.
|
inline |
Assigns the label sink which will take over responsibility for handling labels.
Definition at line 605 of file qgsrendercontext.h.
|
inline |
Sets the original extent of the map being rendered.
Unlike setExtent(), this extent is always in the final destination CRS for the map render and represents the exact bounds of the map being rendered.
Definition at line 489 of file qgsrendercontext.h.
|
inline |
Sets the context's map to pixel transform, which transforms between map coordinates and device coordinates.
Definition at line 463 of file qgsrendercontext.h.
|
inline |
Attaches a mask id provider to the context.
It will allow some rendering operations to set the current mask id based on the context (label layer names and label rules for instance).
Definition at line 825 of file qgsrendercontext.h.
|
inline |
Sets a mask QPainter for the render operation.
Ownership of the painter is not transferred and the QPainter must stay alive for the duration of any rendering operations. Multiple mask painters can be defined and the second parameter gives a unique identifier to each one.
Definition at line 583 of file qgsrendercontext.h.
void QgsRenderContext::setMaskSettings | ( | const QgsMaskRenderSettings & | settings | ) |
Sets the mask render settings, which control how masks are drawn and behave during render operations.
Definition at line 781 of file qgsrendercontext.cpp.
void QgsRenderContext::setOutputSize | ( | QSize | size | ) |
Sets the size of the resulting rendered image, in pixels.
Definition at line 801 of file qgsrendercontext.cpp.
|
inline |
Sets the destination QPainter for the render operation.
Ownership of the painter is not transferred and the QPainter destination must stay alive for the duration of any rendering operations.
Definition at line 562 of file qgsrendercontext.h.
void QgsRenderContext::setPainterFlagsUsingContext | ( | QPainter * | painter = nullptr | ) | const |
Sets relevant flags on a destination painter, using the flags and settings currently defined for the render context.
If no painter is specified, then the flags will be applied to the render context's painter().
Definition at line 183 of file qgsrendercontext.cpp.
|
inline |
Sets the path resolver for conversion between relative and absolute paths during rendering operations, e.g.
for resolving relative symbol paths.
Definition at line 273 of file qgsrendercontext.h.
|
inline |
Sets the destination painter for temporary in-progress preview renders.
Ownership of painter is not transferred and the QPainter destination must stay alive for the duration of any rendering operations.
painter may be nullptr
if temporary in-progress preview renders are not required.
Definition at line 574 of file qgsrendercontext.h.
|
inline |
Sets the renderer map scale.
This should match the desired scale denominator for the rendered map, eg 1000.0 for a 1:1000 map render.
Definition at line 537 of file qgsrendercontext.h.
|
inline |
Sets the renderer usage.
Definition at line 1149 of file qgsrendercontext.h.
|
inline |
Sets whether the rendering operation has been stopped and any ongoing rendering should be canceled immediately.
Definition at line 508 of file qgsrendercontext.h.
|
inline |
Sets the scaling factor for the render to convert painter units to physical sizes.
This should usually be equal to the number of pixels per millimeter.
Definition at line 522 of file qgsrendercontext.h.
|
inline |
Sets the segmentation tolerance applied when rendering curved geometries.
tolerance | the segmentation tolerance |
Definition at line 716 of file qgsrendercontext.h.
|
inline |
Sets segmentation tolerance type (maximum angle or maximum difference between curve and approximation)
type | the segmentation tolerance typename |
Definition at line 730 of file qgsrendercontext.h.
|
inline |
Sets the color to use when rendering selected features.
Definition at line 612 of file qgsrendercontext.h.
void QgsRenderContext::setShowSelection | ( | bool | showSelection | ) |
Sets whether vector selections should be shown in the rendered map.
showSelection | set to true if selections should be shown |
Definition at line 355 of file qgsrendercontext.cpp.
|
inline |
Sets the symbology reference scale.
This should match the desired scale denominator for the rendered map, eg 1000.0 for a 1:1000 map render. Set to -1 to disable symbology scaling by reference scale.
The symbology reference scale is an optional property which specifies the reference scale at which symbology in paper units (such a millimeters or points) is fixed to. For instance, if scale is set to 1000 then a 2mm thick line will be rendered at exactly 2mm thick when a map is rendered at 1:1000, or 1mm thick when rendered at 1:2000, or 4mm thick at 1:500.
Definition at line 554 of file qgsrendercontext.h.
|
inline |
Sets the text render format, which dictates how text is rendered (e.g.
as paths or real text objects).
Definition at line 798 of file qgsrendercontext.h.
void QgsRenderContext::setTextureOrigin | ( | const QPointF & | origin | ) |
Sets the texture origin, which should be used as a brush transform when rendering using QBrush objects.
Definition at line 776 of file qgsrendercontext.cpp.
void QgsRenderContext::setTransformContext | ( | const QgsCoordinateTransformContext & | context | ) |
Sets the context's coordinate transform context, which stores various information regarding which datum transforms should be used when transforming points from a source to destination coordinate reference system.
Definition at line 205 of file qgsrendercontext.cpp.
void QgsRenderContext::setUseAdvancedEffects | ( | bool | enabled | ) |
Used to enable or disable advanced effects such as blend modes.
Definition at line 325 of file qgsrendercontext.cpp.
void QgsRenderContext::setUseRenderingOptimization | ( | bool | enabled | ) |
Sets whether the rendering optimization (geometry simplification) should be executed.
Definition at line 365 of file qgsrendercontext.cpp.
|
inline |
Sets the simplification setting to use when rendering vector layers.
This can be used to specify simplification methods to apply during map exports and renders, e.g. to allow vector layers to be simplified to an appropriate maximum level of detail during PDF exports or to speed up layer rendering
The default is to use no simplification.
Definition at line 667 of file qgsrendercontext.h.
void QgsRenderContext::setZRange | ( | const QgsDoubleRange & | range | ) |
Sets the range of z-values which should be rendered.
Definition at line 791 of file qgsrendercontext.cpp.
bool QgsRenderContext::showSelection | ( | ) | const |
Returns true
if vector selections should be shown in the rendered map.
true
if selections should be shown Definition at line 335 of file qgsrendercontext.cpp.
QVector< QgsGeometry > QgsRenderContext::symbolLayerClipGeometries | ( | const QString & | symbolLayerId | ) | const |
Returns clipping geometries to be applied to the symbolLayer before rendering.
Definition at line 890 of file qgsrendercontext.cpp.
QList< QPainterPath > QgsRenderContext::symbolLayerClipPaths | ( | const QString & | symbolLayerId | ) | const |
Returns clip paths to be applied to the symbolLayer before rendering.
Definition at line 858 of file qgsrendercontext.cpp.
bool QgsRenderContext::symbolLayerHasClipGeometries | ( | const QString & | symbolLayerId | ) | const |
Returns true
if the symbol layer with matching ID has any associated clip geometries.
Definition at line 882 of file qgsrendercontext.cpp.
|
inline |
Returns the symbology reference scale.
This represents the desired scale denominator for the rendered map, eg 1000.0 for a 1:1000 map render. A value of -1 indicates that symbology scaling by reference scale is disabled.
The symbology reference scale is an optional property which specifies the reference scale at which symbology in paper units (such a millimeters or points) is fixed to. For instance, if the scale is 1000 then a 2mm thick line will be rendered at exactly 2mm thick when a map is rendered at 1:1000, or 1mm thick when rendered at 1:2000, or 4mm thick at 1:500.
Definition at line 413 of file qgsrendercontext.h.
bool QgsRenderContext::testFlag | ( | Qgis::RenderContextFlag | flag | ) | const |
Check whether a particular flag is enabled.
Definition at line 241 of file qgsrendercontext.cpp.
|
inline |
Returns the text render format, which dictates how text is rendered (e.g.
as paths or real text objects).
Definition at line 787 of file qgsrendercontext.h.
QPointF QgsRenderContext::textureOrigin | ( | ) | const |
Returns the texture origin, which should be used as a brush transform when rendering using QBrush objects.
Definition at line 771 of file qgsrendercontext.cpp.
QgsCoordinateTransformContext QgsRenderContext::transformContext | ( | ) | const |
Returns the context's coordinate transform context, which stores various information regarding which datum transforms should be used when transforming points from a source to destination coordinate reference system.
Definition at line 196 of file qgsrendercontext.cpp.
bool QgsRenderContext::useAdvancedEffects | ( | ) | const |
Returns true
if advanced effects such as blend modes such be used.
Definition at line 320 of file qgsrendercontext.cpp.
bool QgsRenderContext::useRenderingOptimization | ( | ) | const |
Returns true
if the rendering optimization (geometry simplification) can be executed.
Definition at line 360 of file qgsrendercontext.cpp.
|
inline |
Returns the simplification settings to use when rendering vector layers.
The default is to use no simplification.
Definition at line 644 of file qgsrendercontext.h.
|
inline |
Returns the simplification settings to use when rendering vector layers.
The default is to use no simplification.
Definition at line 653 of file qgsrendercontext.h.
QgsDoubleRange QgsRenderContext::zRange | ( | ) | const |
Returns the range of z-values which should be rendered.
Definition at line 786 of file qgsrendercontext.cpp.