| QGIS API Documentation 3.30.0-'s-Hertogenbosch (f186b8efe0)
    | 
Abstract base class for scale bar renderers. More...
#include <qgsscalebarrenderer.h>

| Classes | |
| struct | ScaleBarContext | 
| Contains parameters regarding scalebar calculations.  More... | |
| Public Types | |
| enum class | Flag { FlagUsesLineSymbol = 1 << 0 , FlagUsesFillSymbol = 1 << 1 , FlagUsesAlternateFillSymbol = 1 << 2 , FlagRespectsUnits = 1 << 3 , FlagRespectsMapUnitsPerScaleBarUnit = 1 << 4 , FlagUsesUnitLabel = 1 << 5 , FlagUsesSegments = 1 << 6 , FlagUsesLabelBarSpace = 1 << 7 , FlagUsesLabelVerticalPlacement = 1 << 8 , FlagUsesLabelHorizontalPlacement = 1 << 8 , FlagUsesAlignment = 1 << 9 , FlagUsesSubdivisions = 1 << 10 , FlagUsesDivisionSymbol = 1 << 11 , FlagUsesSubdivisionSymbol = 1 << 12 , FlagUsesSubdivisionsHeight = 1 << 13 } | 
| Flags which control scalebar renderer behavior.  More... | |
| Public Member Functions | |
| QgsScaleBarRenderer ()=default | |
| Constructor for QgsScaleBarRenderer.  More... | |
| virtual | ~QgsScaleBarRenderer ()=default | 
| virtual bool | applyDefaultSettings (QgsScaleBarSettings &settings) const | 
| Applies any default settings relating to the scalebar to the passed settings object.  More... | |
| virtual Q_DECL_DEPRECATED QSizeF | calculateBoxSize (const QgsScaleBarSettings &settings, const QgsScaleBarRenderer::ScaleBarContext &scaleContext) const | 
| Calculates the required box size (in millimeters) for a scalebar using the specified settings and scaleContext.  More... | |
| virtual QSizeF | calculateBoxSize (QgsRenderContext &context, const QgsScaleBarSettings &settings, const QgsScaleBarRenderer::ScaleBarContext &scaleContext) const | 
| Calculates the required box size (in millimeters) for a scalebar using the specified settings and scaleContext.  More... | |
| virtual QgsScaleBarRenderer * | clone () const =0 | 
| Returns a clone of the renderer.  More... | |
| virtual void | draw (QgsRenderContext &context, const QgsScaleBarSettings &settings, const QgsScaleBarRenderer::ScaleBarContext &scaleContext) const =0 | 
| Draws the scalebar using the specified settings and scaleContext to a destination render context.  More... | |
| virtual Flags | flags () const | 
| Returns the scalebar rendering flags, which dictates the renderer's behavior.  More... | |
| virtual QString | id () const =0 | 
| Returns the unique ID for this renderer.  More... | |
| Q_DECL_DEPRECATED QString | name () const | 
| Returns the unique name for this style.  More... | |
| virtual int | sortKey () const | 
| Returns a sorting key value, where renderers with a lower sort key will be shown earlier in lists.  More... | |
| virtual QString | visibleName () const =0 | 
| Returns the user friendly, translated name for the renderer.  More... | |
| Protected Member Functions | |
| void | drawDefaultLabels (QgsRenderContext &context, const QgsScaleBarSettings &settings, const QgsScaleBarRenderer::ScaleBarContext &scaleContext) const | 
| Draws default scalebar labels using the specified settings and scaleContext to a destination render context.  More... | |
| QString | firstLabelString (const QgsScaleBarSettings &settings) const | 
| Returns the text used for the first label in the scalebar.  More... | |
| Q_DECL_DEPRECATED double | firstLabelXOffset (const QgsScaleBarSettings &settings) const | 
| Returns the x-offset (in millimeters) used for the first label in the scalebar.  More... | |
| double | firstLabelXOffset (const QgsScaleBarSettings &settings, const QgsRenderContext &context, const ScaleBarContext &scaleContext) const | 
| Returns the x-offset (in render context painter units) used for the first label in the scalebar.  More... | |
| Q_DECL_DEPRECATED QList< double > | segmentPositions (const QgsScaleBarRenderer::ScaleBarContext &scaleContext, const QgsScaleBarSettings &settings) const | 
| Returns a list of positions for each segment within the scalebar.  More... | |
| QList< double > | segmentPositions (QgsRenderContext &context, const QgsScaleBarRenderer::ScaleBarContext &scaleContext, const QgsScaleBarSettings &settings) const | 
| Returns a list of positions for each segment within the scalebar.  More... | |
| QList< double > | segmentWidths (const QgsScaleBarRenderer::ScaleBarContext &scaleContext, const QgsScaleBarSettings &settings) const | 
| Returns a list of widths of each segment of the scalebar.  More... | |
Abstract base class for scale bar renderers.
Scalebar renderer subclasses implement custom drawing logic, with the possibility to implement custom labeling.
Definition at line 38 of file qgsscalebarrenderer.h.
| 
 | strong | 
Flags which control scalebar renderer behavior.
| Enumerator | |
|---|---|
| FlagUsesLineSymbol | Renderer utilizes the scalebar line symbol (see QgsScaleBarSettings::lineSymbol() ) | 
| FlagUsesFillSymbol | Renderer utilizes the scalebar fill symbol (see QgsScaleBarSettings::fillSymbol() ) | 
| FlagUsesAlternateFillSymbol | Renderer utilizes the alternate scalebar fill symbol (see QgsScaleBarSettings::alternateFillSymbol() ) | 
| FlagRespectsUnits | Renderer respects the QgsScaleBarSettings::units() setting. | 
| FlagRespectsMapUnitsPerScaleBarUnit | Renderer respects the QgsScaleBarSettings::mapUnitsPerScaleBarUnit() setting. | 
| FlagUsesUnitLabel | Renderer uses the QgsScaleBarSettings::unitLabel() setting. | 
| FlagUsesSegments | Renderer uses the scalebar segments. | 
| FlagUsesLabelBarSpace | Renderer uses the QgsScaleBarSettings::labelBarSpace() setting. | 
| FlagUsesLabelVerticalPlacement | Renderer uses the QgsScaleBarSettings::labelVerticalPlacement() setting. | 
| FlagUsesLabelHorizontalPlacement | Renderer uses the QgsScaleBarSettings::labelHorizontalPlacement() setting. | 
| FlagUsesAlignment | Renderer uses the QgsScaleBarSettings::alignment() setting. | 
| FlagUsesSubdivisions | Renderer uses the scalebar subdivisions (see QgsScaleBarSettings::numberOfSubdivisions() ) | 
| FlagUsesDivisionSymbol | Renderer utilizes the scalebar division symbol (see QgsScaleBarSettings::divisionLineSymbol() ) | 
| FlagUsesSubdivisionSymbol | Renderer utilizes the scalebar subdivision symbol (see QgsScaleBarSettings::subdivisionLineSymbol() ) | 
| FlagUsesSubdivisionsHeight | Renderer uses the scalebar subdivisions height (see QgsScaleBarSettings::subdivisionsHeight() ) | 
Definition at line 46 of file qgsscalebarrenderer.h.
| 
 | default | 
Constructor for QgsScaleBarRenderer.
| 
 | virtualdefault | 
| 
 | virtual | 
Applies any default settings relating to the scalebar to the passed settings object.
Returns true if settings were applied.
Reimplemented in QgsHollowScaleBarRenderer.
Definition at line 294 of file qgsscalebarrenderer.cpp.
| 
 | virtual | 
Calculates the required box size (in millimeters) for a scalebar using the specified settings and scaleContext.
Reimplemented in QgsNumericScaleBarRenderer.
Definition at line 168 of file qgsscalebarrenderer.cpp.
| 
 | virtual | 
Calculates the required box size (in millimeters) for a scalebar using the specified settings and scaleContext.
Reimplemented in QgsNumericScaleBarRenderer.
Definition at line 225 of file qgsscalebarrenderer.cpp.
| 
 | pure virtual | 
Returns a clone of the renderer.
The caller takes ownership of the returned value.
Implemented in QgsDoubleBoxScaleBarRenderer, QgsHollowScaleBarRenderer, QgsNumericScaleBarRenderer, QgsSingleBoxScaleBarRenderer, QgsSteppedLineScaleBarRenderer, and QgsTicksScaleBarRenderer.
| 
 | pure virtual | 
Draws the scalebar using the specified settings and scaleContext to a destination render context.
Implemented in QgsDoubleBoxScaleBarRenderer, QgsHollowScaleBarRenderer, QgsNumericScaleBarRenderer, QgsSingleBoxScaleBarRenderer, QgsSteppedLineScaleBarRenderer, and QgsTicksScaleBarRenderer.
| 
 | protected | 
Draws default scalebar labels using the specified settings and scaleContext to a destination render context.
Definition at line 30 of file qgsscalebarrenderer.cpp.
| 
 | protected | 
Returns the text used for the first label in the scalebar.
Definition at line 299 of file qgsscalebarrenderer.cpp.
| 
 | protected | 
Returns the x-offset (in millimeters) used for the first label in the scalebar.
Definition at line 311 of file qgsscalebarrenderer.cpp.
| 
 | protected | 
Returns the x-offset (in render context painter units) used for the first label in the scalebar.
Definition at line 319 of file qgsscalebarrenderer.cpp.
| 
 | virtual | 
Returns the scalebar rendering flags, which dictates the renderer's behavior.
Reimplemented in QgsDoubleBoxScaleBarRenderer, QgsHollowScaleBarRenderer, QgsNumericScaleBarRenderer, QgsSingleBoxScaleBarRenderer, QgsSteppedLineScaleBarRenderer, and QgsTicksScaleBarRenderer.
Definition at line 158 of file qgsscalebarrenderer.cpp.
| 
 | pure virtual | 
Returns the unique ID for this renderer.
Implemented in QgsDoubleBoxScaleBarRenderer, QgsHollowScaleBarRenderer, QgsNumericScaleBarRenderer, QgsSingleBoxScaleBarRenderer, QgsSteppedLineScaleBarRenderer, and QgsTicksScaleBarRenderer.
| 
 | inline | 
Returns the unique name for this style.
Definition at line 104 of file qgsscalebarrenderer.h.
| 
 | protected | 
Returns a list of positions for each segment within the scalebar.
Definition at line 341 of file qgsscalebarrenderer.cpp.
| 
 | protected | 
Returns a list of positions for each segment within the scalebar.
Definition at line 368 of file qgsscalebarrenderer.cpp.
| 
 | protected | 
Returns a list of widths of each segment of the scalebar.
Definition at line 396 of file qgsscalebarrenderer.cpp.
| 
 | virtual | 
Returns a sorting key value, where renderers with a lower sort key will be shown earlier in lists.
Generally, subclasses should return QgsScaleBarRenderer::sortKey() as their sorting key.
Reimplemented in QgsDoubleBoxScaleBarRenderer, QgsHollowScaleBarRenderer, QgsNumericScaleBarRenderer, QgsSingleBoxScaleBarRenderer, QgsSteppedLineScaleBarRenderer, and QgsTicksScaleBarRenderer.
Definition at line 163 of file qgsscalebarrenderer.cpp.
| 
 | pure virtual | 
Returns the user friendly, translated name for the renderer.
Implemented in QgsDoubleBoxScaleBarRenderer, QgsHollowScaleBarRenderer, QgsNumericScaleBarRenderer, QgsSingleBoxScaleBarRenderer, QgsSteppedLineScaleBarRenderer, and QgsTicksScaleBarRenderer.