Class: QgsLayoutItemScaleBar¶
-
class
qgis.core.
QgsLayoutItemScaleBar
(layout: QgsLayout)¶ Bases:
QgsLayoutItem
Constructor for
QgsLayoutItemScaleBar
, with the specified parentlayout
.A layout item subclass for scale bars.
New in version 3.0.
- Parameters
layout –
-
accept
(self, visitor: QgsStyleEntityVisitorInterface) → bool¶ - Parameters
visitor (QgsStyleEntityVisitorInterface) –
- Return type
bool
-
adjustPointForReferencePosition
(self, point: Union[QPointF, QPoint], size: QSizeF, reference: QgsLayoutItem.ReferencePoint) → QPointF¶ Adjusts the specified
point
at which areference
position of the item sits and returns the top left corner of the item, if reference point were placed at the specified position.
-
alignment
(self) → QgsScaleBarSettings.Alignment¶ Returns the scalebar alignment.
See also
- Return type
-
applyDataDefinedSize
(self, size: QgsLayoutSize) → QgsLayoutSize¶ Applies any present data defined size overrides to the specified layout
size
.
-
applyDefaultSettings
(self)¶ Applies the default scalebar settings to the scale bar.
See also
-
applyDefaultSize
(self, units: QgsUnitTypes.DistanceUnit = QgsUnitTypes.DistanceMeters)¶ Applies the default size to the scale bar (scale bar 1/5 of map item width)
See also
- Parameters
units (QgsUnitTypes.DistanceUnit = QgsUnitTypes.DistanceMeters) –
-
applyItemSizeConstraint
(self, targetSize: QSizeF) → QSizeF¶ Applies any item-specific size constraint handling to a given
targetSize
in layout units. Subclasses can override this method if they need to apply advanced logic regarding item sizes, which cannot be covered by setFixedSize() or setMinimumSize(). Item size constraints are applied after fixed, minimum and data defined size constraints.See also
See also
-
boxContentSpace
(self) → float¶ Returns the spacing (margin) between the scalebar box and content in millimeters.
See also
- Return type
float
-
brush
(self) → QBrush¶ Returns the primary brush for the scalebar.
- Return type
QBrush
- Returns
QBrush used for filling the scalebar
See also
See also
-
brush2
(self) → QBrush¶ Returns the secondary brush for the scalebar. This is used for alternating color style scalebars, such as single and double box styles.
- Return type
QBrush
- Returns
QBrush used for secondary color areas
See also
-
childEvent
(self, QChildEvent)¶
-
connectNotify
(self, QMetaMethod)¶
-
contextMenuEvent
(self, QGraphicsSceneContextMenuEvent)¶
-
create
(layout: QgsLayout) → QgsLayoutItemScaleBar¶ Returns a new scale bar item for the specified
layout
.The caller takes responsibility for deleting the returned object.
- Parameters
layout (QgsLayout) –
- Return type
-
customEvent
(self, QEvent)¶
-
disconnectNotify
(self, QMetaMethod)¶
-
dragEnterEvent
(self, QGraphicsSceneDragDropEvent)¶
-
dragLeaveEvent
(self, QGraphicsSceneDragDropEvent)¶
-
dragMoveEvent
(self, QGraphicsSceneDragDropEvent)¶
-
draw
(self, context: QgsLayoutItemRenderContext)¶ - Parameters
context (QgsLayoutItemRenderContext) –
-
drawBackground
(self, context: QgsRenderContext)¶ Draws the background for the item.
-
drawDebugRect
(self, painter: QPainter)¶ Draws a debugging rectangle of the item’s current bounds within the specified painter.
- Parameters
painter – destination QPainter
-
drawFrame
(self, context: QgsRenderContext)¶ Draws the frame around the item.
-
dropEvent
(self, QGraphicsSceneDragDropEvent)¶
-
exportLayerBehavior
(self) → QgsLayoutItem.ExportLayerBehavior¶ - Return type
-
fillColor
(self) → QColor¶ Returns the color used for fills in the scalebar.
See also
See also
- Return type
QColor
-
fillColor2
(self) → QColor¶ Returns the secondary color used for fills in the scalebar.
See also
See also
- Return type
QColor
-
finalizeRestoreFromXml
(self)¶
-
focusInEvent
(self, QFocusEvent)¶
-
focusOutEvent
(self, QFocusEvent)¶
-
font
(self) → QFont¶ Returns the font used for drawing text in the scalebar.
See also
Deprecated since version use: textFormat() instead
- Return type
QFont
-
fontColor
(self) → QColor¶ Returns the color used for drawing text in the scalebar.
See also
See also
Deprecated since version use: textFormat() instead
- Return type
QColor
-
guessUnits
(self) → QgsUnitTypes.DistanceUnit¶ Attempts to guess the most reasonable unit choice for the scalebar, given the current linked map’s scale.
This method also considers the linked map’s CRS, in order to determine if metric or imperial units are more appropriate.
- Return type
-
height
(self) → float¶ Returns the scalebar height (in millimeters).
See also
- Return type
float
-
hoverEnterEvent
(self, QGraphicsSceneHoverEvent)¶
-
hoverLeaveEvent
(self, QGraphicsSceneHoverEvent)¶
-
hoverMoveEvent
(self, QGraphicsSceneHoverEvent)¶
-
icon
(self) → QIcon¶ - Return type
QIcon
-
inputMethodEvent
(self, QInputMethodEvent)¶
-
inputMethodQuery
(self, Qt.InputMethodQuery) → Any¶
-
isSignalConnected
(self, QMetaMethod) → bool¶
-
itemChange
(self, QGraphicsItem.GraphicsItemChange, Any) → Any¶
-
keyPressEvent
(self, QKeyEvent)¶
-
keyReleaseEvent
(self, QKeyEvent)¶
-
labelBarSpace
(self) → float¶ Returns the spacing (in millimeters) between labels and the scalebar.
See also
- Return type
float
-
labelHorizontalPlacement
(self) → QgsScaleBarSettings.LabelHorizontalPlacement¶ Returns the horizontal placement of text labels.
See also
New in version 3.10.
- Return type
-
labelVerticalPlacement
(self) → QgsScaleBarSettings.LabelVerticalPlacement¶ Returns the vertical placement of text labels.
See also
New in version 3.10.
- Return type
-
lineCapStyle
(self) → Qt.PenCapStyle¶ Returns the cap style used for drawing lines in the scalebar.
See also
- Return type
Qt.PenCapStyle
-
lineColor
(self) → QColor¶ Returns the color used for lines in the scalebar.
See also
- Return type
QColor
-
lineJoinStyle
(self) → Qt.PenJoinStyle¶ Returns the join style used for drawing lines in the scalebar.
See also
- Return type
Qt.PenJoinStyle
-
lineWidth
(self) → float¶ Returns the line width in millimeters for lines in the scalebar.
See also
- Return type
float
-
linkedMap
(self) → QgsLayoutItemMap¶ Returns the map item linked to the scalebar.
See also
- Return type
-
mapUnitsPerScaleBarUnit
(self) → float¶ Returns the number of map units per scale bar unit used by the scalebar.
See also
- Return type
float
-
maximumBarWidth
(self) → float¶ Returns the maximum width (in millimeters) for scale bar segments. This property is only effective if the segmentSizeMode() is set to SegmentSizeFitWidth.
See also
See also
See also
- Return type
float
-
minimumBarWidth
(self) → float¶ Returns the minimum width (in millimeters) for scale bar segments. This property is only effective if the segmentSizeMode() is set to SegmentSizeFitWidth.
See also
See also
See also
- Return type
float
-
minimumSize
(self) → QgsLayoutSize¶ - Return type
-
mouseDoubleClickEvent
(self, QGraphicsSceneMouseEvent)¶
-
mouseMoveEvent
(self, QGraphicsSceneMouseEvent)¶
-
mousePressEvent
(self, QGraphicsSceneMouseEvent)¶
-
mouseReleaseEvent
(self, QGraphicsSceneMouseEvent)¶
-
numberOfSegments
(self) → int¶ Returns the number of segments included in the scalebar.
See also
See also
- Return type
int
-
numberOfSegmentsLeft
(self) → int¶ Returns the number of segments included in the left part of the scalebar.
See also
See also
- Return type
int
-
numericFormat
(self) → QgsNumericFormat¶ Returns the numeric format used for numbers in the scalebar.
See also
New in version 3.12.
- Return type
-
pen
(self) → QPen¶ Returns the pen used for drawing outlines in the scalebar.
See also
- Return type
QPen
-
positionAtReferencePoint
(self, reference: QgsLayoutItem.ReferencePoint) → QPointF¶ Returns the current position (in layout units) of a
reference
point for the item.
-
prepareGeometryChange
(self)¶
-
readObjectPropertiesFromElement
(self, parentElement: QDomElement, document: QDomDocument, context: QgsReadWriteContext) → bool¶ Sets object properties from a DOM element
- Parameters
parentElement – is the parent DOM element for the object
document – DOM document
context – read write context
- Returns
True
if read was successful
See also
-
readPropertiesFromElement
(self, element: QDomElement, document: QDomDocument, context: QgsReadWriteContext) → bool¶ - Parameters
element (QDomElement) –
document (QDomDocument) –
context (QgsReadWriteContext) –
- Return type
bool
-
receivers
(self, PYQT_SIGNAL) → int¶
-
refreshBackgroundColor
(self, updateItem: bool = True)¶ Refresh item’s background color, considering data defined colors. If
updateItem
is set toFalse
, the item will not be automatically updated after the frame color is set and a later call to update() must be made.
-
refreshBlendMode
(self)¶ Refresh item’s blend mode, considering data defined blend mode.
-
refreshDataDefinedProperty
(self, property: QgsLayoutObject.DataDefinedProperty = QgsLayoutObject.AllProperties)¶ - Parameters
property (QgsLayoutObject.DataDefinedProperty = QgsLayoutObject.AllProperties) –
-
refreshFrame
(self, updateItem: bool = True)¶ Refresh item’s frame, considering data defined colors and frame size. If
updateItem
is set toFalse
, the item will not be automatically updated after the frame is set and a later call to update() must be made.
-
refreshItemPosition
(self)¶ Refreshes an item’s position by rechecking it against any possible overrides such as data defined positioning.
See also
-
refreshItemRotation
(self, origin: Union[QPointF, QPoint] = None)¶ Refreshes an item’s rotation by rechecking it against any possible overrides such as data defined rotation.
The optional
origin
point specifies the origin (in item coordinates) around which the rotation should be applied.See also
See also
-
refreshItemSize
(self)¶ Refreshes an item’s size by rechecking it against any possible item fixed or minimum sizes.
See also
See also
See also
-
refreshOpacity
(self, updateItem: bool = True)¶ Refresh item’s opacity, considering data defined opacity. If
updateItem
is set toFalse
the item will not be automatically updated after the opacity is set and a later call to update() must be made.
-
resizeToMinimumWidth
(self)¶ Resizes the scale bar to its minimum width, without changing the height.
-
sceneEvent
(self, QEvent) → bool¶
-
sceneEventFilter
(self, QGraphicsItem, QEvent) → bool¶
-
segmentSizeMode
(self) → QgsScaleBarSettings.SegmentSizeMode¶ Returns the size mode for the scale bar segments.
See also
See also
See also
- Return type
-
sender
(self) → QObject¶
-
senderSignalIndex
(self) → int¶
-
setAlignment
(self, alignment: QgsScaleBarSettings.Alignment)¶ Sets the scalebar
alignment
.See also
- Parameters
alignment (QgsScaleBarSettings.Alignment) –
-
setBoxContentSpace
(self, space: float)¶ Sets the
space
(margin) between the scalebar box and content in millimeters.See also
- Parameters
space (float) –
-
setFillColor
(self, color: Union[QColor, Qt.GlobalColor, QGradient])¶ Sets the
color
used for fills in the scalebar.See also
See also
- Parameters
color (Union[QColor) –
-
setFillColor2
(self, color: Union[QColor, Qt.GlobalColor, QGradient])¶ Sets the secondary
color
used for fills in the scalebar.See also
See also
- Parameters
color (Union[QColor) –
-
setFixedSize
(self, size: QgsLayoutSize)¶ Sets a fixed
size
for the layout item, which prevents it from being freely resized. Set an empty size if item can be freely resized.See also
fixedSize()
See also
-
setFont
(self, font: QFont)¶ Sets the
font
used for drawing text in the scalebar.See also
Deprecated since version use: setTextFormat() instead
- Parameters
font (QFont) –
-
setFontColor
(self, color: Union[QColor, Qt.GlobalColor, QGradient])¶ Sets the
color
used for drawing text in the scalebar.See also
See also
Deprecated since version use: setTextFormat() instead
- Parameters
color (Union[QColor) –
-
setHeight
(self, height: float)¶ Sets the scalebar
height
(in millimeters).See also
- Parameters
height (float) –
-
setLabelBarSpace
(self, space: float)¶ Sets the spacing (in millimeters) between labels and the scalebar.
See also
- Parameters
space (float) –
-
setLabelHorizontalPlacement
(self, placement: QgsScaleBarSettings.LabelHorizontalPlacement)¶ Sets the horizontal
placement
of text labels.See also
New in version 3.10.
- Parameters
placement (QgsScaleBarSettings.LabelHorizontalPlacement) –
-
setLabelVerticalPlacement
(self, placement: QgsScaleBarSettings.LabelVerticalPlacement)¶ Sets the vertical
placement
of text labels.See also
New in version 3.10.
- Parameters
placement (QgsScaleBarSettings.LabelVerticalPlacement) –
-
setLineCapStyle
(self, style: Qt.PenCapStyle)¶ Sets the cap
style
used when drawing the lines in the scalebar.See also
- Parameters
style (Qt.PenCapStyle) –
-
setLineColor
(self, color: Union[QColor, Qt.GlobalColor, QGradient])¶ Sets the
color
used for lines in the scalebar.See also
- Parameters
color (Union[QColor) –
-
setLineJoinStyle
(self, style: Qt.PenJoinStyle)¶ Sets the join
style
used when drawing the lines in the scalebarSee also
- Parameters
style (Qt.PenJoinStyle) –
-
setLineWidth
(self, width: float)¶ Sets the line
width
in millimeters for lines in the scalebar.See also
- Parameters
width (float) –
-
setLinkedMap
(self, map: QgsLayoutItemMap)¶ Sets the
map
item linked to the scalebar.See also
- Parameters
map (QgsLayoutItemMap) –
-
setMapUnitsPerScaleBarUnit
(self, units: float)¶ Sets the number of map
units
per scale bar unit used by the scalebar.See also
- Parameters
units (float) –
-
setMaximumBarWidth
(self, maxWidth: float)¶ Sets the maximum
width
(in millimeters) for scale bar segments. This property is only effective if the segmentSizeMode() is set to SegmentSizeFitWidth.See also
See also
See also
- Parameters
maxWidth (float) –
-
setMinimumBarWidth
(self, minWidth: float)¶ Sets the minimum
width
(in millimeters) for scale bar segments. This property is only effective if the segmentSizeMode() is set to SegmentSizeFitWidth.See also
See also
See also
- Parameters
minWidth (float) –
-
setMinimumSize
(self, size: QgsLayoutSize)¶ Sets the minimum allowed
size
for the layout item. Set an empty size if item can be freely resized.See also
See also
-
setNumberOfSegments
(self, segments: int)¶ Sets the number of
segments
included in the scalebar.See also
See also
- Parameters
segments (int) –
-
setNumberOfSegmentsLeft
(self, segments: int)¶ Sets the number of
segments
included in the left part of the scalebar.See also
See also
- Parameters
segments (int) –
-
setNumericFormat
(self, format: QgsNumericFormat)¶ Sets the numeric
format
used for numbers in the scalebar.Ownership of
format
is transferred to the scalebar.See also
New in version 3.12.
- Parameters
format (QgsNumericFormat) –
-
setSegmentSizeMode
(self, mode: QgsScaleBarSettings.SegmentSizeMode)¶ Sets the size
mode
for scale bar segments.See also
See also
See also
- Parameters
mode (QgsScaleBarSettings.SegmentSizeMode) –
-
setStyle
(self, name: str)¶ Sets the scale bar style by
name
.The
name
parameter gives the (untranslated) style name. Possibilities are: ‘Single Box’, ‘Double Box’, ‘Line Ticks Middle’, ‘Line Ticks Down’, ‘Line Ticks Up’, ‘Numeric’See also
- Parameters
name (str) –
-
setTextFormat
(self, format: QgsTextFormat)¶ Sets the text
format
used for drawing text in the scalebar.See also
New in version 3.2.
- Parameters
format (QgsTextFormat) –
-
setUnitLabel
(self, label: str)¶ Sets the
label
for units.See also
- Parameters
label (str) –
-
setUnits
(self, units: QgsUnitTypes.DistanceUnit)¶ Sets the distance
units
used by the scalebar.See also
- Parameters
units (QgsUnitTypes.DistanceUnit) –
-
setUnitsPerSegment
(self, units: float)¶ Sets the number of scalebar
units
per segment.See also
- Parameters
units (float) –
-
style
(self) → str¶ Returns the scale bar style name.
See also
- Return type
str
-
textFormat
(self) → QgsTextFormat¶ Returns the text format used for drawing text in the scalebar.
See also
New in version 3.2.
- Return type
-
timerEvent
(self, QTimerEvent)¶
-
topLeftToReferencePoint
(self, point: QgsLayoutPoint) → QgsLayoutPoint¶ Returns the position for the reference point of the item, if the top-left of the item was placed at the specified
point
.
-
type
(self) → int¶ - Return type
int
-
unitLabel
(self) → str¶ Returns the label for units.
See also
- Return type
str
-
units
(self) → QgsUnitTypes.DistanceUnit¶ Returns the distance units used by the scalebar.
See also
- Return type
-
unitsPerSegment
(self) → float¶ Returns the number of scalebar units per segment.
See also
- Return type
float
-
update
(self)¶ Adjusts the scale bar box size and updates the item.
-
updateMicroFocus
(self)¶
-
wheelEvent
(self, QGraphicsSceneWheelEvent)¶
-
writeObjectPropertiesToElement
(self, parentElement: QDomElement, document: QDomDocument, context: QgsReadWriteContext) → bool¶ Stores object properties within an XML DOM element.
- Parameters
parentElement – is the parent DOM element to store the object’s properties in
document – DOM document
context – read write context
- Returns
True
if write was successful
See also
-
writePropertiesToElement
(self, element: QDomElement, document: QDomDocument, context: QgsReadWriteContext) → bool¶ - Parameters
element (QDomElement) –
document (QDomDocument) –
context (QgsReadWriteContext) –
- Return type
bool