|
QGIS API Documentation 3.36.0-Maidenhead (09951dc0acf)
|
Draws curved lines as callouts. More...
#include <qgscallout.h>

Public Types | |
| enum | Orientation { Automatic , Clockwise , CounterClockwise } |
| Curve orientation. More... | |
Public Types inherited from QgsCallout | |
| enum | AnchorPoint { PoleOfInaccessibility = 0 , PointOnExterior , PointOnSurface , Centroid } |
| Feature's anchor point position. More... | |
| enum | DrawOrder { OrderBelowAllLabels , OrderBelowIndividualLabels } |
| Options for draw order (stacking) of callouts. More... | |
| enum | LabelAnchorPoint { LabelPointOnExterior , LabelCentroid , LabelTopLeft , LabelTopMiddle , LabelTopRight , LabelMiddleLeft , LabelMiddleRight , LabelBottomLeft , LabelBottomMiddle , LabelBottomRight } |
| Label's anchor point position. More... | |
| enum class | Property : int { MinimumCalloutLength , OffsetFromAnchor , OffsetFromLabel , DrawCalloutToAllParts , AnchorPointPosition , LabelAnchorPointPosition , OriginX , OriginY , DestinationX , DestinationY , Curvature , Orientation , Margins , WedgeWidth , CornerRadius , BlendMode } |
| Data definable properties. More... | |
Public Member Functions | |
| QgsCurvedLineCallout () | |
| QgsCurvedLineCallout (const QgsCurvedLineCallout &other) | |
| Copy constructor. | |
| QgsCurvedLineCallout * | clone () const override |
| Duplicates a callout by creating a deep copy of the callout. | |
| double | curvature () const |
| Returns the callout line's curvature. | |
| QgsCurvedLineCallout & | operator= (const QgsCurvedLineCallout &)=delete |
| Orientation | orientation () const |
| Returns the callout line's curve orientation. | |
| QVariantMap | properties (const QgsReadWriteContext &context) const override |
| Returns the properties describing the callout encoded in a string format. | |
| void | setCurvature (double curvature) |
| Sets the callout line's curvature. | |
| void | setOrientation (Orientation orientation) |
| Sets the callout line's curve orientation. | |
| QString | type () const override |
| Returns a unique string representing the callout type. | |
Public Member Functions inherited from QgsSimpleLineCallout | |
| QgsSimpleLineCallout () | |
| QgsSimpleLineCallout (const QgsSimpleLineCallout &other) | |
| Copy constructor. | |
| ~QgsSimpleLineCallout () override | |
| QgsSimpleLineCallout * | clone () const override |
| Duplicates a callout by creating a deep copy of the callout. | |
| bool | drawCalloutToAllParts () const |
Returns true if callout lines should be drawn to all feature parts. | |
| QgsLineSymbol * | lineSymbol () |
| Returns the line symbol used to render the callout line. | |
| double | minimumLength () const |
| Returns the minimum length of callout lines. | |
| const QgsMapUnitScale & | minimumLengthMapUnitScale () const |
| Returns the map unit scale for the minimum callout length. | |
| Qgis::RenderUnit | minimumLengthUnit () const |
| Returns the units for the minimum length of callout lines. | |
| double | offsetFromAnchor () const |
| Returns the offset distance from the anchor point at which to start the line. | |
| const QgsMapUnitScale & | offsetFromAnchorMapUnitScale () const |
| Returns the map unit scale for the offset from anchor. | |
| Qgis::RenderUnit | offsetFromAnchorUnit () const |
| Returns the units for the offset from anchor point. | |
| double | offsetFromLabel () const |
| Returns the offset distance from label area at which to end the line. | |
| const QgsMapUnitScale & | offsetFromLabelMapUnitScale () const |
| Returns the map unit scale for the minimum callout length. | |
| Qgis::RenderUnit | offsetFromLabelUnit () const |
| Returns the units for the offset from label area. | |
| QgsSimpleLineCallout & | operator= (const QgsSimpleLineCallout &)=delete |
| QVariantMap | properties (const QgsReadWriteContext &context) const override |
| Returns the properties describing the callout encoded in a string format. | |
| void | readProperties (const QVariantMap &props, const QgsReadWriteContext &context) override |
| Reads a string map of an callout's properties and restores the callout to the state described by the properties map. | |
| QSet< QString > | referencedFields (const QgsRenderContext &context) const override |
| Returns the set of attributes referenced by the callout. | |
| void | setDrawCalloutToAllParts (bool drawToAllParts) |
| Sets whether callout lines should be drawn to all feature parts. | |
| void | setLineSymbol (QgsLineSymbol *symbol) |
| Sets the line symbol used to render the callout line. | |
| void | setMinimumLength (double length) |
| Sets the minimum length of callout lines. | |
| void | setMinimumLengthMapUnitScale (const QgsMapUnitScale &scale) |
| Sets the map unit scale for the minimum callout length. | |
| void | setMinimumLengthUnit (Qgis::RenderUnit unit) |
| Sets the unit for the minimum length of callout lines. | |
| void | setOffsetFromAnchor (double distance) |
| Sets the offset distance from the anchor point at which to start the line. | |
| void | setOffsetFromAnchorMapUnitScale (const QgsMapUnitScale &scale) |
| Sets the map unit scale for the offset from anchor. | |
| void | setOffsetFromAnchorUnit (Qgis::RenderUnit unit) |
| Sets the unit for the offset from anchor distance. | |
| void | setOffsetFromLabel (double distance) |
| Sets the offset distance from label area at which to end the line. | |
| void | setOffsetFromLabelMapUnitScale (const QgsMapUnitScale &scale) |
| Sets the map unit scale for the offset from label area. | |
| void | setOffsetFromLabelUnit (Qgis::RenderUnit unit) |
| Sets the unit for the offset from label area distance. | |
| void | startRender (QgsRenderContext &context) override |
| Prepares the callout for rendering on the specified render context. | |
| void | stopRender (QgsRenderContext &context) override |
| Finalises the callout after a set of rendering operations on the specified render context. | |
| QString | type () const override |
| Returns a unique string representing the callout type. | |
Public Member Functions inherited from QgsCallout | |
| QgsCallout () | |
| Constructor for QgsCallout. | |
| virtual | ~QgsCallout ()=default |
| AnchorPoint | anchorPoint () const |
| Returns the feature's anchor point position. | |
| QPainter::CompositionMode | blendMode () const |
| Returns the blending mode used for drawing callouts. | |
| bool | containsAdvancedEffects () const |
Returns true if the callout requires advanced effects such as blend modes, which require output in raster formats to be fully respected. | |
| QgsPropertyCollection & | dataDefinedProperties () |
| Returns a reference to the callout's property collection, used for data defined overrides. | |
| const QgsPropertyCollection & | dataDefinedProperties () const |
| Returns a reference to the callout's property collection, used for data defined overrides. | |
| virtual DrawOrder | drawOrder () const |
| Returns the desired drawing order (stacking) to use while rendering this callout. | |
| bool | enabled () const |
Returns true if the the callout is enabled. | |
| LabelAnchorPoint | labelAnchorPoint () const |
| Returns the label's anchor point position. | |
| void | render (QgsRenderContext &context, const QRectF &rect, const double angle, const QgsGeometry &anchor, QgsCalloutContext &calloutContext) |
| Renders the callout onto the specified render context. | |
| virtual void | restoreProperties (const QDomElement &element, const QgsReadWriteContext &context) |
| Restores the callout's properties from a DOM element. | |
| virtual bool | saveProperties (QDomDocument &doc, QDomElement &element, const QgsReadWriteContext &context) const |
| Saves the current state of the callout to a DOM element. | |
| void | setAnchorPoint (AnchorPoint anchor) |
| Sets the feature's anchor point position. | |
| void | setBlendMode (QPainter::CompositionMode mode) |
| Sets the blending mode used for drawing callouts. | |
| void | setDataDefinedProperties (const QgsPropertyCollection &collection) |
| Sets the callout's property collection, used for data defined overrides. | |
| void | setEnabled (bool enabled) |
| Sets whether the callout is enabled. | |
| void | setLabelAnchorPoint (LabelAnchorPoint anchor) |
| Sets the label's anchor point position. | |
Static Public Member Functions | |
| static QgsCallout * | create (const QVariantMap &properties=QVariantMap(), const QgsReadWriteContext &context=QgsReadWriteContext()) |
| Creates a new QgsCurvedLineCallout, using the settings serialized in the properties map (corresponding to the output from QgsCurvedLineCallout::properties() ). | |
Static Public Member Functions inherited from QgsSimpleLineCallout | |
| static QgsCallout * | create (const QVariantMap &properties=QVariantMap(), const QgsReadWriteContext &context=QgsReadWriteContext()) |
| Creates a new QgsSimpleLineCallout, using the settings serialized in the properties map (corresponding to the output from QgsSimpleLineCallout::properties() ). | |
Static Public Member Functions inherited from QgsCallout | |
| static QgsCallout::AnchorPoint | decodeAnchorPoint (const QString &name, bool *ok=nullptr) |
| Attempts to decode a string representation of an anchor point name to the corresponding anchor point. | |
| static QgsCallout::LabelAnchorPoint | decodeLabelAnchorPoint (const QString &name, bool *ok=nullptr) |
| Attempts to decode a string representation of a label anchor point name to the corresponding anchor point. | |
| static QString | encodeAnchorPoint (AnchorPoint anchor) |
| Encodes an anchor point to its string representation. | |
| static QString | encodeLabelAnchorPoint (LabelAnchorPoint anchor) |
| Encodes a label anchor point to its string representation. | |
| static QgsPropertiesDefinition | propertyDefinitions () |
| Returns the definitions for data defined properties available for use in callouts. | |
Protected Member Functions | |
| QgsCurve * | createCalloutLine (const QgsPoint &start, const QgsPoint &end, QgsRenderContext &context, const QRectF &bodyBoundingBox, const double angle, const QgsGeometry &anchor, QgsCalloutContext &calloutContext) const override |
| Creates a callout line between start and end in the desired style. | |
Protected Member Functions inherited from QgsSimpleLineCallout | |
| void | draw (QgsRenderContext &context, const QRectF &bodyBoundingBox, const double angle, const QgsGeometry &anchor, QgsCallout::QgsCalloutContext &calloutContext) override |
| Performs the actual rendering of the callout implementation onto the specified render context. | |
Protected Member Functions inherited from QgsCallout | |
| QgsGeometry | calloutLabelPoint (const QRectF &bodyBoundingBox, double angle, LabelAnchorPoint anchor, QgsRenderContext &context, const QgsCalloutContext &calloutContext, bool &pinned) const |
| Returns the anchor point geometry for a label with the given bounding box and anchor point mode. | |
| QgsGeometry | calloutLineToPart (const QgsGeometry &labelGeometry, const QgsAbstractGeometry *partGeometry, QgsRenderContext &context, const QgsCalloutContext &calloutContext, bool &pinned) const |
| Calculates the direct line from a label geometry to an anchor geometry part, respecting the various callout settings which influence how the callout end should be placed in the anchor geometry. | |
| Q_DECL_DEPRECATED QgsGeometry | labelAnchorGeometry (const QRectF &bodyBoundingBox, const double angle, LabelAnchorPoint anchor) const |
| Returns the anchor point geometry for a label with the given bounding box and anchor point mode. | |
Curve orientation.
Definition at line 799 of file qgscallout.h.
| QgsCurvedLineCallout::QgsCurvedLineCallout | ( | ) |
Definition at line 792 of file qgscallout.cpp.
| QgsCurvedLineCallout::QgsCurvedLineCallout | ( | const QgsCurvedLineCallout & | other | ) |
Copy constructor.
Definition at line 796 of file qgscallout.cpp.
|
overridevirtual |
Duplicates a callout by creating a deep copy of the callout.
Caller takes ownership of the returned object.
Implements QgsCallout.
Definition at line 820 of file qgscallout.cpp.
|
static |
Creates a new QgsCurvedLineCallout, using the settings serialized in the properties map (corresponding to the output from QgsCurvedLineCallout::properties() ).
Definition at line 804 of file qgscallout.cpp.
|
overrideprotectedvirtual |
Creates a callout line between start and end in the desired style.
The base class method returns a straight line.
Reimplemented from QgsSimpleLineCallout.
Definition at line 833 of file qgscallout.cpp.
| double QgsCurvedLineCallout::curvature | ( | ) | const |
Returns the callout line's curvature.
The curvature is a percentage value (with typical ranges between 0.0 and 1.0), representing the overall curvature of the line.
Definition at line 1019 of file qgscallout.cpp.
|
delete |
| QgsCurvedLineCallout::Orientation QgsCurvedLineCallout::orientation | ( | ) | const |
Returns the callout line's curve orientation.
Definition at line 1009 of file qgscallout.cpp.
|
overridevirtual |
Returns the properties describing the callout encoded in a string format.
Subclasses must ensure that they include the base class' properties() in their returned value.
Reimplemented from QgsCallout.
Definition at line 825 of file qgscallout.cpp.
| void QgsCurvedLineCallout::setCurvature | ( | double | curvature | ) |
Sets the callout line's curvature.
The curvature is a percentage value (with typical ranges between 0.0 and 1.0), representing the overall curvature of the line.
Definition at line 1024 of file qgscallout.cpp.
| void QgsCurvedLineCallout::setOrientation | ( | Orientation | orientation | ) |
Sets the callout line's curve orientation.
Definition at line 1014 of file qgscallout.cpp.
|
overridevirtual |
Returns a unique string representing the callout type.
Implements QgsCallout.
Definition at line 815 of file qgscallout.cpp.