16 #ifndef QGSMAPSETTINGS_H
17 #define QGSMAPSETTINGS_H
19 #include "qgis_core.h"
25 #include <QStringList>
62 : geometry( geometry )
115 void setExtent(
const QgsRectangle &rect,
bool magnified =
true );
123 double extentBuffer()
const;
131 void setExtentBuffer(
double buffer );
139 QSize outputSize()
const;
146 void setOutputSize( QSize size );
154 float devicePixelRatio()
const;
162 void setDevicePixelRatio(
float dpr );
176 QSize deviceOutputSize()
const;
183 double rotation()
const;
190 void setRotation(
double rotation );
199 double outputDpi()
const;
206 void setOutputDpi(
double dpi );
216 double dpiTarget()
const;
224 void setDpiTarget(
double dpi );
233 void setMagnificationFactor(
double factor,
const QgsPointXY *center =
nullptr );
240 double magnificationFactor()
const;
250 QStringList layerIds()
const;
260 QList<QgsMapLayer *> layers()
const;
272 void setLayers(
const QList<QgsMapLayer *> &layers );
280 QMap<QString, QString> layerStyleOverrides()
const;
288 void setLayerStyleOverrides(
const QMap<QString, QString> &overrides );
306 Q_DECL_DEPRECATED
void setCustomRenderFlags(
const QString &customRenderFlags ) { mCustomRenderFlags = customRenderFlags; }
360 bool setEllipsoid(
const QString &ellipsoid );
399 void setFlags( Qgis::MapSettingsFlags flags );
403 Qgis::MapSettingsFlags flags()
const;
415 return mTextRenderFormat;
429 mTextRenderFormat = format;
432 mLabelingEngineSettings.setDefaultTextRenderFormat( format );
441 bool hasValidSettings()
const;
449 QPolygonF visiblePolygon()
const;
456 QPolygonF visiblePolygonWithBuffer()
const;
459 double mapUnitsPerPixel()
const;
465 double scale()
const;
611 double computeScaleForExtent(
const QgsRectangle &extent )
const;
618 void readXml( QDomNode &node );
620 void writeXml( QDomNode &node, QDomDocument &doc );
650 mLabelingEngineSettings = settings;
689 void setLabelBoundaryGeometry(
const QgsGeometry &boundary );
725 void setClippingRegions(
const QList< QgsMapClippingRegion > ®ions );
735 QList< QgsMapClippingRegion > clippingRegions()
const;
784 QList< QgsRenderedFeatureHandlerInterface * > renderedFeatureHandlers()
const;
805 double mDpiTarget = -1;
808 float mDevicePixelRatio = 1.0;
811 double mExtentBuffer = 0.0;
813 double mRotation = 0.0;
814 double mMagnificationFactor = 1.0;
832 QImage::Format mImageFormat = QImage::Format_ARGB32_Premultiplied;
844 double mMapUnitsPerPixel = 1;
862 bool mHasTransformContext =
false;
865 void updateDerived();
869 QList< QgsLabelBlockingRegion > mLabelBlockingRegions;
870 QList< QgsMapClippingRegion > mClippingRegions;
871 QList< QgsRenderedFeatureHandlerInterface * > mRenderedFeatureHandlers;
TextRenderFormat
Options for rendering text.
MapSettingsFlag
Flags which adjust the way maps are rendered.
SegmentationToleranceType
Segmentation tolerance as maximum angle or maximum difference between approximation and circle.
@ MaximumAngle
Maximum angle between generating radii (lines from arc center to output vertices)
This class represents a coordinate reference system (CRS).
Contains information about the context in which a coordinate transform is executed.
QgsRange which stores a range of double values.
Expression contexts are used to encapsulate the parameters around which a QgsExpression should be eva...
A geometry is the spatial representation of a feature.
Label blocking region (in map coordinates and CRS).
QgsGeometry geometry
Geometry of region to avoid placing labels within (in destination map coordinates and CRS)
QgsLabelBlockingRegion(const QgsGeometry &geometry)
Constructor for a label blocking region.
Stores global configuration for labeling engine.
Qgis::TextRenderFormat defaultTextRenderFormat() const
Returns the default text rendering format for the labels.
A map clipping region (in map coordinates and CRS).
Base class for all map layer types.
Abstract base class for map rendering implementations.
The QgsMapSettings class contains configuration for rendering of the map.
QgsVectorSimplifyMethod mSimplifyMethod
void setSelectionColor(const QColor &color)
Sets the color that is used for drawing of selected vector features.
void setSimplifyMethod(const QgsVectorSimplifyMethod &method)
Sets the simplification setting to use when rendering vector layers.
QgsRectangle mVisibleExtent
Extent with some additional white space that matches the output aspect ratio.
Q_DECL_DEPRECATED void setCustomRenderFlags(const QString &customRenderFlags)
Sets the custom rendering flags.
void setTextRenderFormat(Qgis::TextRenderFormat format)
Sets the text render format, which dictates how text is rendered (e.g.
void clearCustomRenderingFlag(const QString &flag)
Clears the specified custom rendering flag.
double segmentationTolerance() const
Gets the segmentation tolerance applied when rendering curved geometries.
Qgis::MapSettingsFlags mFlags
QString mCustomRenderFlags
QgsLabelingEngineSettings mLabelingEngineSettings
QString mEllipsoid
ellipsoid acronym (from table tbl_ellipsoids)
QColor backgroundColor() const
Returns the background color of the map.
const QgsExpressionContext & expressionContext() const
Gets the expression context.
void setCustomRenderingFlag(const QString &flag, const QVariant &value)
Sets a custom rendering flag.
void setOutputImageFormat(QImage::Format format)
sets format of internal QImage
const QgsPathResolver & pathResolver() const
Returns the path resolver for conversion between relative and absolute paths during rendering operati...
QMap< QString, QString > mLayerStyleOverrides
QList< QgsLabelBlockingRegion > labelBlockingRegions() const
Returns the list of regions to avoid placing labels within.
void setSegmentationTolerance(double tolerance)
Sets the segmentation tolerance applied when rendering curved geometries.
QgsGeometry mLabelBoundaryGeometry
QgsCoordinateTransformContext mTransformContext
QImage::Format outputImageFormat() const
format of internal QImage, default QImage::Format_ARGB32_Premultiplied
QgsPathResolver mPathResolver
QgsScaleCalculator mScaleCalculator
void setExpressionContext(const QgsExpressionContext &context)
Sets the expression context.
QVariantMap mCustomRenderingFlags
QgsExpressionContext mExpressionContext
const QgsMapToPixel & mapToPixel() const
QColor selectionColor() const
Returns the color that is used for drawing of selected vector features.
QgsAbstractGeometry::SegmentationToleranceType segmentationToleranceType() const
Gets segmentation tolerance type (maximum angle or maximum difference between curve and approximation...
const QgsVectorSimplifyMethod & simplifyMethod() const
Returns the simplification settings to use when rendering vector layers.
QVariantMap customRenderingFlags() const
Returns any custom rendering flags.
void setLabelingEngineSettings(const QgsLabelingEngineSettings &settings)
Sets the global configuration of the labeling engine.
Q_DECL_DEPRECATED QString customRenderFlags() const
Returns custom rendering flags.
QString ellipsoid() const
Returns ellipsoid's acronym.
void setPathResolver(const QgsPathResolver &resolver)
Sets the path resolver for conversion between relative and absolute paths during rendering operations...
const QgsLabelingEngineSettings & labelingEngineSettings() const
Returns the global configuration of the labeling engine.
Qgis::TextRenderFormat textRenderFormat() const
Returns the text render format, which dictates how text is rendered (e.g.
QgsCoordinateReferenceSystem mDestCRS
QgsMapToPixel mMapToPixel
QgsWeakMapLayerPointerList mLayers
list of layers to be rendered (stored as weak pointers)
void setLabelBlockingRegions(const QList< QgsLabelBlockingRegion > ®ions)
Sets a list of regions to avoid placing labels within.
void setBackgroundColor(const QColor &color)
Sets the background color of the map.
void setSegmentationToleranceType(QgsAbstractGeometry::SegmentationToleranceType type)
Sets segmentation tolerance type (maximum angle or maximum difference between curve and approximation...
double mSegmentationTolerance
Perform transforms between map coordinates and device coordinates.
Resolves relative paths into absolute paths and vice versa.
A class to represent a 2D point.
Point geometry type, with support for z-dimension and m-values.
A rectangle specified with double values.
An interface for classes which provider custom handlers for features rendered as part of a map render...
Calculates scale for a given combination of canvas size, map extent, and monitor dpi.
Base class for objects with an associated (optional) temporal range.
DistanceUnit
Units of distance.
This class contains information how to simplify geometries fetched from a vector layer.
QList< QgsWeakMapLayerPointer > QgsWeakMapLayerPointerList
A list of weak pointers to QgsMapLayers.
const QgsCoordinateReferenceSystem & crs