QGIS API Documentation
3.2.0-Bonn (bc43194)
|
Contains information about the context of a rendering operation. More...
#include <qgsrendercontext.h>
Public Types | |
enum | Flag { DrawEditingInfo = 0x01, ForceVectorOutput = 0x02, UseAdvancedEffects = 0x04, UseRenderingOptimization = 0x08, DrawSelection = 0x10, DrawSymbolBounds = 0x20, RenderMapTile = 0x40, Antialiasing = 0x80, RenderPartialOutput = 0x100, RenderPreviewJob = 0x200 } |
Enumeration of flags that affect rendering operations. More... | |
Public Member Functions | |
QgsRenderContext () | |
QgsRenderContext (const QgsRenderContext &rh) | |
double | convertFromMapUnits (double sizeInMapUnits, QgsUnitTypes::RenderUnit outputUnit) const |
Converts a size from map units to the specified units. More... | |
double | convertMetersToMapUnits (double meters) const |
Convert meter distances to active MapUnit values for QgsUnitTypes::RenderMetersInMapUnits. More... | |
double | convertToMapUnits (double size, QgsUnitTypes::RenderUnit unit, const QgsMapUnitScale &scale=QgsMapUnitScale()) const |
Converts a size from the specified units to map units. More... | |
double | convertToPainterUnits (double size, QgsUnitTypes::RenderUnit unit, const QgsMapUnitScale &scale=QgsMapUnitScale()) const |
Converts a size from the specified units to painter units (pixels). More... | |
QgsCoordinateTransform | coordinateTransform () const |
Returns the current coordinate transform for the context, or an invalid transform is no coordinate transformation is required. More... | |
const QgsDistanceArea & | distanceArea () const |
A general purpose distance and area calculator, capable of performing ellipsoid based calculations. More... | |
bool | drawEditingInformation () const |
QgsExpressionContext & | expressionContext () |
Gets the expression context. More... | |
const QgsExpressionContext & | expressionContext () const |
Gets the expression context (const version). More... | |
const QgsRectangle & | extent () const |
const QgsFeatureFilterProvider * | featureFilterProvider () const |
Gets the filter feature provider used for additional filtering of rendered features. More... | |
Flags | flags () const |
Returns combination of flags used for rendering. More... | |
bool | forceVectorOutput () const |
const QgsAbstractGeometry * | geometry () const |
Returns pointer to the unsegmentized geometry. More... | |
QgsLabelingEngine * | labelingEngine () const |
Gets access to new labeling engine (may be nullptr) More... | |
const QgsMapToPixel & | mapToPixel () const |
QgsRenderContext & | operator= (const QgsRenderContext &rh) |
QPainter * | painter () |
Returns the destination QPainter for the render operation. More... | |
const QgsPathResolver & | pathResolver () const |
Returns the path resolver for conversion between relative and absolute paths during rendering operations, e.g. More... | |
double | rendererScale () const |
Returns the renderer map scale. More... | |
bool | renderingStopped () const |
double | scaleFactor () const |
Returns the scaling factor for the render to convert painter units to physical sizes. More... | |
double | segmentationTolerance () const |
Gets the segmentation tolerance applied when rendering curved geometries. More... | |
QgsAbstractGeometry::SegmentationToleranceType | segmentationToleranceType () const |
Gets segmentation tolerance type (maximum angle or maximum difference between curve and approximation) More... | |
QColor | selectionColor () const |
void | setCoordinateTransform (const QgsCoordinateTransform &t) |
Sets coordinate transformation. More... | |
void | setDistanceArea (const QgsDistanceArea &distanceArea) |
A general purpose distance and area calculator, capable of performing ellipsoid based calculations. More... | |
void | setDrawEditingInformation (bool b) |
void | setExpressionContext (const QgsExpressionContext &context) |
Sets the expression context. More... | |
void | setExtent (const QgsRectangle &extent) |
void | setFeatureFilterProvider (const QgsFeatureFilterProvider *ffp) |
Set a filter feature provider used for additional filtering of rendered features. More... | |
void | setFlag (Flag flag, bool on=true) |
Enable or disable a particular flag (other flags are not affected) More... | |
void | setFlags (QgsRenderContext::Flags flags) |
Set combination of flags that will be used for rendering. More... | |
void | setForceVectorOutput (bool force) |
void | setGeometry (const QgsAbstractGeometry *geometry) |
Sets pointer to original (unsegmentized) geometry. More... | |
void | setLabelingEngine (QgsLabelingEngine *engine2) |
Assign new labeling engine. More... | |
void | setMapToPixel (const QgsMapToPixel &mtp) |
void | setPainter (QPainter *p) |
Sets the destination QPainter for the render operation. More... | |
void | setPathResolver (const QgsPathResolver &resolver) |
Sets the path resolver for conversion between relative and absolute paths during rendering operations, e.g. More... | |
void | setRendererScale (double scale) |
Sets the renderer map scale. More... | |
void | setRenderingStopped (bool stopped) |
void | setScaleFactor (double factor) |
Sets the scaling factor for the render to convert painter units to physical sizes. More... | |
void | setSegmentationTolerance (double tolerance) |
Sets the segmentation tolerance applied when rendering curved geometries. More... | |
void | setSegmentationToleranceType (QgsAbstractGeometry::SegmentationToleranceType type) |
Sets segmentation tolerance type (maximum angle or maximum difference between curve and approximation) More... | |
void | setSelectionColor (const QColor &color) |
void | setShowSelection (bool showSelection) |
Sets whether vector selections should be shown in the rendered map. More... | |
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. More... | |
void | setUseAdvancedEffects (bool enabled) |
Used to enable or disable advanced effects such as blend modes. More... | |
void | setUseRenderingOptimization (bool enabled) |
void | setVectorSimplifyMethod (const QgsVectorSimplifyMethod &simplifyMethod) |
bool | showSelection () const |
Returns true if vector selections should be shown in the rendered map. More... | |
bool | testFlag (Flag flag) const |
Check whether a particular flag is enabled. More... | |
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. More... | |
bool | useAdvancedEffects () const |
Returns true if advanced effects such as blend modes such be used. More... | |
bool | useRenderingOptimization () const |
Returns true if the rendering optimization (geometry simplification) can be executed. More... | |
const QgsVectorSimplifyMethod & | vectorSimplifyMethod () const |
Added in QGIS v2.4. More... | |
Static Public Member Functions | |
static QgsRenderContext | fromMapSettings (const QgsMapSettings &mapSettings) |
create initialized QgsRenderContext instance from given QgsMapSettings More... | |
static QgsRenderContext | fromQPainter (QPainter *painter) |
Creates a default render context given a pixel based QPainter destination. More... | |
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 51 of file qgsrendercontext.h.
Enumeration of flags that affect rendering operations.
Definition at line 63 of file qgsrendercontext.h.
QgsRenderContext::QgsRenderContext | ( | ) |
Definition at line 31 of file qgsrendercontext.cpp.
QgsRenderContext::QgsRenderContext | ( | const QgsRenderContext & | rh | ) |
Definition at line 40 of file qgsrendercontext.cpp.
double QgsRenderContext::convertFromMapUnits | ( | double | sizeInMapUnits, |
QgsUnitTypes::RenderUnit | outputUnit | ||
) | const |
Converts a size from map units to the specified units.
Definition at line 380 of file qgsrendercontext.cpp.
double QgsRenderContext::convertMetersToMapUnits | ( | double | meters | ) | const |
Convert meter distances to active MapUnit values for QgsUnitTypes::RenderMetersInMapUnits.
Definition at line 419 of file qgsrendercontext.cpp.
double QgsRenderContext::convertToMapUnits | ( | double | size, |
QgsUnitTypes::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 316 of file qgsrendercontext.cpp.
double QgsRenderContext::convertToPainterUnits | ( | double | size, |
QgsUnitTypes::RenderUnit | unit, | ||
const QgsMapUnitScale & | scale = QgsMapUnitScale() |
||
) | const |
Converts a size from the specified units to painter units (pixels).
The conversion respects the limits specified by the optional scale parameter.
Definition at line 254 of file qgsrendercontext.cpp.
|
inline |
Returns the current coordinate transform for the context, or an invalid transform is no coordinate transformation is required.
Definition at line 128 of file qgsrendercontext.h.
|
inline |
A general purpose distance and area calculator, capable of performing ellipsoid based calculations.
Definition at line 134 of file qgsrendercontext.h.
bool QgsRenderContext::drawEditingInformation | ( | ) | const |
Definition at line 197 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 310 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 319 of file qgsrendercontext.h.
|
inline |
Definition at line 174 of file qgsrendercontext.h.
const QgsFeatureFilterProvider * QgsRenderContext::featureFilterProvider | ( | ) | const |
Gets the filter feature provider used for additional filtering of rendered features.
Definition at line 249 of file qgsrendercontext.cpp.
QgsRenderContext::Flags QgsRenderContext::flags | ( | ) | const |
Returns combination of flags used for rendering.
Definition at line 139 of file qgsrendercontext.cpp.
bool QgsRenderContext::forceVectorOutput | ( | ) | const |
Definition at line 182 of file qgsrendercontext.cpp.
|
static |
create initialized QgsRenderContext instance from given QgsMapSettings
Definition at line 149 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 94 of file qgsrendercontext.cpp.
|
inline |
Returns pointer to the unsegmentized geometry.
Definition at line 322 of file qgsrendercontext.h.
|
inline |
Gets access to new labeling engine (may be nullptr)
Definition at line 213 of file qgsrendercontext.h.
|
inline |
Definition at line 176 of file qgsrendercontext.h.
QgsRenderContext & QgsRenderContext::operator= | ( | const QgsRenderContext & | rh | ) |
Definition at line 66 of file qgsrendercontext.cpp.
|
inline |
Returns the destination QPainter for the render operation.
Definition at line 122 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 163 of file qgsrendercontext.h.
|
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 207 of file qgsrendercontext.h.
|
inline |
Definition at line 186 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 184 of file qgsrendercontext.h.
|
inline |
Gets the segmentation tolerance applied when rendering curved geometries.
Definition at line 347 of file qgsrendercontext.h.
|
inline |
Gets segmentation tolerance type (maximum angle or maximum difference between curve and approximation)
Definition at line 354 of file qgsrendercontext.h.
|
inline |
Definition at line 215 of file qgsrendercontext.h.
void QgsRenderContext::setCoordinateTransform | ( | const QgsCoordinateTransform & | t | ) |
Sets coordinate transformation.
Definition at line 207 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 242 of file qgsrendercontext.h.
void QgsRenderContext::setDrawEditingInformation | ( | bool | b | ) |
Definition at line 212 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 302 of file qgsrendercontext.h.
|
inline |
Definition at line 231 of file qgsrendercontext.h.
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 237 of file qgsrendercontext.cpp.
void QgsRenderContext::setFlag | ( | QgsRenderContext::Flag | flag, |
bool | on = true |
||
) |
Enable or disable a particular flag (other flags are not affected)
Definition at line 131 of file qgsrendercontext.cpp.
void QgsRenderContext::setFlags | ( | QgsRenderContext::Flags | flags | ) |
Set combination of flags that will be used for rendering.
Definition at line 126 of file qgsrendercontext.cpp.
void QgsRenderContext::setForceVectorOutput | ( | bool | force | ) |
Definition at line 217 of file qgsrendercontext.cpp.
|
inline |
Sets pointer to original (unsegmentized) geometry.
Definition at line 324 of file qgsrendercontext.h.
|
inline |
Assign new labeling engine.
Definition at line 273 of file qgsrendercontext.h.
|
inline |
Definition at line 230 of file qgsrendercontext.h.
|
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 265 of file qgsrendercontext.h.
|
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 172 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 257 of file qgsrendercontext.h.
|
inline |
Definition at line 235 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 250 of file qgsrendercontext.h.
|
inline |
Sets the segmentation tolerance applied when rendering curved geometries.
tolerance | the segmentation tolerance |
Definition at line 345 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 352 of file qgsrendercontext.h.
|
inline |
Definition at line 274 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 222 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 118 of file qgsrendercontext.cpp.
void QgsRenderContext::setUseAdvancedEffects | ( | bool | enabled | ) |
Used to enable or disable advanced effects such as blend modes.
Definition at line 192 of file qgsrendercontext.cpp.
void QgsRenderContext::setUseRenderingOptimization | ( | bool | enabled | ) |
Definition at line 232 of file qgsrendercontext.cpp.
|
inline |
Definition at line 294 of file qgsrendercontext.h.
bool QgsRenderContext::showSelection | ( | ) | const |
Returns true if vector selections should be shown in the rendered map.
Definition at line 202 of file qgsrendercontext.cpp.
bool QgsRenderContext::testFlag | ( | QgsRenderContext::Flag | flag | ) | const |
Check whether a particular flag is enabled.
Definition at line 144 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 109 of file qgsrendercontext.cpp.
bool QgsRenderContext::useAdvancedEffects | ( | ) | const |
Returns true if advanced effects such as blend modes such be used.
Definition at line 187 of file qgsrendercontext.cpp.
bool QgsRenderContext::useRenderingOptimization | ( | ) | const |
Returns true if the rendering optimization (geometry simplification) can be executed.
Definition at line 227 of file qgsrendercontext.cpp.
|
inline |
Added in QGIS v2.4.
Definition at line 293 of file qgsrendercontext.h.