QGIS API Documentation  3.9.0-Master (224899f119)
Public Types | Public Member Functions | List of all members
QgsScaleBarSettings Class Reference

The QgsScaleBarSettings class stores the appearance and layout settings for scalebar drawing with QgsScaleBarRenderer. More...

#include <qgsscalebarsettings.h>

Public Types

enum  Alignment { AlignLeft = 0, AlignMiddle, AlignRight }
 Scalebar alignment. More...
 
enum  LabelHorizontalPlacement { LabelCenteredEdge = 0, LabelCenteredSegment }
 Label horizontal placement. More...
 
enum  LabelVerticalPlacement { LabelAboveSegment = 0, LabelBelowSegment }
 Label vertical placement. More...
 
enum  SegmentSizeMode { SegmentSizeFixed = 0, SegmentSizeFitWidth = 1 }
 Modes for setting size for scale bar segments. More...
 

Public Member Functions

 QgsScaleBarSettings ()
 Constructor for QgsScaleBarSettings. More...
 
Alignment alignment () const
 Returns the scalebar alignment. More...
 
double boxContentSpace () const
 Returns the spacing (margin) between the scalebar box and content in millimeters. More...
 
QBrush brush () const
 Returns the primary brush used for filling the scalebar. More...
 
QBrush brush2 () const
 Returns the secondary brush for the scalebar. More...
 
QColor fillColor () const
 Returns the color used for fills in the scalebar. More...
 
QColor fillColor2 () const
 Returns the secondary color used for fills in the scalebar. More...
 
Q_DECL_DEPRECATED QFont font () const
 Returns the font used for drawing text in the scalebar. More...
 
Q_DECL_DEPRECATED QColor fontColor () const
 Returns the color used for drawing text in the scalebar. More...
 
double height () const
 Returns the scalebar height (in millimeters). More...
 
double labelBarSpace () const
 Returns the spacing (in millimeters) between labels and the scalebar. More...
 
LabelHorizontalPlacement labelHorizontalPlacement () const
 Returns the horizontal placement of text labels. More...
 
LabelVerticalPlacement labelVerticalPlacement () const
 Returns the vertical placement of text labels. More...
 
Qt::PenCapStyle lineCapStyle () const
 Returns the cap style used for drawing lines in the scalebar. More...
 
QColor lineColor () const
 Returns the color used for lines in the scalebar. More...
 
Qt::PenJoinStyle lineJoinStyle () const
 Returns the join style used for drawing lines in the scalebar. More...
 
double lineWidth () const
 Returns the line width in millimeters for lines in the scalebar. More...
 
double mapUnitsPerScaleBarUnit () const
 Returns the number of map units per scale bar unit used by the scalebar. More...
 
double maximumBarWidth () const
 Returns the maximum width (in millimeters) for scale bar segments. More...
 
double minimumBarWidth () const
 Returns the minimum width (in millimeters) for scale bar segments. More...
 
int numberOfSegments () const
 Returns the number of segments included in the scalebar. More...
 
int numberOfSegmentsLeft () const
 Returns the number of segments included in the left part of the scalebar. More...
 
QPen pen () const
 Returns the pen used for drawing outlines in the scalebar. More...
 
SegmentSizeMode segmentSizeMode () const
 Returns the size mode for the scale bar segments. More...
 
void setAlignment (Alignment alignment)
 Sets the scalebar alignment. More...
 
void setBoxContentSpace (double space)
 Sets the space (margin) between the scalebar box and content in millimeters. More...
 
void setBrush (const QBrush &brush)
 Sets the primary brush used for filling the scalebar. More...
 
void setBrush2 (const QBrush &brush)
 Sets the secondary brush used for filling the scalebar. More...
 
void setFillColor (const QColor &color)
 Sets the color used for fills in the scalebar. More...
 
void setFillColor2 (const QColor &color)
 Sets the secondary color used for fills in the scalebar. More...
 
Q_DECL_DEPRECATED void setFont (const QFont &font)
 Sets the font used for drawing text in the scalebar. More...
 
Q_DECL_DEPRECATED void setFontColor (const QColor &color)
 Sets the color used for drawing text in the scalebar. More...
 
void setHeight (double height)
 Sets the scalebar height (in millimeters). More...
 
void setLabelBarSpace (double space)
 Sets the spacing (in millimeters) between labels and the scalebar. More...
 
void setLabelHorizontalPlacement (LabelHorizontalPlacement placement)
 Sets the horizontal placement of text labels. More...
 
void setLabelVerticalPlacement (LabelVerticalPlacement placement)
 Sets the vertical placement of text labels. More...
 
void setLineCapStyle (Qt::PenCapStyle style)
 Sets the cap style used when drawing the lines in the scalebar. More...
 
void setLineColor (const QColor &color)
 Sets the color used for lines in the scalebar. More...
 
void setLineJoinStyle (Qt::PenJoinStyle style)
 Sets the join style used when drawing the lines in the scalebar. More...
 
void setLineWidth (double width)
 Sets the line width in millimeters for lines in the scalebar. More...
 
void setMapUnitsPerScaleBarUnit (double units)
 Sets the number of map units per scale bar unit used by the scalebar. More...
 
void setMaximumBarWidth (double width)
 Sets the maximum width (in millimeters) for scale bar segments. More...
 
void setMinimumBarWidth (double width)
 Sets the minimum width (in millimeters) for scale bar segments. More...
 
void setNumberOfSegments (int segments)
 Sets the number of segments included in the scalebar. More...
 
void setNumberOfSegmentsLeft (int segments)
 Sets the number of segments included in the left part of the scalebar. More...
 
void setPen (const QPen &pen)
 Sets the pen used for drawing outlines in the scalebar. More...
 
void setSegmentSizeMode (SegmentSizeMode mode)
 Sets the size mode for scale bar segments. More...
 
void setTextFormat (const QgsTextFormat &format)
 Sets the text format used for drawing text in the scalebar. More...
 
void setUnitLabel (const QString &label)
 Sets the label for units. More...
 
void setUnits (QgsUnitTypes::DistanceUnit units)
 Sets the distance units used by the scalebar. More...
 
void setUnitsPerSegment (double units)
 Sets the number of scalebar units per segment. More...
 
QgsTextFormattextFormat ()
 Returns the text format used for drawing text in the scalebar. More...
 
QgsTextFormat textFormat () const
 Returns the text format used for drawing text in the scalebar. More...
 
QString unitLabel () const
 Returns the label for units. More...
 
QgsUnitTypes::DistanceUnit units () const
 Returns the distance units used by the scalebar. More...
 
double unitsPerSegment () const
 Returns the number of scalebar units per segment. More...
 

Detailed Description

The QgsScaleBarSettings class stores the appearance and layout settings for scalebar drawing with QgsScaleBarRenderer.

Since
QGIS 3.0

Definition at line 36 of file qgsscalebarsettings.h.

Member Enumeration Documentation

◆ Alignment

Scalebar alignment.

Enumerator
AlignLeft 

Left aligned.

AlignMiddle 

Center aligned.

AlignRight 

Right aligned.

Definition at line 43 of file qgsscalebarsettings.h.

◆ LabelHorizontalPlacement

Label horizontal placement.

Enumerator
LabelCenteredEdge 

Labels are drawn centered relative to segment's edge.

LabelCenteredSegment 

Labels are drawn centered relative to segment.

Definition at line 71 of file qgsscalebarsettings.h.

◆ LabelVerticalPlacement

Label vertical placement.

Enumerator
LabelAboveSegment 

Labels are drawn above the scalebar.

LabelBelowSegment 

Labels are drawn below the scalebar.

Definition at line 62 of file qgsscalebarsettings.h.

◆ SegmentSizeMode

Modes for setting size for scale bar segments.

Enumerator
SegmentSizeFixed 

Scale bar segment size is fixed to a map unit.

SegmentSizeFitWidth 

Scale bar segment size is calculated to fit a size range.

Definition at line 53 of file qgsscalebarsettings.h.

Constructor & Destructor Documentation

◆ QgsScaleBarSettings()

QgsScaleBarSettings::QgsScaleBarSettings ( )
inline

Constructor for QgsScaleBarSettings.

Definition at line 80 of file qgsscalebarsettings.h.

Member Function Documentation

◆ alignment()

Alignment QgsScaleBarSettings::alignment ( ) const
inline

Returns the scalebar alignment.

See also
setAlignment()

Definition at line 455 of file qgsscalebarsettings.h.

◆ boxContentSpace()

double QgsScaleBarSettings::boxContentSpace ( ) const
inline

Returns the spacing (margin) between the scalebar box and content in millimeters.

See also
setBoxContentSpace()

Definition at line 443 of file qgsscalebarsettings.h.

◆ brush()

QBrush QgsScaleBarSettings::brush ( ) const
inline

Returns the primary brush used for filling the scalebar.

See also
setBrush()
brush2()
pen()

Definition at line 365 of file qgsscalebarsettings.h.

◆ brush2()

QBrush QgsScaleBarSettings::brush2 ( ) const
inline

Returns the secondary brush for the scalebar.

This is used for alternating color style scalebars, such as single and double box styles.

See also
setBrush2()
brush()

Definition at line 379 of file qgsscalebarsettings.h.

◆ fillColor()

QColor QgsScaleBarSettings::fillColor ( ) const
inline

Returns the color used for fills in the scalebar.

See also
setFillColor()
fillColor2()

Definition at line 299 of file qgsscalebarsettings.h.

◆ fillColor2()

QColor QgsScaleBarSettings::fillColor2 ( ) const
inline

Returns the secondary color used for fills in the scalebar.

See also
setFillColor2()
fillColor()

Definition at line 313 of file qgsscalebarsettings.h.

◆ font()

Q_DECL_DEPRECATED QFont QgsScaleBarSettings::font ( ) const
inline

Returns the font used for drawing text in the scalebar.

See also
setFont()
Deprecated:
use textFormat() instead

Definition at line 256 of file qgsscalebarsettings.h.

◆ fontColor()

Q_DECL_DEPRECATED QColor QgsScaleBarSettings::fontColor ( ) const
inline

Returns the color used for drawing text in the scalebar.

See also
setFontColor()
font()
Deprecated:
use textFormat() instead

Definition at line 284 of file qgsscalebarsettings.h.

◆ height()

double QgsScaleBarSettings::height ( ) const
inline

Returns the scalebar height (in millimeters).

See also
setHeight()

Definition at line 391 of file qgsscalebarsettings.h.

◆ labelBarSpace()

double QgsScaleBarSettings::labelBarSpace ( ) const
inline

Returns the spacing (in millimeters) between labels and the scalebar.

See also
setLabelBarSpace()

Definition at line 403 of file qgsscalebarsettings.h.

◆ labelHorizontalPlacement()

LabelHorizontalPlacement QgsScaleBarSettings::labelHorizontalPlacement ( ) const
inline

Returns the horizontal placement of text labels.

See also
setLabelHorizontalPlacement()
Since
QGIS 3.10

Definition at line 430 of file qgsscalebarsettings.h.

◆ labelVerticalPlacement()

LabelVerticalPlacement QgsScaleBarSettings::labelVerticalPlacement ( ) const
inline

Returns the vertical placement of text labels.

See also
setLabelVerticalPlacement()
Since
QGIS 3.10

Definition at line 416 of file qgsscalebarsettings.h.

◆ lineCapStyle()

Qt::PenCapStyle QgsScaleBarSettings::lineCapStyle ( ) const
inline

Returns the cap style used for drawing lines in the scalebar.

See also
setLineCapStyle()

Definition at line 479 of file qgsscalebarsettings.h.

◆ lineColor()

QColor QgsScaleBarSettings::lineColor ( ) const
inline

Returns the color used for lines in the scalebar.

See also
setLineColor()

Definition at line 326 of file qgsscalebarsettings.h.

◆ lineJoinStyle()

Qt::PenJoinStyle QgsScaleBarSettings::lineJoinStyle ( ) const
inline

Returns the join style used for drawing lines in the scalebar.

See also
setLineJoinStyle()

Definition at line 467 of file qgsscalebarsettings.h.

◆ lineWidth()

double QgsScaleBarSettings::lineWidth ( ) const
inline

Returns the line width in millimeters for lines in the scalebar.

See also
setLineWidth()

Definition at line 338 of file qgsscalebarsettings.h.

◆ mapUnitsPerScaleBarUnit()

double QgsScaleBarSettings::mapUnitsPerScaleBarUnit ( ) const
inline

Returns the number of map units per scale bar unit used by the scalebar.

See also
setMapUnitsPerScaleBarUnit()

Definition at line 210 of file qgsscalebarsettings.h.

◆ maximumBarWidth()

double QgsScaleBarSettings::maximumBarWidth ( ) const
inline

Returns the maximum width (in millimeters) for scale bar segments.

This property is only effective if the segmentSizeMode() is set to SegmentSizeFitWidth.

See also
segmentSizeMode()
setMaximumBarWidth()
minimumBarWidth()

Definition at line 182 of file qgsscalebarsettings.h.

◆ minimumBarWidth()

double QgsScaleBarSettings::minimumBarWidth ( ) const
inline

Returns the minimum width (in millimeters) for scale bar segments.

This property is only effective if the segmentSizeMode() is set to SegmentSizeFitWidth.

See also
segmentSizeMode()
setMinimumBarWidth()
maximumBarWidth()

Definition at line 162 of file qgsscalebarsettings.h.

◆ numberOfSegments()

int QgsScaleBarSettings::numberOfSegments ( ) const
inline

Returns the number of segments included in the scalebar.

See also
setNumberOfSegments()
numberOfSegmentsLeft()

Definition at line 103 of file qgsscalebarsettings.h.

◆ numberOfSegmentsLeft()

int QgsScaleBarSettings::numberOfSegmentsLeft ( ) const
inline

Returns the number of segments included in the left part of the scalebar.

See also
setNumberOfSegmentsLeft()
numberOfSegments()

Definition at line 117 of file qgsscalebarsettings.h.

◆ pen()

QPen QgsScaleBarSettings::pen ( ) const
inline

Returns the pen used for drawing outlines in the scalebar.

See also
setPen()
brush()

Definition at line 351 of file qgsscalebarsettings.h.

◆ segmentSizeMode()

SegmentSizeMode QgsScaleBarSettings::segmentSizeMode ( ) const
inline

Returns the size mode for the scale bar segments.

See also
setSegmentSizeMode()
minimumBarWidth()
maximumBarWidth()

Definition at line 144 of file qgsscalebarsettings.h.

◆ setAlignment()

void QgsScaleBarSettings::setAlignment ( Alignment  alignment)
inline

Sets the scalebar alignment.

See also
alignment()

Definition at line 461 of file qgsscalebarsettings.h.

◆ setBoxContentSpace()

void QgsScaleBarSettings::setBoxContentSpace ( double  space)
inline

Sets the space (margin) between the scalebar box and content in millimeters.

See also
boxContentSpace()

Definition at line 449 of file qgsscalebarsettings.h.

◆ setBrush()

void QgsScaleBarSettings::setBrush ( const QBrush &  brush)
inline

Sets the primary brush used for filling the scalebar.

See also
brush()

Definition at line 371 of file qgsscalebarsettings.h.

◆ setBrush2()

void QgsScaleBarSettings::setBrush2 ( const QBrush &  brush)
inline

Sets the secondary brush used for filling the scalebar.

See also
brush()

Definition at line 385 of file qgsscalebarsettings.h.

◆ setFillColor()

void QgsScaleBarSettings::setFillColor ( const QColor &  color)
inline

Sets the color used for fills in the scalebar.

See also
fillColor()
setFillColor2()

Definition at line 306 of file qgsscalebarsettings.h.

◆ setFillColor2()

void QgsScaleBarSettings::setFillColor2 ( const QColor &  color)
inline

Sets the secondary color used for fills in the scalebar.

See also
fillColor2()
setFillColor2()

Definition at line 320 of file qgsscalebarsettings.h.

◆ setFont()

Q_DECL_DEPRECATED void QgsScaleBarSettings::setFont ( const QFont &  font)
inline

Sets the font used for drawing text in the scalebar.

See also
font()
Deprecated:
use setTextFormat() instead

Definition at line 263 of file qgsscalebarsettings.h.

◆ setFontColor()

Q_DECL_DEPRECATED void QgsScaleBarSettings::setFontColor ( const QColor &  color)
inline

Sets the color used for drawing text in the scalebar.

See also
fontColor()
setFont()
Deprecated:
use textFormat() instead

Definition at line 292 of file qgsscalebarsettings.h.

◆ setHeight()

void QgsScaleBarSettings::setHeight ( double  height)
inline

Sets the scalebar height (in millimeters).

See also
height()

Definition at line 397 of file qgsscalebarsettings.h.

◆ setLabelBarSpace()

void QgsScaleBarSettings::setLabelBarSpace ( double  space)
inline

Sets the spacing (in millimeters) between labels and the scalebar.

See also
labelBarSpace()

Definition at line 409 of file qgsscalebarsettings.h.

◆ setLabelHorizontalPlacement()

void QgsScaleBarSettings::setLabelHorizontalPlacement ( LabelHorizontalPlacement  placement)
inline

Sets the horizontal placement of text labels.

See also
labelHorizontalPlacement()
Since
QGIS 3.10

Definition at line 437 of file qgsscalebarsettings.h.

◆ setLabelVerticalPlacement()

void QgsScaleBarSettings::setLabelVerticalPlacement ( LabelVerticalPlacement  placement)
inline

Sets the vertical placement of text labels.

See also
labelVerticalPlacement()
Since
QGIS 3.10

Definition at line 423 of file qgsscalebarsettings.h.

◆ setLineCapStyle()

void QgsScaleBarSettings::setLineCapStyle ( Qt::PenCapStyle  style)
inline

Sets the cap style used when drawing the lines in the scalebar.

See also
lineCapStyle()

Definition at line 485 of file qgsscalebarsettings.h.

◆ setLineColor()

void QgsScaleBarSettings::setLineColor ( const QColor &  color)
inline

Sets the color used for lines in the scalebar.

See also
lineColor()

Definition at line 332 of file qgsscalebarsettings.h.

◆ setLineJoinStyle()

void QgsScaleBarSettings::setLineJoinStyle ( Qt::PenJoinStyle  style)
inline

Sets the join style used when drawing the lines in the scalebar.

See also
lineJoinStyle()

Definition at line 473 of file qgsscalebarsettings.h.

◆ setLineWidth()

void QgsScaleBarSettings::setLineWidth ( double  width)
inline

Sets the line width in millimeters for lines in the scalebar.

See also
lineWidth()

Definition at line 344 of file qgsscalebarsettings.h.

◆ setMapUnitsPerScaleBarUnit()

void QgsScaleBarSettings::setMapUnitsPerScaleBarUnit ( double  units)
inline

Sets the number of map units per scale bar unit used by the scalebar.

See also
mapUnitsPerScaleBarUnit()

Definition at line 216 of file qgsscalebarsettings.h.

◆ setMaximumBarWidth()

void QgsScaleBarSettings::setMaximumBarWidth ( double  width)
inline

Sets the maximum width (in millimeters) for scale bar segments.

This property is only effective if the segmentSizeMode() is set to SegmentSizeFitWidth.

See also
minimumBarWidth()
setMinimumBarWidth()
setSegmentSizeMode()

Definition at line 192 of file qgsscalebarsettings.h.

◆ setMinimumBarWidth()

void QgsScaleBarSettings::setMinimumBarWidth ( double  width)
inline

Sets the minimum width (in millimeters) for scale bar segments.

This property is only effective if the segmentSizeMode() is set to SegmentSizeFitWidth.

See also
minimumBarWidth()
setMaximumBarWidth()
setSegmentSizeMode()

Definition at line 172 of file qgsscalebarsettings.h.

◆ setNumberOfSegments()

void QgsScaleBarSettings::setNumberOfSegments ( int  segments)
inline

Sets the number of segments included in the scalebar.

See also
numberOfSegments()
setNumberOfSegmentsLeft()

Definition at line 110 of file qgsscalebarsettings.h.

◆ setNumberOfSegmentsLeft()

void QgsScaleBarSettings::setNumberOfSegmentsLeft ( int  segments)
inline

Sets the number of segments included in the left part of the scalebar.

See also
numberOfSegmentsLeft()
setNumberOfSegments()

Definition at line 124 of file qgsscalebarsettings.h.

◆ setPen()

void QgsScaleBarSettings::setPen ( const QPen &  pen)
inline

Sets the pen used for drawing outlines in the scalebar.

See also
pen()

Definition at line 357 of file qgsscalebarsettings.h.

◆ setSegmentSizeMode()

void QgsScaleBarSettings::setSegmentSizeMode ( SegmentSizeMode  mode)
inline

Sets the size mode for scale bar segments.

See also
segmentSizeMode()
setMinimumBarWidth()
setMaximumBarWidth()

Definition at line 152 of file qgsscalebarsettings.h.

◆ setTextFormat()

void QgsScaleBarSettings::setTextFormat ( const QgsTextFormat format)
inline

Sets the text format used for drawing text in the scalebar.

See also
textFormat()
Since
QGIS 3.2

Definition at line 249 of file qgsscalebarsettings.h.

◆ setUnitLabel()

void QgsScaleBarSettings::setUnitLabel ( const QString &  label)
inline

Sets the label for units.

See also
unitLabel()

Definition at line 228 of file qgsscalebarsettings.h.

◆ setUnits()

void QgsScaleBarSettings::setUnits ( QgsUnitTypes::DistanceUnit  units)
inline

Sets the distance units used by the scalebar.

See also
units()

Definition at line 204 of file qgsscalebarsettings.h.

◆ setUnitsPerSegment()

void QgsScaleBarSettings::setUnitsPerSegment ( double  units)
inline

Sets the number of scalebar units per segment.

See also
unitsPerSegment()

Definition at line 136 of file qgsscalebarsettings.h.

◆ textFormat() [1/2]

QgsTextFormat& QgsScaleBarSettings::textFormat ( )
inline

Returns the text format used for drawing text in the scalebar.

See also
setTextFormat()
Since
QGIS 3.2

Definition at line 235 of file qgsscalebarsettings.h.

◆ textFormat() [2/2]

QgsTextFormat QgsScaleBarSettings::textFormat ( ) const
inline

Returns the text format used for drawing text in the scalebar.

See also
setTextFormat()
Since
QGIS 3.2

Definition at line 242 of file qgsscalebarsettings.h.

◆ unitLabel()

QString QgsScaleBarSettings::unitLabel ( ) const
inline

Returns the label for units.

See also
setUnitLabel()

Definition at line 222 of file qgsscalebarsettings.h.

◆ units()

QgsUnitTypes::DistanceUnit QgsScaleBarSettings::units ( ) const
inline

Returns the distance units used by the scalebar.

See also
setUnits()

Definition at line 198 of file qgsscalebarsettings.h.

◆ unitsPerSegment()

double QgsScaleBarSettings::unitsPerSegment ( ) const
inline

Returns the number of scalebar units per segment.

See also
setUnitsPerSegment()

Definition at line 130 of file qgsscalebarsettings.h.


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