QGIS API Documentation
3.2.0-Bonn (bc43194)
|
The QgsMapSettings class contains configuration for rendering of the map. More...
#include <qgsmapsettings.h>
Public Types | |
enum | Flag { Antialiasing = 0x01, DrawEditingInfo = 0x02, ForceVectorOutput = 0x04, UseAdvancedEffects = 0x08, DrawLabeling = 0x10, UseRenderingOptimization = 0x20, DrawSelection = 0x40, DrawSymbolBounds = 0x80, RenderMapTile = 0x100, RenderPartialOutput = 0x200, RenderPreviewJob = 0x400 } |
Enumeration of flags that adjust the way the map is rendered. More... | |
Public Member Functions | |
QgsMapSettings () | |
QColor | backgroundColor () const |
Gets the background color of the map. More... | |
QString | customRenderFlags () const |
Gets custom rendering flags. More... | |
QgsCoordinateReferenceSystem | destinationCrs () const |
returns CRS of destination coordinate reference system More... | |
QString | ellipsoid () const |
Returns ellipsoid's acronym. More... | |
const QgsExpressionContext & | expressionContext () const |
Gets the expression context. More... | |
QgsRectangle | extent () const |
Returns geographical coordinates of the rectangle that should be rendered. More... | |
Flags | flags () const |
Returns combination of flags used for rendering. More... | |
QgsRectangle | fullExtent () const |
returns current extent of layer set More... | |
bool | hasValidSettings () const |
Check whether the map settings are valid and can be used for rendering. More... | |
const QgsLabelingEngineSettings & | labelingEngineSettings () const |
Returns global configuration of the labeling engine. More... | |
QgsRectangle | layerExtentToOutputExtent (const QgsMapLayer *layer, QgsRectangle extent) const |
transform bounding box from layer's CRS to output CRS More... | |
QStringList | layerIds () const |
Gets list of layer IDs for map rendering The layers are stored in the reverse order of how they are rendered (layer with index 0 will be on top) More... | |
QList< QgsMapLayer * > | layers () const |
Gets list of layers for map rendering The layers are stored in the reverse order of how they are rendered (layer with index 0 will be on top) More... | |
QMap< QString, QString > | layerStyleOverrides () const |
Gets map of map layer style overrides (key: layer ID, value: style name) where a different style should be used instead of the current one. More... | |
QgsPointXY | layerToMapCoordinates (const QgsMapLayer *layer, QgsPointXY point) const |
transform point coordinates from layer's CRS to output CRS More... | |
QgsRectangle | layerToMapCoordinates (const QgsMapLayer *layer, QgsRectangle rect) const |
transform rectangle from layer's CRS to output CRS More... | |
double | layerToMapUnits (const QgsMapLayer *layer, const QgsRectangle &referenceExtent=QgsRectangle()) const |
Computes an estimated conversion factor between layer and map units: layerUnits * layerToMapUnits = mapUnits. More... | |
QgsCoordinateTransform | layerTransform (const QgsMapLayer *layer) const |
Returns the coordinate transform from layer's CRS to destination CRS. More... | |
double | magnificationFactor () const |
Returns the magnification factor. More... | |
QgsPointXY | mapToLayerCoordinates (const QgsMapLayer *layer, QgsPointXY point) const |
transform point coordinates from output CRS to layer's CRS More... | |
QgsRectangle | mapToLayerCoordinates (const QgsMapLayer *layer, QgsRectangle rect) const |
transform rectangle from output CRS to layer's CRS More... | |
const QgsMapToPixel & | mapToPixel () const |
QgsUnitTypes::DistanceUnit | mapUnits () const |
Gets units of map's geographical coordinates - used for scale calculation. More... | |
double | mapUnitsPerPixel () const |
Returns the distance in geographical coordinates that equals to one pixel in the map. More... | |
double | outputDpi () const |
Returns DPI used for conversion between real world units (e.g. More... | |
QgsRectangle | outputExtentToLayerExtent (const QgsMapLayer *layer, QgsRectangle extent) const |
transform bounding box from output CRS to layer's CRS More... | |
QImage::Format | outputImageFormat () const |
format of internal QImage, default QImage::Format_ARGB32_Premultiplied More... | |
QSize | outputSize () const |
Returns the size of the resulting map image. More... | |
const QgsPathResolver & | pathResolver () const |
Returns the path resolver for conversion between relative and absolute paths during rendering operations, e.g. More... | |
void | readXml (QDomNode &node) |
double | rotation () const |
Returns the rotation of the resulting map image, in degrees clockwise. More... | |
double | scale () const |
Returns the calculated map scale. 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 |
Gets color that is used for drawing of selected vector features. More... | |
void | setBackgroundColor (const QColor &color) |
Sets the background color of the map. More... | |
void | setCustomRenderFlags (const QString &customRenderFlags) |
Sets the custom rendering flags. More... | |
void | setDestinationCrs (const QgsCoordinateReferenceSystem &crs) |
sets destination coordinate reference system More... | |
bool | setEllipsoid (const QString &ellipsoid) |
Sets the ellipsoid by its acronym. More... | |
void | setExpressionContext (const QgsExpressionContext &context) |
Sets the expression context. More... | |
void | setExtent (const QgsRectangle &rect, bool magnified=true) |
Set coordinates of the rectangle which should be rendered. More... | |
void | setFlag (Flag flag, bool on=true) |
Enable or disable a particular flag (other flags are not affected) More... | |
void | setFlags (QgsMapSettings::Flags flags) |
Sets combination of flags that will be used for rendering. More... | |
void | setLabelingEngineSettings (const QgsLabelingEngineSettings &settings) |
Sets global configuration of the labeling engine. More... | |
void | setLayers (const QList< QgsMapLayer *> &layers) |
Set list of layers for map rendering. More... | |
void | setLayerStyleOverrides (const QMap< QString, QString > &overrides) |
Set map of map layer style overrides (key: layer ID, value: style name) where a different style should be used instead of the current one. More... | |
void | setMagnificationFactor (double factor) |
Set the magnification factor. More... | |
void | setOutputDpi (double dpi) |
Sets DPI used for conversion between real world units (e.g. mm) and pixels. More... | |
void | setOutputImageFormat (QImage::Format format) |
sets format of internal QImage More... | |
void | setOutputSize (QSize size) |
Sets the size of the resulting map image. More... | |
void | setPathResolver (const QgsPathResolver &resolver) |
Sets the path resolver for conversion between relative and absolute paths during rendering operations, e.g. More... | |
void | setRotation (double rotation) |
Sets the rotation of the resulting map image, in degrees clockwise. 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) |
Sets color that is used for drawing of selected vector features. More... | |
void | setTransformContext (const QgsCoordinateTransformContext &context) |
Sets the 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 | testFlag (Flag flag) const |
Check whether a particular flag is enabled. More... | |
QgsCoordinateTransformContext | transformContext () const |
Returns the 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... | |
QgsRectangle | visibleExtent () const |
Returns the actual extent derived from requested extent that takes takes output image size into account. More... | |
QPolygonF | visiblePolygon () const |
Returns the visible area as a polygon (may be rotated) More... | |
void | writeXml (QDomNode &node, QDomDocument &doc) |
Protected Member Functions | |
void | updateDerived () |
The QgsMapSettings class contains configuration for rendering of the map.
The rendering itself is done by QgsMapRendererJob subclasses.
In order to set up QgsMapSettings instance, it is necessary to set at least few members: extent, output size and layers.
QgsMapSettings and QgsMapRendererJob (+subclasses) are intended to replace QgsMapRenderer class that existed before QGIS 2.4. The advantage of the new classes is that they separate the settings from the rendering and provide asynchronous API for map rendering.
Definition at line 58 of file qgsmapsettings.h.
enum QgsMapSettings::Flag |
Enumeration of flags that adjust the way the map is rendered.
Definition at line 206 of file qgsmapsettings.h.
QgsMapSettings::QgsMapSettings | ( | ) |
Definition at line 34 of file qgsmapsettings.cpp.
|
inline |
Gets the background color of the map.
Definition at line 198 of file qgsmapsettings.h.
|
inline |
Gets custom rendering flags.
Layers might honour these to alter their rendering.
Definition at line 159 of file qgsmapsettings.h.
QgsCoordinateReferenceSystem QgsMapSettings::destinationCrs | ( | ) | const |
returns CRS of destination coordinate reference system
Definition at line 288 of file qgsmapsettings.cpp.
|
inline |
Returns ellipsoid's acronym.
Calculations will only use the ellipsoid if a valid ellipsoid has been set.
Definition at line 193 of file qgsmapsettings.h.
|
inline |
Gets the expression context.
This context should be used for all expression evaluation associated with this map settings.
Definition at line 270 of file qgsmapsettings.h.
QgsRectangle QgsMapSettings::extent | ( | ) | const |
Returns geographical coordinates of the rectangle that should be rendered.
The actual visible extent used for rendering could be slightly different since the given extent may be expanded in order to fit the aspect ratio of output size. Use visibleExtent() to get the resulting extent.
Definition at line 73 of file qgsmapsettings.cpp.
QgsMapSettings::Flags QgsMapSettings::flags | ( | ) | const |
Returns combination of flags used for rendering.
Definition at line 320 of file qgsmapsettings.cpp.
QgsRectangle QgsMapSettings::fullExtent | ( | ) | const |
returns current extent of layer set
Definition at line 527 of file qgsmapsettings.cpp.
bool QgsMapSettings::hasValidSettings | ( | ) | const |
Check whether the map settings are valid and can be used for rendering.
Definition at line 336 of file qgsmapsettings.cpp.
|
inline |
Returns global configuration of the labeling engine.
Definition at line 399 of file qgsmapsettings.h.
QgsRectangle QgsMapSettings::layerExtentToOutputExtent | ( | const QgsMapLayer * | layer, |
QgsRectangle | extent | ||
) | const |
transform bounding box from layer's CRS to output CRS
Definition at line 410 of file qgsmapsettings.cpp.
QStringList QgsMapSettings::layerIds | ( | ) | const |
Gets list of layer IDs for map rendering The layers are stored in the reverse order of how they are rendered (layer with index 0 will be on top)
Definition at line 246 of file qgsmapsettings.cpp.
QList< QgsMapLayer * > QgsMapSettings::layers | ( | ) | const |
Gets list of layers for map rendering The layers are stored in the reverse order of how they are rendered (layer with index 0 will be on top)
Definition at line 252 of file qgsmapsettings.cpp.
QMap< QString, QString > QgsMapSettings::layerStyleOverrides | ( | ) | const |
Gets map of map layer style overrides (key: layer ID, value: style name) where a different style should be used instead of the current one.
Definition at line 270 of file qgsmapsettings.cpp.
QgsPointXY QgsMapSettings::layerToMapCoordinates | ( | const QgsMapLayer * | layer, |
QgsPointXY | point | ||
) | const |
transform point coordinates from layer's CRS to output CRS
Definition at line 458 of file qgsmapsettings.cpp.
QgsRectangle QgsMapSettings::layerToMapCoordinates | ( | const QgsMapLayer * | layer, |
QgsRectangle | rect | ||
) | const |
transform rectangle from layer's CRS to output CRS
Definition at line 475 of file qgsmapsettings.cpp.
double QgsMapSettings::layerToMapUnits | ( | const QgsMapLayer * | layer, |
const QgsRectangle & | referenceExtent = QgsRectangle() |
||
) | const |
Computes an estimated conversion factor between layer and map units: layerUnits * layerToMapUnits = mapUnits.
layer | The layer |
referenceExtent | A reference extent based on which to perform the computation. If not specified, the layer extent is used |
Definition at line 397 of file qgsmapsettings.cpp.
QgsCoordinateTransform QgsMapSettings::layerTransform | ( | const QgsMapLayer * | layer | ) | const |
Returns the coordinate transform from layer's CRS to destination CRS.
Definition at line 389 of file qgsmapsettings.cpp.
double QgsMapSettings::magnificationFactor | ( | ) | const |
Returns the magnification factor.
Definition at line 68 of file qgsmapsettings.cpp.
QgsPointXY QgsMapSettings::mapToLayerCoordinates | ( | const QgsMapLayer * | layer, |
QgsPointXY | point | ||
) | const |
transform point coordinates from output CRS to layer's CRS
Definition at line 492 of file qgsmapsettings.cpp.
QgsRectangle QgsMapSettings::mapToLayerCoordinates | ( | const QgsMapLayer * | layer, |
QgsRectangle | rect | ||
) | const |
transform rectangle from output CRS to layer's CRS
Definition at line 509 of file qgsmapsettings.cpp.
|
inline |
Definition at line 310 of file qgsmapsettings.h.
QgsUnitTypes::DistanceUnit QgsMapSettings::mapUnits | ( | ) | const |
Gets units of map's geographical coordinates - used for scale calculation.
Definition at line 330 of file qgsmapsettings.cpp.
double QgsMapSettings::mapUnitsPerPixel | ( | ) | const |
Returns the distance in geographical coordinates that equals to one pixel in the map.
Definition at line 361 of file qgsmapsettings.cpp.
double QgsMapSettings::outputDpi | ( | ) | const |
Returns DPI used for conversion between real world units (e.g.
mm) and pixels Default value is 96
Definition at line 233 of file qgsmapsettings.cpp.
QgsRectangle QgsMapSettings::outputExtentToLayerExtent | ( | const QgsMapLayer * | layer, |
QgsRectangle | extent | ||
) | const |
transform bounding box from output CRS to layer's CRS
Definition at line 434 of file qgsmapsettings.cpp.
|
inline |
format of internal QImage, default QImage::Format_ARGB32_Premultiplied
Definition at line 235 of file qgsmapsettings.h.
QSize QgsMapSettings::outputSize | ( | ) | const |
Returns the size of the resulting map image.
Definition at line 221 of file qgsmapsettings.cpp.
|
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 299 of file qgsmapsettings.h.
void QgsMapSettings::readXml | ( | QDomNode & | node | ) |
Definition at line 585 of file qgsmapsettings.cpp.
double QgsMapSettings::rotation | ( | ) | const |
Returns the rotation of the resulting map image, in degrees clockwise.
Definition at line 90 of file qgsmapsettings.cpp.
double QgsMapSettings::scale | ( | ) | const |
Returns the calculated map scale.
The scale value indicates the scale denominator, e.g. 1000.0 for a 1:1000 map.
Definition at line 366 of file qgsmapsettings.cpp.
|
inline |
Gets the segmentation tolerance applied when rendering curved geometries.
Definition at line 380 of file qgsmapsettings.h.
|
inline |
Gets segmentation tolerance type (maximum angle or maximum difference between curve and approximation)
Definition at line 387 of file qgsmapsettings.h.
|
inline |
Gets color that is used for drawing of selected vector features.
Definition at line 203 of file qgsmapsettings.h.
|
inline |
Sets the background color of the map.
Definition at line 196 of file qgsmapsettings.h.
|
inline |
Sets the custom rendering flags.
Layers might honour these to alter their rendering.
customRenderFlags | custom flags strings, separated by ';' |
Definition at line 167 of file qgsmapsettings.h.
void QgsMapSettings::setDestinationCrs | ( | const QgsCoordinateReferenceSystem & | crs | ) |
sets destination coordinate reference system
Definition at line 280 of file qgsmapsettings.cpp.
bool QgsMapSettings::setEllipsoid | ( | const QString & | ellipsoid | ) |
Sets the ellipsoid by its acronym.
Known ellipsoid acronyms can be retrieved using QgsEllipsoidUtils::acronyms(). Calculations will only use the ellipsoid if a valid ellipsoid has been set.
Definition at line 293 of file qgsmapsettings.cpp.
|
inline |
Sets the expression context.
This context is used for all expression evaluation associated with this map settings.
Definition at line 262 of file qgsmapsettings.h.
void QgsMapSettings::setExtent | ( | const QgsRectangle & | rect, |
bool | magnified = true |
||
) |
Set coordinates of the rectangle which should be rendered.
The actual visible extent used for rendering could be slightly different since the given extent may be expanded in order to fit the aspect ratio of output size. Use visibleExtent() to get the resulting extent.
Definition at line 78 of file qgsmapsettings.cpp.
void QgsMapSettings::setFlag | ( | QgsMapSettings::Flag | flag, |
bool | on = true |
||
) |
Enable or disable a particular flag (other flags are not affected)
Definition at line 312 of file qgsmapsettings.cpp.
void QgsMapSettings::setFlags | ( | QgsMapSettings::Flags | flags | ) |
Sets combination of flags that will be used for rendering.
Definition at line 307 of file qgsmapsettings.cpp.
|
inline |
Sets global configuration of the labeling engine.
Definition at line 393 of file qgsmapsettings.h.
void QgsMapSettings::setLayers | ( | const QList< QgsMapLayer *> & | layers | ) |
Set list of layers for map rendering.
The layers must be registered in QgsProject. The layers are stored in the reverse order of how they are rendered (layer with index 0 will be on top)
Definition at line 257 of file qgsmapsettings.cpp.
void QgsMapSettings::setLayerStyleOverrides | ( | const QMap< QString, QString > & | overrides | ) |
Set map of map layer style overrides (key: layer ID, value: style name) where a different style should be used instead of the current one.
Definition at line 275 of file qgsmapsettings.cpp.
void QgsMapSettings::setMagnificationFactor | ( | double | factor | ) |
Set the magnification factor.
factor | the factor of magnification |
Definition at line 47 of file qgsmapsettings.cpp.
void QgsMapSettings::setOutputDpi | ( | double | dpi | ) |
Sets DPI used for conversion between real world units (e.g. mm) and pixels.
Definition at line 238 of file qgsmapsettings.cpp.
|
inline |
sets format of internal QImage
Definition at line 233 of file qgsmapsettings.h.
void QgsMapSettings::setOutputSize | ( | QSize | size | ) |
Sets the size of the resulting map image.
Definition at line 226 of file qgsmapsettings.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 308 of file qgsmapsettings.h.
void QgsMapSettings::setRotation | ( | double | rotation | ) |
Sets the rotation of the resulting map image, in degrees clockwise.
Definition at line 95 of file qgsmapsettings.cpp.
|
inline |
Sets the segmentation tolerance applied when rendering curved geometries.
tolerance | the segmentation tolerance |
Definition at line 378 of file qgsmapsettings.h.
|
inline |
Sets segmentation tolerance type (maximum angle or maximum difference between curve and approximation)
type | the segmentation tolerance typename |
Definition at line 385 of file qgsmapsettings.h.
|
inline |
Sets color that is used for drawing of selected vector features.
Definition at line 201 of file qgsmapsettings.h.
void QgsMapSettings::setTransformContext | ( | const QgsCoordinateTransformContext & | context | ) |
Sets the 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 381 of file qgsmapsettings.cpp.
bool QgsMapSettings::testFlag | ( | QgsMapSettings::Flag | flag | ) | const |
Check whether a particular flag is enabled.
Definition at line 325 of file qgsmapsettings.cpp.
QgsCoordinateTransformContext QgsMapSettings::transformContext | ( | ) | const |
Returns the 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 371 of file qgsmapsettings.cpp.
|
protected |
Definition at line 107 of file qgsmapsettings.cpp.
QgsRectangle QgsMapSettings::visibleExtent | ( | ) | const |
Returns the actual extent derived from requested extent that takes takes output image size into account.
Definition at line 341 of file qgsmapsettings.cpp.
QPolygonF QgsMapSettings::visiblePolygon | ( | ) | const |
Returns the visible area as a polygon (may be rotated)
Definition at line 346 of file qgsmapsettings.cpp.
void QgsMapSettings::writeXml | ( | QDomNode & | node, |
QDomDocument & | doc | ||
) |
Definition at line 620 of file qgsmapsettings.cpp.
|
protected |
Definition at line 422 of file qgsmapsettings.h.
|
protected |
Definition at line 415 of file qgsmapsettings.h.
|
protected |
Definition at line 418 of file qgsmapsettings.h.
|
protected |
Definition at line 403 of file qgsmapsettings.h.
|
protected |
ellipsoid acronym (from table tbl_ellipsoids)
Definition at line 420 of file qgsmapsettings.h.
|
protected |
Definition at line 416 of file qgsmapsettings.h.
|
protected |
Definition at line 407 of file qgsmapsettings.h.
|
protected |
Definition at line 425 of file qgsmapsettings.h.
|
protected |
Definition at line 427 of file qgsmapsettings.h.
|
protected |
Definition at line 432 of file qgsmapsettings.h.
|
protected |
list of layers to be rendered (stored as weak pointers)
Definition at line 413 of file qgsmapsettings.h.
|
protected |
Definition at line 414 of file qgsmapsettings.h.
|
protected |
Definition at line 410 of file qgsmapsettings.h.
|
protected |
Definition at line 442 of file qgsmapsettings.h.
|
protected |
Definition at line 437 of file qgsmapsettings.h.
|
protected |
Definition at line 446 of file qgsmapsettings.h.
|
protected |
Definition at line 409 of file qgsmapsettings.h.
|
protected |
Definition at line 438 of file qgsmapsettings.h.
|
protected |
Definition at line 441 of file qgsmapsettings.h.
|
protected |
Definition at line 429 of file qgsmapsettings.h.
|
protected |
Definition at line 430 of file qgsmapsettings.h.
|
protected |
Definition at line 423 of file qgsmapsettings.h.
|
protected |
Definition at line 405 of file qgsmapsettings.h.
|
protected |
Definition at line 444 of file qgsmapsettings.h.
|
protected |
Whether the actual settings are valid (set in updateDerived())
Definition at line 435 of file qgsmapsettings.h.
|
protected |
Extent with some additional white space that matches the output aspect ratio.
Definition at line 436 of file qgsmapsettings.h.