Class: QgsMapSettings¶
-
class
qgis.core.
QgsMapSettings
¶ Bases:
sip.wrapper
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.
New in version 2.4: Enums
Methods
Gets the background color of the map
Gets custom rendering flags.
returns CRS of destination coordinate reference system
Returns the device output size of the map canvas This is equivalent to the output size multiplicated by the device pixel ratio.
Returns device pixel ratio Common values are 1 for normal-dpi displays and 2 for high-dpi “retina” displays.
Returns ellipsoid’s acronym.
Gets the expression context.
Returns geographical coordinates of the rectangle that should be rendered.
Returns combination of flags used for rendering
returns current extent of layer set
Check whether the map settings are valid and can be used for rendering
Returns the list of regions to avoid placing labels within.
Returns the label boundary geometry, which restricts where in the rendered map labels are permitted to be placed.
Returns the global configuration of the labeling engine.
transform bounding box from layer’s CRS to output CRS
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)
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
transform point coordinates from layer’s CRS to output CRS
Computes an estimated conversion factor between layer and map units: layerUnits * layerToMapUnits = mapUnits
Returns the coordinate transform from layer’s CRS to destination CRS
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)
Returns the magnification factor.
transform point coordinates from output CRS to layer’s CRS
Gets units of map’s geographical coordinates - used for scale calculation
Returns the distance in geographical coordinates that equals to one pixel in the map
Returns DPI used for conversion between real world units (e.g.
transform bounding box from output CRS to layer’s CRS
format of internal QImage, default QImage.Format_ARGB32_Premultiplied
Returns the size of the resulting map image
Returns the path resolver for conversion between relative and absolute paths during rendering operations, e.g.
serialization */
Returns the rotation of the resulting map image, in degrees clockwise.
Returns the calculated map scale.
Gets the segmentation tolerance applied when rendering curved geometries
Gets segmentation tolerance type (maximum angle or maximum difference between curve and approximation)
Gets color that is used for drawing of selected vector features
Sets the background color of the map
Sets the custom rendering flags.
sets destination coordinate reference system
Sets the device pixel ratio Common values are 1 for normal-dpi displays and 2 for high-dpi “retina” displays.
Sets the
ellipsoid
by its acronym.Sets the expression context.
Set coordinates of the rectangle which should be rendered.
Enable or disable a particular flag (other flags are not affected)
Sets combination of flags that will be used for rendering
Sets a list of
regions
to avoid placing labels within.Sets the label
boundary
geometry, which restricts where in the rendered map labels are permitted to be placed.Sets the global configuration of the labeling engine.
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
Set list of layers for map rendering.
Set the magnification factor.
Sets DPI used for conversion between real world units (e.g.
sets format of internal QImage
Sets the size of the resulting map image
Sets the path
resolver
for conversion between relative and absolute paths during rendering operations, e.g.Sets the
rotation
of the resulting map image, in degrees clockwise.Sets the segmentation tolerance applied when rendering curved geometries
Sets segmentation tolerance type (maximum angle or maximum difference between curve and approximation)
Sets color that is used for drawing of selected vector features
Sets the text render
format
, which dictates how text is rendered (e.g.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.Check whether a particular flag is enabled
Returns the text render format, which dictates how text is rendered (e.g.
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.
Returns the actual extent derived from requested extent that takes takes output image size into account
Returns the visible area as a polygon (may be rotated)
Signals
Attributes
-
Antialiasing
= 1¶
-
DrawEditingInfo
= 2¶
-
DrawLabeling
= 16¶
-
DrawSelection
= 64¶
-
DrawSymbolBounds
= 128¶
-
class
Flag
¶ Bases:
int
-
class
Flags
¶ Bases:
sip.wrapper
QgsMapSettings.Flags(Union[QgsMapSettings.Flags, QgsMapSettings.Flag]) QgsMapSettings.Flags(QgsMapSettings.Flags)
-
ForceVectorOutput
= 4¶
-
RenderMapTile
= 256¶
-
RenderPartialOutput
= 512¶
-
RenderPreviewJob
= 1024¶
-
UseAdvancedEffects
= 8¶
-
UseRenderingOptimization
= 32¶
-
backgroundColor
(self) → QColor¶ Gets the background color of the map
-
customRenderFlags
(self) → str¶ Gets custom rendering flags. Layers might honour these to alter their rendering.
- Returns
custom flags strings, separated by ‘;’
See also
New in version 2.16.
-
destinationCrs
(self) → QgsCoordinateReferenceSystem¶ returns CRS of destination coordinate reference system
-
deviceOutputSize
(self) → QSize¶ Returns the device output size of the map canvas This is equivalent to the output size multiplicated by the device pixel ratio.
New in version 3.4.
-
devicePixelRatio
(self) → float¶ Returns device pixel ratio Common values are 1 for normal-dpi displays and 2 for high-dpi “retina” displays.
New in version 3.4.
-
ellipsoid
(self) → str¶ Returns ellipsoid’s acronym. Calculations will only use the ellipsoid if a valid ellipsoid has been set.
See also
New in version 3.0.
-
expressionContext
(self) → QgsExpressionContext¶ Gets the expression context. This context should be used for all expression evaluation associated with this map settings.
See also
New in version 2.12.
-
extent
(self) → QgsRectangle¶ 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.
-
flags
(self) → QgsMapSettings.Flags¶ Returns combination of flags used for rendering
-
fullExtent
(self) → QgsRectangle¶ returns current extent of layer set
-
hasValidSettings
(self) → bool¶ Check whether the map settings are valid and can be used for rendering
-
labelBlockingRegions
(self) → List[QgsLabelBlockingRegion]¶ Returns the list of regions to avoid placing labels within.
See also
See also
New in version 3.6.
-
labelBoundaryGeometry
(self) → QgsGeometry¶ 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
See also
New in version 3.6.
-
labelingEngineSettings
(self) → QgsLabelingEngineSettings¶ Returns the global configuration of the labeling engine.
See also
New in version 3.0.
-
layerExtentToOutputExtent
(self, layer: QgsMapLayer, extent: QgsRectangle) → QgsRectangle¶ transform bounding box from layer’s CRS to output CRS
See also
- Returns
a bounding box (aligned rectangle) containing the transformed extent
-
layerIds
(self) → List[str]¶ 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)
-
layerStyleOverrides
(self) → Dict[str, str]¶ 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
New in version 2.8.
-
layerToMapCoordinates
(self, layer: QgsMapLayer, point: QgsPointXY) → QgsPointXY¶ transform point coordinates from layer’s CRS to output CRS
- Returns
the transformed point
layerToMapCoordinates(self, layer: QgsMapLayer, rect: QgsRectangle) -> QgsRectangle transform rectangle from layer’s CRS to output CRS
See also
- Returns
the transformed rectangle
-
layerToMapUnits
(self, layer: QgsMapLayer, referenceExtent: QgsRectangle = QgsRectangle()) → float¶ Computes an estimated conversion factor between layer and map units: layerUnits * layerToMapUnits = mapUnits
- Parameters
layer – The layer
referenceExtent – A reference extent based on which to perform the computation. If not specified, the layer extent is used
New in version 2.12.
-
layerTransform
(self, layer: QgsMapLayer) → QgsCoordinateTransform¶ Returns the coordinate transform from layer’s CRS to destination CRS
- Returns
transform - may be invalid if the transform is not needed
-
layers
(self) → List[QgsMapLayer]¶ 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)
-
magnificationFactor
(self) → float¶ Returns the magnification factor.
See also
New in version 2.16.
-
mapToLayerCoordinates
(self, layer: QgsMapLayer, point: QgsPointXY) → QgsPointXY¶ transform point coordinates from output CRS to layer’s CRS
- Returns
the transformed point
mapToLayerCoordinates(self, layer: QgsMapLayer, rect: QgsRectangle) -> QgsRectangle transform rectangle from output CRS to layer’s CRS
See also
- Returns
the transformed rectangle
-
mapToPixel
(self) → QgsMapToPixel¶
-
mapUnits
(self) → QgsUnitTypes.DistanceUnit¶ Gets units of map’s geographical coordinates - used for scale calculation
-
mapUnitsPerPixel
(self) → float¶ Returns the distance in geographical coordinates that equals to one pixel in the map
-
outputDpi
(self) → float¶ Returns DPI used for conversion between real world units (e.g. mm) and pixels Default value is 96
-
outputExtentToLayerExtent
(self, layer: QgsMapLayer, extent: QgsRectangle) → QgsRectangle¶ transform bounding box from output CRS to layer’s CRS
See also
- Returns
a bounding box (aligned rectangle) containing the transformed extent
-
outputImageFormat
(self) → QImage.Format¶ format of internal QImage, default QImage.Format_ARGB32_Premultiplied
-
outputSize
(self) → QSize¶ Returns the size of the resulting map image
-
pathResolver
(self) → QgsPathResolver¶ Returns the path resolver for conversion between relative and absolute paths during rendering operations, e.g. for resolving relative symbol paths.
See also
New in version 3.0.
-
rotation
(self) → float¶ Returns the rotation of the resulting map image, in degrees clockwise.
See also
New in version 2.8.
-
scale
(self) → float¶ Returns the calculated map scale. The scale value indicates the scale denominator, e.g. 1000.0 for a 1:1000 map.
-
segmentationTolerance
(self) → float¶ Gets the segmentation tolerance applied when rendering curved geometries
-
segmentationToleranceType
(self) → QgsAbstractGeometry.SegmentationToleranceType¶ Gets segmentation tolerance type (maximum angle or maximum difference between curve and approximation)
-
selectionColor
(self) → QColor¶ Gets color that is used for drawing of selected vector features
-
setBackgroundColor
(self, color: Union[QColor, Qt.GlobalColor, QGradient])¶ Sets the background color of the map
-
setCustomRenderFlags
(self, customRenderFlags: str)¶ Sets the custom rendering flags. Layers might honour these to alter their rendering.
- Parameters
customRenderFlags – custom flags strings, separated by ‘;’
See also
New in version 2.16.
-
setDestinationCrs
(self, crs: QgsCoordinateReferenceSystem)¶ sets destination coordinate reference system
-
setDevicePixelRatio
(self, dpr: float)¶ Sets the device pixel ratio Common values are 1 for normal-dpi displays and 2 for high-dpi “retina” displays.
New in version 3.4.
-
setEllipsoid
(self, ellipsoid: str) → bool¶ Sets the
ellipsoid
by its acronym. Known ellipsoid acronyms can be retrieved usingQgsEllipsoidUtils.acronyms()
Calculations will only use the ellipsoid if a valid ellipsoid has been set.- Returns
true if ellipsoid was successfully set
See also
New in version 3.0.
-
setExpressionContext
(self, context: QgsExpressionContext)¶ Sets the expression context. This context is used for all expression evaluation associated with this map settings.
See also
New in version 2.12.
-
setExtent
(self, rect: QgsRectangle, magnified: bool = 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.
-
setFlag
(self, flag: QgsMapSettings.Flag, on: bool = True)¶ Enable or disable a particular flag (other flags are not affected)
-
setFlags
(self, flags: Union[QgsMapSettings.Flags, QgsMapSettings.Flag])¶ Sets combination of flags that will be used for rendering
-
setLabelBlockingRegions
(self, regions: object)¶ Sets a list of
regions
to avoid placing labels within.See also
See also
New in version 3.6.
-
setLabelBoundaryGeometry
(self, boundary: QgsGeometry)¶ 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
See also
New in version 3.6.
-
setLabelingEngineSettings
(self, settings: QgsLabelingEngineSettings)¶ 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
New in version 3.0.
-
setLayerStyleOverrides
(self, overrides: Dict[str, str])¶ 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
New in version 2.8.
-
setLayers
(self, layers: Iterable[QgsMapLayer])¶ 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!).
-
setMagnificationFactor
(self, factor: float)¶ Set the magnification factor.
- Parameters
factor – the factor of magnification
See also
New in version 2.16.
-
setOutputDpi
(self, dpi: float)¶ Sets DPI used for conversion between real world units (e.g. mm) and pixels
-
setOutputImageFormat
(self, format: QImage.Format)¶ sets format of internal QImage
-
setOutputSize
(self, size: QSize)¶ Sets the size of the resulting map image
-
setPathResolver
(self, resolver: QgsPathResolver)¶ Sets the path
resolver
for conversion between relative and absolute paths during rendering operations, e.g. for resolving relative symbol paths.See also
New in version 3.0.
-
setRotation
(self, rotation: float)¶ Sets the
rotation
of the resulting map image, in degrees clockwise.See also
New in version 2.8.
-
setSegmentationTolerance
(self, tolerance: float)¶ Sets the segmentation tolerance applied when rendering curved geometries
- Parameters
tolerance – the segmentation tolerance*
-
setSegmentationToleranceType
(self, type: QgsAbstractGeometry.SegmentationToleranceType)¶ Sets segmentation tolerance type (maximum angle or maximum difference between curve and approximation)
- Parameters
type – the segmentation tolerance typename*
-
setSelectionColor
(self, color: Union[QColor, Qt.GlobalColor, QGradient])¶ Sets color that is used for drawing of selected vector features
-
setTextRenderFormat
(self, format: QgsRenderContext.TextRenderFormat)¶ 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
New in version 3.4.3.
-
setTransformContext
(self, context: QgsCoordinateTransformContext)¶ 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
New in version 3.0.
-
testFlag
(self, flag: QgsMapSettings.Flag) → bool¶ Check whether a particular flag is enabled
-
textRenderFormat
(self) → QgsRenderContext.TextRenderFormat¶ Returns the text render format, which dictates how text is rendered (e.g. as paths or real text objects).
See also
New in version 3.4.3.
-
transformContext
(self) → QgsCoordinateTransformContext¶ 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
New in version 3.0.
-
updateDerived
(self)¶
-
visibleExtent
(self) → QgsRectangle¶ Returns the actual extent derived from requested extent that takes takes output image size into account
-
visiblePolygon
(self) → QPolygonF¶ Returns the visible area as a polygon (may be rotated)
New in version 2.8.
-
writeXml
(self, node: QDomNode, doc: QDomDocument)¶
-