QGIS API Documentation  3.14.0-Pi (9f7028fd23)
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
QgsMapSettings Class Reference

#include <qgsmapsettings.h>

Inheritance diagram for QgsMapSettings:
Inheritance graph
[legend]

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, RenderBlocking = 0x800
}
 Enumeration of flags that adjust the way the map is rendered. More...
 

Public Member Functions

 QgsMapSettings ()
 
void addRenderedFeatureHandler (QgsRenderedFeatureHandlerInterface *handler)
 Adds a rendered feature handler to use while rendering the map settings. More...
 
QColor backgroundColor () const
 Gets the background color of the map. More...
 
void clearCustomRenderingFlag (const QString &flag)
 Clears the specified custom rendering flag. More...
 
Q_DECL_DEPRECATED QString customRenderFlags () const
 Gets custom rendering flags. More...
 
QVariantMap customRenderingFlags () const
 Gets custom rendering flags. More...
 
QgsCoordinateReferenceSystem destinationCrs () const
 returns CRS of destination coordinate reference system More...
 
QSize deviceOutputSize () const
 Returns the device output size of the map canvas This is equivalent to the output size multiplicated by the device pixel ratio. More...
 
float devicePixelRatio () const
 Returns device pixel ratio Common values are 1 for normal-dpi displays and 2 for high-dpi "retina" displays. More...
 
QString ellipsoid () const
 Returns ellipsoid's acronym. More...
 
const QgsExpressionContextexpressionContext () const
 Gets the expression context. More...
 
QgsRectangle extent () const
 Returns geographical coordinates of the rectangle that should be rendered. More...
 
double extentBuffer () const
 Returns the buffer in map units to use around the visible extent for rendering symbols whose corresponding geometries are outside the visible extent. 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...
 
QList< QgsLabelBlockingRegionlabelBlockingRegions () const
 Returns the list of regions to avoid placing labels within. More...
 
QgsGeometry labelBoundaryGeometry () const
 Returns the label boundary geometry, which restricts where in the rendered map labels are permitted to be placed. More...
 
const QgsLabelingEngineSettingslabelingEngineSettings () const
 Returns the 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 QgsMapToPixelmapToPixel () 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 QgsPathResolverpathResolver () const
 Returns the path resolver for conversion between relative and absolute paths during rendering operations, e.g. More...
 
void readXml (QDomNode &node)
 
QList< QgsRenderedFeatureHandlerInterface * > renderedFeatureHandlers () const
 Returns the list of rendered feature handlers to use while rendering the map settings. More...
 
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...
 
Q_DECL_DEPRECATED void setCustomRenderFlags (const QString &customRenderFlags)
 Sets the custom rendering flags. More...
 
void setCustomRenderingFlag (const QString &flag, const QVariant &value)
 Sets a custom rendering flag. More...
 
void setDestinationCrs (const QgsCoordinateReferenceSystem &crs)
 sets destination coordinate reference system More...
 
void setDevicePixelRatio (float dpr)
 Sets the device pixel ratio Common values are 1 for normal-dpi displays and 2 for high-dpi "retina" displays. 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 setExtentBuffer (double buffer)
 Sets the buffer in map units to use around the visible extent for rendering symbols whose corresponding geometries are outside the visible extent. 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 setLabelBlockingRegions (const QList< QgsLabelBlockingRegion > &regions)
 Sets a list of regions to avoid placing labels within. More...
 
void setLabelBoundaryGeometry (const QgsGeometry &boundary)
 Sets the label boundary geometry, which restricts where in the rendered map labels are permitted to be placed. More...
 
void setLabelingEngineSettings (const QgsLabelingEngineSettings &settings)
 Sets the 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, const QgsPointXY *center=nullptr)
 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 setSimplifyMethod (const QgsVectorSimplifyMethod &method)
 Sets the simplification setting to use when rendering vector layers. More...
 
void setTextRenderFormat (QgsRenderContext::TextRenderFormat format)
 Sets the text render format, which dictates how text is rendered (e.g. 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...
 
const QgsVectorSimplifyMethodsimplifyMethod () const
 Returns the simplification settings to use when rendering vector layers. More...
 
bool testFlag (Flag flag) const
 Check whether a particular flag is enabled. More...
 
QgsRenderContext::TextRenderFormat textRenderFormat () const
 Returns the text render format, which dictates how text is rendered (e.g. 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)
 
- Public Member Functions inherited from QgsTemporalRangeObject
 QgsTemporalRangeObject (bool enabled=false)
 Constructor QgsTemporalRangeObject. More...
 
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. More...
 
void setIsTemporal (bool enabled)
 Sets whether the temporal range is enabled (i.e. More...
 
void setTemporalRange (const QgsDateTimeRange &range)
 Sets the temporal range for the object. More...
 
const QgsDateTimeRange & temporalRange () const
 Returns the datetime range for the object. More...
 

Protected Member Functions

void updateDerived ()
 

Protected Attributes

QColor mBackgroundColor
 
QString mCustomRenderFlags
 
QVariantMap mCustomRenderingFlags
 
QgsCoordinateReferenceSystem mDestCRS
 
float mDevicePixelRatio = 1.0
 
double mDpi
 
QString mEllipsoid
 ellipsoid acronym (from table tbl_ellipsoids) More...
 
QgsExpressionContext mExpressionContext
 
QgsRectangle mExtent
 
double mExtentBuffer = 0.0
 
Flags mFlags
 
QImage::Format mImageFormat = QImage::Format_ARGB32_Premultiplied
 
QgsGeometry mLabelBoundaryGeometry
 
QgsLabelingEngineSettings mLabelingEngineSettings
 
QgsWeakMapLayerPointerList mLayers
 list of layers to be rendered (stored as weak pointers) More...
 
QMap< QString, QString > mLayerStyleOverrides
 
double mMagnificationFactor = 1.0
 
QgsMapToPixel mMapToPixel
 
double mMapUnitsPerPixel = 1
 
QgsPathResolver mPathResolver
 
double mRotation = 0.0
 
double mScale = 1
 
QgsScaleCalculator mScaleCalculator
 
double mSegmentationTolerance
 
QgsAbstractGeometry::SegmentationToleranceType mSegmentationToleranceType = QgsAbstractGeometry::MaximumAngle
 
QColor mSelectionColor
 
QgsVectorSimplifyMethod mSimplifyMethod
 
QSize mSize
 
QgsRenderContext::TextRenderFormat mTextRenderFormat = QgsRenderContext::TextFormatAlwaysOutlines
 
QgsCoordinateTransformContext mTransformContext
 
bool mValid = false
 Whether the actual settings are valid (set in updateDerived()) More...
 
QgsRectangle mVisibleExtent
 Extent with some additional white space that matches the output aspect ratio. More...
 

Detailed Description

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.

Some systems use high DPI scaling that is an alternative to the traditional DPI scaling. The operating system provides Qt with a scaling ratio and it scales window, event, and desktop geometry. The Cocoa platform plugin sets the scaling ratio as QWindow::devicePixelRatio(). To properly render the map on such systems, the map settings device pixel ratio shall be set accordingly.

Since
QGIS 2.4

Definition at line 86 of file qgsmapsettings.h.

Member Enumeration Documentation

◆ Flag

Enumeration of flags that adjust the way the map is rendered.

Enumerator
Antialiasing 

Enable anti-aliasing for map rendering.

DrawEditingInfo 

Enable drawing of vertex markers for layers in editing mode.

ForceVectorOutput 

Vector graphics should not be cached and drawn as raster images.

UseAdvancedEffects 

Enable layer opacity and blending effects.

DrawLabeling 

Enable drawing of labels on top of the map.

UseRenderingOptimization 

Enable vector simplification and other rendering optimizations.

DrawSelection 

Whether vector selections should be shown in the rendered map.

DrawSymbolBounds 

Draw bounds of symbols (for debugging/testing)

RenderMapTile 

Draw map such that there are no problems between adjacent tiles.

RenderPartialOutput 

Whether to make extra effort to update map image with partially rendered layers (better for interactive map canvas). Added in QGIS 3.0.

RenderPreviewJob 

Render is a 'canvas preview' render, and shortcuts should be taken to ensure fast rendering.

RenderBlocking 

Render and load remote sources in the same thread to ensure rendering remote sources (svg and images). WARNING: this flag must NEVER be used from GUI based applications (like the main QGIS application) or crashes will result. Only for use in external scripts or QGIS server.

Definition at line 300 of file qgsmapsettings.h.

Constructor & Destructor Documentation

◆ QgsMapSettings()

QgsMapSettings::QgsMapSettings ( )

Definition at line 34 of file qgsmapsettings.cpp.

Member Function Documentation

◆ addRenderedFeatureHandler()

void QgsMapSettings::addRenderedFeatureHandler ( QgsRenderedFeatureHandlerInterface handler)

Adds a rendered feature handler to use while rendering the map settings.

Ownership of handler is NOT transferred, and it is the caller's responsibility to ensure that the handler exists for the lifetime of the map render job.

See also
renderedFeatureHandlers()
Since
QGIS 3.10

Definition at line 685 of file qgsmapsettings.cpp.

◆ backgroundColor()

QColor QgsMapSettings::backgroundColor ( ) const
inline

Gets the background color of the map.

Definition at line 292 of file qgsmapsettings.h.

◆ clearCustomRenderingFlag()

void QgsMapSettings::clearCustomRenderingFlag ( const QString &  flag)
inline

Clears the specified custom rendering flag.

Parameters
flagthe flag name
See also
setCustomRenderingFlag()
Since
QGIS 3.12

Definition at line 261 of file qgsmapsettings.h.

◆ customRenderFlags()

Q_DECL_DEPRECATED QString QgsMapSettings::customRenderFlags ( ) const
inline

Gets custom rendering flags.

Layers might honour these to alter their rendering.

Returns
custom flags strings, separated by ';'
See also
setCustomRenderFlags()
Since
QGIS 2.16
Deprecated:
use
See also
customRenderingFlags().

Definition at line 227 of file qgsmapsettings.h.

◆ customRenderingFlags()

QVariantMap QgsMapSettings::customRenderingFlags ( ) const
inline

Gets custom rendering flags.

Layers might honour these to alter their rendering.

Returns
a map of custom flags
See also
setCustomRenderingFlag()
Since
QGIS 3.12

Definition at line 244 of file qgsmapsettings.h.

◆ destinationCrs()

QgsCoordinateReferenceSystem QgsMapSettings::destinationCrs ( ) const

returns CRS of destination coordinate reference system

Definition at line 317 of file qgsmapsettings.cpp.

◆ deviceOutputSize()

QSize QgsMapSettings::deviceOutputSize ( ) const

Returns the device output size of the map canvas This is equivalent to the output size multiplicated by the device pixel ratio.

Since
QGIS 3.4

Definition at line 257 of file qgsmapsettings.cpp.

◆ devicePixelRatio()

float QgsMapSettings::devicePixelRatio ( ) const

Returns device pixel ratio Common values are 1 for normal-dpi displays and 2 for high-dpi "retina" displays.

Since
QGIS 3.4

Definition at line 246 of file qgsmapsettings.cpp.

◆ ellipsoid()

QString QgsMapSettings::ellipsoid ( ) const
inline

Returns ellipsoid's acronym.

Calculations will only use the ellipsoid if a valid ellipsoid has been set.

See also
setEllipsoid()
Since
QGIS 3.0

Definition at line 287 of file qgsmapsettings.h.

◆ expressionContext()

const QgsExpressionContext& QgsMapSettings::expressionContext ( ) const
inline

Gets the expression context.

This context should be used for all expression evaluation associated with this map settings.

See also
setExpressionContext()
Since
QGIS 2.12

Definition at line 393 of file qgsmapsettings.h.

◆ extent()

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 74 of file qgsmapsettings.cpp.

◆ extentBuffer()

double QgsMapSettings::extentBuffer ( ) const

Returns the buffer in map units to use around the visible extent for rendering symbols whose corresponding geometries are outside the visible extent.

See also
setExtentBuffer()
Since
QGIS 3.10

Definition at line 91 of file qgsmapsettings.cpp.

◆ flags()

QgsMapSettings::Flags QgsMapSettings::flags ( ) const

Returns combination of flags used for rendering.

Definition at line 349 of file qgsmapsettings.cpp.

◆ fullExtent()

QgsRectangle QgsMapSettings::fullExtent ( ) const

returns current extent of layer set

Definition at line 551 of file qgsmapsettings.cpp.

◆ hasValidSettings()

bool QgsMapSettings::hasValidSettings ( ) const

Check whether the map settings are valid and can be used for rendering.

Definition at line 365 of file qgsmapsettings.cpp.

◆ labelBlockingRegions()

QList< QgsLabelBlockingRegion > QgsMapSettings::labelBlockingRegions ( ) const
inline

Returns the list of regions to avoid placing labels within.

See also
setLabelBlockingRegions()
labelBoundaryGeometry()
Since
QGIS 3.6

Definition at line 579 of file qgsmapsettings.h.

◆ labelBoundaryGeometry()

QgsGeometry QgsMapSettings::labelBoundaryGeometry ( ) const

Returns the label boundary geometry, which restricts where in the rendered map labels are permitted to be placed.

By default this is a null geometry, which indicates that labels can be placed anywhere within the map's visiblePolygon().

The geometry is specified using the map's destinationCrs().

See also
setLabelBoundaryGeometry()
labelBlockingRegions()
Since
QGIS 3.6

Definition at line 675 of file qgsmapsettings.cpp.

◆ labelingEngineSettings()

const QgsLabelingEngineSettings& QgsMapSettings::labelingEngineSettings ( ) const
inline

Returns the global configuration of the labeling engine.

See also
setLabelingEngineSettings()
Since
QGIS 3.0

Definition at line 535 of file qgsmapsettings.h.

◆ layerExtentToOutputExtent()

QgsRectangle QgsMapSettings::layerExtentToOutputExtent ( const QgsMapLayer layer,
QgsRectangle  extent 
) const

transform bounding box from layer's CRS to output CRS

See also
layerToMapCoordinates( const QgsMapLayer *, QgsRectangle ) const if you want to transform a rectangle
Returns
a bounding box (aligned rectangle) containing the transformed extent

Definition at line 432 of file qgsmapsettings.cpp.

◆ layerIds()

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 275 of file qgsmapsettings.cpp.

◆ layers()

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 281 of file qgsmapsettings.cpp.

◆ layerStyleOverrides()

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.

Since
QGIS 2.8

Definition at line 299 of file qgsmapsettings.cpp.

◆ layerToMapCoordinates() [1/2]

QgsPointXY QgsMapSettings::layerToMapCoordinates ( const QgsMapLayer layer,
QgsPointXY  point 
) const

transform point coordinates from layer's CRS to output CRS

Returns
the transformed point

Definition at line 482 of file qgsmapsettings.cpp.

◆ layerToMapCoordinates() [2/2]

QgsRectangle QgsMapSettings::layerToMapCoordinates ( const QgsMapLayer layer,
QgsRectangle  rect 
) const

transform rectangle from layer's CRS to output CRS

See also
layerExtentToOutputExtent() if you want to transform a bounding box
Returns
the transformed rectangle

Definition at line 499 of file qgsmapsettings.cpp.

◆ layerToMapUnits()

double QgsMapSettings::layerToMapUnits ( const QgsMapLayer layer,
const QgsRectangle referenceExtent = QgsRectangle() 
) const

Computes an estimated conversion factor between layer and map units: layerUnits * layerToMapUnits = mapUnits.

Parameters
layerThe layer
referenceExtentA reference extent based on which to perform the computation. If not specified, the layer extent is used
Since
QGIS 2.12

Definition at line 426 of file qgsmapsettings.cpp.

◆ layerTransform()

QgsCoordinateTransform QgsMapSettings::layerTransform ( const QgsMapLayer layer) const

Returns the coordinate transform from layer's CRS to destination CRS.

Returns
transform - may be invalid if the transform is not needed

Definition at line 418 of file qgsmapsettings.cpp.

◆ magnificationFactor()

double QgsMapSettings::magnificationFactor ( ) const

Returns the magnification factor.

See also
setMagnificationFactor()
Since
QGIS 2.16

Definition at line 69 of file qgsmapsettings.cpp.

◆ mapToLayerCoordinates() [1/2]

QgsPointXY QgsMapSettings::mapToLayerCoordinates ( const QgsMapLayer layer,
QgsPointXY  point 
) const

transform point coordinates from output CRS to layer's CRS

Returns
the transformed point

Definition at line 516 of file qgsmapsettings.cpp.

◆ mapToLayerCoordinates() [2/2]

QgsRectangle QgsMapSettings::mapToLayerCoordinates ( const QgsMapLayer layer,
QgsRectangle  rect 
) const

transform rectangle from output CRS to layer's CRS

See also
outputExtentToLayerExtent() if you want to transform a bounding box
Returns
the transformed rectangle

Definition at line 533 of file qgsmapsettings.cpp.

◆ mapToPixel()

const QgsMapToPixel& QgsMapSettings::mapToPixel ( ) const
inline

Definition at line 433 of file qgsmapsettings.h.

◆ mapUnits()

QgsUnitTypes::DistanceUnit QgsMapSettings::mapUnits ( ) const

Gets units of map's geographical coordinates - used for scale calculation.

Definition at line 359 of file qgsmapsettings.cpp.

◆ mapUnitsPerPixel()

double QgsMapSettings::mapUnitsPerPixel ( ) const

Returns the distance in geographical coordinates that equals to one pixel in the map.

Definition at line 390 of file qgsmapsettings.cpp.

◆ outputDpi()

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 262 of file qgsmapsettings.cpp.

◆ outputExtentToLayerExtent()

QgsRectangle QgsMapSettings::outputExtentToLayerExtent ( const QgsMapLayer layer,
QgsRectangle  extent 
) const

transform bounding box from output CRS to layer's CRS

See also
mapToLayerCoordinates( const QgsMapLayer *, QgsRectangle ) const if you want to transform a rectangle
Returns
a bounding box (aligned rectangle) containing the transformed extent

Definition at line 457 of file qgsmapsettings.cpp.

◆ outputImageFormat()

QImage::Format QgsMapSettings::outputImageFormat ( ) const
inline

format of internal QImage, default QImage::Format_ARGB32_Premultiplied

Definition at line 358 of file qgsmapsettings.h.

◆ outputSize()

QSize QgsMapSettings::outputSize ( ) const

Returns the size of the resulting map image.

Definition at line 234 of file qgsmapsettings.cpp.

◆ pathResolver()

const QgsPathResolver& QgsMapSettings::pathResolver ( ) const
inline

Returns the path resolver for conversion between relative and absolute paths during rendering operations, e.g.

for resolving relative symbol paths.

See also
setPathResolver()
Since
QGIS 3.0

Definition at line 422 of file qgsmapsettings.h.

◆ readXml()

void QgsMapSettings::readXml ( QDomNode &  node)

Definition at line 610 of file qgsmapsettings.cpp.

◆ renderedFeatureHandlers()

QList< QgsRenderedFeatureHandlerInterface * > QgsMapSettings::renderedFeatureHandlers ( ) const

Returns the list of rendered feature handlers to use while rendering the map settings.

See also
addRenderedFeatureHandler()
Since
QGIS 3.10

Definition at line 690 of file qgsmapsettings.cpp.

◆ rotation()

double QgsMapSettings::rotation ( ) const

Returns the rotation of the resulting map image, in degrees clockwise.

See also
setRotation()
Since
QGIS 2.8

Definition at line 101 of file qgsmapsettings.cpp.

◆ scale()

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 395 of file qgsmapsettings.cpp.

◆ segmentationTolerance()

double QgsMapSettings::segmentationTolerance ( ) const
inline

Gets the segmentation tolerance applied when rendering curved geometries.

Definition at line 503 of file qgsmapsettings.h.

◆ segmentationToleranceType()

QgsAbstractGeometry::SegmentationToleranceType QgsMapSettings::segmentationToleranceType ( ) const
inline

Gets segmentation tolerance type (maximum angle or maximum difference between curve and approximation)

Definition at line 510 of file qgsmapsettings.h.

◆ selectionColor()

QColor QgsMapSettings::selectionColor ( ) const
inline

Gets color that is used for drawing of selected vector features.

Definition at line 297 of file qgsmapsettings.h.

◆ setBackgroundColor()

void QgsMapSettings::setBackgroundColor ( const QColor &  color)
inline

Sets the background color of the map.

Definition at line 290 of file qgsmapsettings.h.

◆ setCustomRenderFlags()

Q_DECL_DEPRECATED void QgsMapSettings::setCustomRenderFlags ( const QString &  customRenderFlags)
inline

Sets the custom rendering flags.

Layers might honour these to alter their rendering.

Parameters
customRenderFlagscustom flags strings, separated by ';'
See also
customRenderFlags()
Since
QGIS 2.16
Deprecated:
use
See also
setCustomRenderingFlag() instead.

Definition at line 236 of file qgsmapsettings.h.

◆ setCustomRenderingFlag()

void QgsMapSettings::setCustomRenderingFlag ( const QString &  flag,
const QVariant &  value 
)
inline

Sets a custom rendering flag.

Layers might honour these to alter their rendering.

Parameters
flagthe flag name
valuethe flag value
See also
customRenderingFlags()
Since
QGIS 3.12

Definition at line 253 of file qgsmapsettings.h.

◆ setDestinationCrs()

void QgsMapSettings::setDestinationCrs ( const QgsCoordinateReferenceSystem crs)

sets destination coordinate reference system

Definition at line 309 of file qgsmapsettings.cpp.

◆ setDevicePixelRatio()

void QgsMapSettings::setDevicePixelRatio ( float  dpr)

Sets the device pixel ratio Common values are 1 for normal-dpi displays and 2 for high-dpi "retina" displays.

Since
QGIS 3.4

Definition at line 251 of file qgsmapsettings.cpp.

◆ setEllipsoid()

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.

Returns
true if ellipsoid was successfully set
See also
ellipsoid()
Since
QGIS 3.0

Definition at line 322 of file qgsmapsettings.cpp.

◆ setExpressionContext()

void QgsMapSettings::setExpressionContext ( const QgsExpressionContext context)
inline

Sets the expression context.

This context is used for all expression evaluation associated with this map settings.

See also
expressionContext()
Since
QGIS 2.12

Definition at line 385 of file qgsmapsettings.h.

◆ setExtent()

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 79 of file qgsmapsettings.cpp.

◆ setExtentBuffer()

void QgsMapSettings::setExtentBuffer ( double  buffer)

Sets the buffer in map units to use around the visible extent for rendering symbols whose corresponding geometries are outside the visible extent.

This is useful when using tiles to avoid cut symbols at tile boundaries.

Since
QGIS 3.10

Definition at line 96 of file qgsmapsettings.cpp.

◆ setFlag()

void QgsMapSettings::setFlag ( QgsMapSettings::Flag  flag,
bool  on = true 
)

Enable or disable a particular flag (other flags are not affected)

Definition at line 341 of file qgsmapsettings.cpp.

◆ setFlags()

void QgsMapSettings::setFlags ( QgsMapSettings::Flags  flags)

Sets combination of flags that will be used for rendering.

Definition at line 336 of file qgsmapsettings.cpp.

◆ setLabelBlockingRegions()

void QgsMapSettings::setLabelBlockingRegions ( const QList< QgsLabelBlockingRegion > &  regions)
inline

Sets a list of regions to avoid placing labels within.

See also
labelBlockingRegions()
setLabelBoundaryGeometry()
Since
QGIS 3.6

Definition at line 571 of file qgsmapsettings.h.

◆ setLabelBoundaryGeometry()

void QgsMapSettings::setLabelBoundaryGeometry ( const QgsGeometry boundary)

Sets the label boundary geometry, which restricts where in the rendered map labels are permitted to be placed.

A null boundary geometry (the default) indicates that labels can be placed anywhere within the map's visiblePolygon().

The geometry is specified using the map's destinationCrs().

See also
labelBoundaryGeometry()
setLabelBlockingRegions()
Since
QGIS 3.6

Definition at line 680 of file qgsmapsettings.cpp.

◆ setLabelingEngineSettings()

void QgsMapSettings::setLabelingEngineSettings ( const QgsLabelingEngineSettings settings)
inline

Sets the global configuration of the labeling engine.

Note
Calling this method will reset the textRenderFormat() to match the default text render format from the label engine settings.
See also
labelingEngineSettings()
Since
QGIS 3.0

Definition at line 522 of file qgsmapsettings.h.

◆ setLayers()

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)

Note
Any non-spatial layers will be automatically stripped from the list (since they cannot be rendered!).

Definition at line 286 of file qgsmapsettings.cpp.

◆ setLayerStyleOverrides()

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.

Since
QGIS 2.8

Definition at line 304 of file qgsmapsettings.cpp.

◆ setMagnificationFactor()

void QgsMapSettings::setMagnificationFactor ( double  factor,
const QgsPointXY center = nullptr 
)

Set the magnification factor.

Parameters
factorthe factor of magnification
centeroptional point to re-center the map
See also
magnificationFactor()
Since
QGIS 2.16

Definition at line 48 of file qgsmapsettings.cpp.

◆ setOutputDpi()

void QgsMapSettings::setOutputDpi ( double  dpi)

Sets DPI used for conversion between real world units (e.g. mm) and pixels.

Definition at line 267 of file qgsmapsettings.cpp.

◆ setOutputImageFormat()

void QgsMapSettings::setOutputImageFormat ( QImage::Format  format)
inline

sets format of internal QImage

Definition at line 356 of file qgsmapsettings.h.

◆ setOutputSize()

void QgsMapSettings::setOutputSize ( QSize  size)

Sets the size of the resulting map image.

Definition at line 239 of file qgsmapsettings.cpp.

◆ setPathResolver()

void QgsMapSettings::setPathResolver ( const QgsPathResolver resolver)
inline

Sets the path resolver for conversion between relative and absolute paths during rendering operations, e.g.

for resolving relative symbol paths.

See also
pathResolver()
Since
QGIS 3.0

Definition at line 431 of file qgsmapsettings.h.

◆ setRotation()

void QgsMapSettings::setRotation ( double  rotation)

Sets the rotation of the resulting map image, in degrees clockwise.

See also
rotation()
Since
QGIS 2.8

Definition at line 106 of file qgsmapsettings.cpp.

◆ setSegmentationTolerance()

void QgsMapSettings::setSegmentationTolerance ( double  tolerance)
inline

Sets the segmentation tolerance applied when rendering curved geometries.

Parameters
tolerancethe segmentation tolerance

Definition at line 501 of file qgsmapsettings.h.

◆ setSegmentationToleranceType()

void QgsMapSettings::setSegmentationToleranceType ( QgsAbstractGeometry::SegmentationToleranceType  type)
inline

Sets segmentation tolerance type (maximum angle or maximum difference between curve and approximation)

Parameters
typethe segmentation tolerance typename

Definition at line 508 of file qgsmapsettings.h.

◆ setSelectionColor()

void QgsMapSettings::setSelectionColor ( const QColor &  color)
inline

Sets color that is used for drawing of selected vector features.

Definition at line 295 of file qgsmapsettings.h.

◆ setSimplifyMethod()

void QgsMapSettings::setSimplifyMethod ( const QgsVectorSimplifyMethod method)
inline

Sets the simplification setting to use when rendering vector layers.

If the simplify method is enabled, it will override all other layer-specific simplification settings and will apply to all vector layers rendered for the map.

This can be used to specify global simplification methods to apply during map exports, e.g. to allow vector layers to be simplified to an appropriate maximum level of detail during PDF exports.

The default is to use no global simplification, and fallback to individual layer's settings instead.

See also
simplifyMethod()
Since
QGIS 3.10

Definition at line 597 of file qgsmapsettings.h.

◆ setTextRenderFormat()

void QgsMapSettings::setTextRenderFormat ( QgsRenderContext::TextRenderFormat  format)
inline

Sets the text render format, which dictates how text is rendered (e.g.

as paths or real text objects).

Warning
Calling the setLabelingEngineSettings() method will reset the text render format to match the default text render format from the label engine settings.
See also
textRenderFormat()
Since
QGIS 3.4.3

Definition at line 347 of file qgsmapsettings.h.

◆ setTransformContext()

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.

See also
transformContext()
Since
QGIS 3.0

Definition at line 410 of file qgsmapsettings.cpp.

◆ simplifyMethod()

const QgsVectorSimplifyMethod& QgsMapSettings::simplifyMethod ( ) const
inline

Returns the simplification settings to use when rendering vector layers.

If enabled, it will override all other layer-specific simplification settings and will apply to all vector layers rendered for the map.

The default is to use no global simplification, and fallback to individual layer's settings instead.

See also
setSimplifyMethod()
Since
QGIS 3.10

Definition at line 610 of file qgsmapsettings.h.

◆ testFlag()

bool QgsMapSettings::testFlag ( QgsMapSettings::Flag  flag) const

Check whether a particular flag is enabled.

Definition at line 354 of file qgsmapsettings.cpp.

◆ textRenderFormat()

QgsRenderContext::TextRenderFormat QgsMapSettings::textRenderFormat ( ) const
inline

Returns the text render format, which dictates how text is rendered (e.g.

as paths or real text objects).

See also
setTextRenderFormat()
Since
QGIS 3.4.3

Definition at line 333 of file qgsmapsettings.h.

◆ transformContext()

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.

See also
setTransformContext()
Since
QGIS 3.0

Definition at line 400 of file qgsmapsettings.cpp.

◆ updateDerived()

void QgsMapSettings::updateDerived ( )
protected

Definition at line 118 of file qgsmapsettings.cpp.

◆ visibleExtent()

QgsRectangle QgsMapSettings::visibleExtent ( ) const

Returns the actual extent derived from requested extent that takes takes output image size into account.

Definition at line 370 of file qgsmapsettings.cpp.

◆ visiblePolygon()

QPolygonF QgsMapSettings::visiblePolygon ( ) const

Returns the visible area as a polygon (may be rotated)

Since
QGIS 2.8

Definition at line 375 of file qgsmapsettings.cpp.

◆ writeXml()

void QgsMapSettings::writeXml ( QDomNode &  node,
QDomDocument &  doc 
)

Definition at line 645 of file qgsmapsettings.cpp.

Member Data Documentation

◆ mBackgroundColor

QColor QgsMapSettings::mBackgroundColor
protected

Definition at line 654 of file qgsmapsettings.h.

◆ mCustomRenderFlags

QString QgsMapSettings::mCustomRenderFlags
protected

Definition at line 646 of file qgsmapsettings.h.

◆ mCustomRenderingFlags

QVariantMap QgsMapSettings::mCustomRenderingFlags
protected

Definition at line 647 of file qgsmapsettings.h.

◆ mDestCRS

QgsCoordinateReferenceSystem QgsMapSettings::mDestCRS
protected

Definition at line 650 of file qgsmapsettings.h.

◆ mDevicePixelRatio

float QgsMapSettings::mDevicePixelRatio = 1.0
protected

Definition at line 635 of file qgsmapsettings.h.

◆ mDpi

double QgsMapSettings::mDpi
protected

Definition at line 632 of file qgsmapsettings.h.

◆ mEllipsoid

QString QgsMapSettings::mEllipsoid
protected

ellipsoid acronym (from table tbl_ellipsoids)

Definition at line 652 of file qgsmapsettings.h.

◆ mExpressionContext

QgsExpressionContext QgsMapSettings::mExpressionContext
protected

Definition at line 648 of file qgsmapsettings.h.

◆ mExtent

QgsRectangle QgsMapSettings::mExtent
protected

Definition at line 637 of file qgsmapsettings.h.

◆ mExtentBuffer

double QgsMapSettings::mExtentBuffer = 0.0
protected

Definition at line 638 of file qgsmapsettings.h.

◆ mFlags

Flags QgsMapSettings::mFlags
protected

Definition at line 657 of file qgsmapsettings.h.

◆ mImageFormat

QImage::Format QgsMapSettings::mImageFormat = QImage::Format_ARGB32_Premultiplied
protected

Definition at line 659 of file qgsmapsettings.h.

◆ mLabelBoundaryGeometry

QgsGeometry QgsMapSettings::mLabelBoundaryGeometry
protected

Definition at line 682 of file qgsmapsettings.h.

◆ mLabelingEngineSettings

QgsLabelingEngineSettings QgsMapSettings::mLabelingEngineSettings
protected

Definition at line 664 of file qgsmapsettings.h.

◆ mLayers

QgsWeakMapLayerPointerList QgsMapSettings::mLayers
protected

list of layers to be rendered (stored as weak pointers)

Definition at line 644 of file qgsmapsettings.h.

◆ mLayerStyleOverrides

QMap<QString, QString> QgsMapSettings::mLayerStyleOverrides
protected

Definition at line 645 of file qgsmapsettings.h.

◆ mMagnificationFactor

double QgsMapSettings::mMagnificationFactor = 1.0
protected

Definition at line 641 of file qgsmapsettings.h.

◆ mMapToPixel

QgsMapToPixel QgsMapSettings::mMapToPixel
protected

Definition at line 674 of file qgsmapsettings.h.

◆ mMapUnitsPerPixel

double QgsMapSettings::mMapUnitsPerPixel = 1
protected

Definition at line 669 of file qgsmapsettings.h.

◆ mPathResolver

QgsPathResolver QgsMapSettings::mPathResolver
protected

Definition at line 678 of file qgsmapsettings.h.

◆ mRotation

double QgsMapSettings::mRotation = 0.0
protected

Definition at line 640 of file qgsmapsettings.h.

◆ mScale

double QgsMapSettings::mScale = 1
protected

Definition at line 670 of file qgsmapsettings.h.

◆ mScaleCalculator

QgsScaleCalculator QgsMapSettings::mScaleCalculator
protected

Definition at line 673 of file qgsmapsettings.h.

◆ mSegmentationTolerance

double QgsMapSettings::mSegmentationTolerance
protected

Definition at line 661 of file qgsmapsettings.h.

◆ mSegmentationToleranceType

QgsAbstractGeometry::SegmentationToleranceType QgsMapSettings::mSegmentationToleranceType = QgsAbstractGeometry::MaximumAngle
protected

Definition at line 662 of file qgsmapsettings.h.

◆ mSelectionColor

QColor QgsMapSettings::mSelectionColor
protected

Definition at line 655 of file qgsmapsettings.h.

◆ mSimplifyMethod

QgsVectorSimplifyMethod QgsMapSettings::mSimplifyMethod
protected

Definition at line 684 of file qgsmapsettings.h.

◆ mSize

QSize QgsMapSettings::mSize
protected

Definition at line 634 of file qgsmapsettings.h.

◆ mTextRenderFormat

Definition at line 680 of file qgsmapsettings.h.

◆ mTransformContext

QgsCoordinateTransformContext QgsMapSettings::mTransformContext
protected

Definition at line 676 of file qgsmapsettings.h.

◆ mValid

bool QgsMapSettings::mValid = false
protected

Whether the actual settings are valid (set in updateDerived())

Definition at line 667 of file qgsmapsettings.h.

◆ mVisibleExtent

QgsRectangle QgsMapSettings::mVisibleExtent
protected

Extent with some additional white space that matches the output aspect ratio.

Definition at line 668 of file qgsmapsettings.h.


The documentation for this class was generated from the following files: