Class: QgsSimpleLineSymbolLayer

class qgis.core.QgsSimpleLineSymbolLayer(color: Union[QColor, Qt.GlobalColor] = DEFAULT_SIMPLELINE_COLOR, width: float = DEFAULT_SIMPLELINE_WIDTH, penStyle: Qt.PenStyle = DEFAULT_SIMPLELINE_PENSTYLE)

Bases: QgsLineSymbolLayer

Constructor for QgsSimpleLineSymbolLayer. Creates a simple line symbol in the specified color, width (in millimeters) and penStyle.

A simple line symbol layer, which renders lines using a line in a variety of styles (e.g. solid, dotted, dashed).

Parameters
  • color (Union[QColor) –

  • width (float = DEFAULT_SIMPLELINE_WIDTH) –

  • penStyle

alignDashPattern(self) → bool

Returns True if dash patterns should be aligned to the start and end of lines, by applying subtle tweaks to the pattern sizing in order to ensure that the end of a line is represented by a complete dash element.

New in version 3.16.

Return type

bool

clone(self)QgsSimpleLineSymbolLayer
Return type

QgsSimpleLineSymbolLayer

copyDataDefinedProperties(self, destLayer: QgsSymbolLayer)

Copies all data defined properties of this layer to another symbol layer.

Parameters

destLayer – destination layer

copyPaintEffect(self, destLayer: QgsSymbolLayer)

Copies paint effect of this layer to another symbol layer

Parameters

destLayer – destination layer

New in version 2.9.

create(properties: Dict[str, str] = {})QgsSymbolLayer

Creates a new QgsSimpleLineSymbolLayer, using the settings serialized in the properties map (corresponding to the output from QgsSimpleLineSymbolLayer.properties() ).

Parameters

properties (Dict[str) –

Return type

QgsSymbolLayer

createFromSld(element: QDomElement)QgsSymbolLayer

Creates a new QgsSimpleLineSymbolLayer from an SLD XML DOM element.

Parameters

element (QDomElement) –

Return type

QgsSymbolLayer

customDashPatternMapUnitScale(self)QgsMapUnitScale

Returns the map unit scale for lengths used in the custom dash pattern.

Return type

QgsMapUnitScale

customDashPatternUnit(self)QgsUnitTypes.RenderUnit

Returns the units for lengths used in the custom dash pattern.

Return type

QgsUnitTypes.RenderUnit

customDashVector(self) → List[float]

Returns the custom dash vector, which is the pattern of alternating drawn/skipped lengths used while rendering a custom dash pattern.

Units for the vector are specified by customDashPatternUnit()

This setting is only used when useCustomDashPattern() returns True.

Return type

List[float]

dashPatternOffset(self) → float

Returns the dash pattern offset, which dictates how far along the dash pattern the pattern should start rendering at.

Offset units can be retrieved by calling dashPatternOffsetUnit().

New in version 3.16.

Return type

float

dashPatternOffsetMapUnitScale(self)QgsMapUnitScale

Returns the map unit scale the dash pattern offset value.

New in version 3.16.

Return type

QgsMapUnitScale

dashPatternOffsetUnit(self)QgsUnitTypes.RenderUnit

Returns the units for the dash pattern offset.

New in version 3.16.

Return type

QgsUnitTypes.RenderUnit

drawInsidePolygon(self) → bool

Returns True if the line should only be drawn inside polygons, and any portion of the line which falls outside the polygon should be clipped away.

This setting only has an effect when the line symbol is being used to render polygon rings.

Return type

bool

dxfColor(self, context: QgsSymbolRenderContext) → QColor
Parameters

context (QgsSymbolRenderContext) –

Return type

QColor

dxfCustomDashPattern(self) → Tuple[List[float], QgsUnitTypes.RenderUnit]
Return type

Tuple[List[float], QgsUnitTypes.RenderUnit]

dxfOffset(self, e: QgsDxfExport, context: QgsSymbolRenderContext) → float
Parameters
Return type

float

dxfPenStyle(self) → Qt.PenStyle
Return type

Qt.PenStyle

dxfWidth(self, e: QgsDxfExport, context: QgsSymbolRenderContext) → float
Parameters
Return type

float

estimateMaxBleed(self, context: QgsRenderContext) → float
Parameters

context (QgsRenderContext) –

Return type

float

layerType(self) → str
Return type

str

mapUnitScale(self)QgsMapUnitScale
Return type

QgsMapUnitScale

ogrFeatureStyle(self, mmScaleFactor: float, mapUnitScaleFactor: float) → str
Parameters
  • mmScaleFactor (float) –

  • mapUnitScaleFactor (float) –

Return type

str

outputUnit(self)QgsUnitTypes.RenderUnit
Return type

QgsUnitTypes.RenderUnit

penCapStyle(self) → Qt.PenCapStyle

Returns the pen cap style used to render the line (e.g. flat, square, round, etc).

See also

setPenCapStyle()

Return type

Qt.PenCapStyle

penJoinStyle(self) → Qt.PenJoinStyle

Returns the pen join style used to render the line (e.g. miter, bevel, round, etc).

Return type

Qt.PenJoinStyle

penStyle(self) → Qt.PenStyle

Returns the pen style used to render the line (e.g. solid, dashed, etc).

See also

setPenStyle()

Return type

Qt.PenStyle

properties(self) → Dict[str, str]
Return type

Dict[str, str]

renderPolygonStroke(self, points: QPolygonF, rings: Iterable[QPolygonF], context: QgsSymbolRenderContext)
Parameters
renderPolyline(self, points: QPolygonF, context: QgsSymbolRenderContext)
Parameters
restoreOldDataDefinedProperties(self, stringMap: Dict[str, str])

Restores older data defined properties from string map.

New in version 3.0.

setAlignDashPattern(self, enabled: bool)

Sets whether dash patterns should be aligned to the start and end of lines, by applying subtle tweaks to the pattern sizing in order to ensure that the end of a line is represented by a complete dash element.

New in version 3.16.

Parameters

enabled (bool) –

setCustomDashPatternMapUnitScale(self, scale: QgsMapUnitScale)

Sets the map unit scale for lengths used in the custom dash pattern.

Parameters

scale (QgsMapUnitScale) –

setCustomDashPatternUnit(self, unit: QgsUnitTypes.RenderUnit)

Sets the unit for lengths used in the custom dash pattern.

Parameters

unit (QgsUnitTypes.RenderUnit) –

setCustomDashVector(self, vector: Iterable[float])

Sets the custom dash vector, which is the pattern of alternating drawn/skipped lengths used while rendering a custom dash pattern.

Units for the vector are specified by customDashPatternUnit()

This setting is only used when useCustomDashPattern() returns True.

Parameters

vector (Iterable[float]) –

setDashPatternOffset(self, offset: float)

Sets the dash pattern offset, which dictates how far along the dash pattern the pattern should start rendering at.

Offset units are set via setDashPatternOffsetUnit().

New in version 3.16.

Parameters

offset (float) –

setDashPatternOffsetMapUnitScale(self, scale: QgsMapUnitScale)

Sets the map unit scale for the dash pattern offset.

New in version 3.16.

Parameters

scale (QgsMapUnitScale) –

setDashPatternOffsetUnit(self, unit: QgsUnitTypes.RenderUnit)

Sets the unit for the dash pattern offset.

New in version 3.16.

Parameters

unit (QgsUnitTypes.RenderUnit) –

setDrawInsidePolygon(self, drawInsidePolygon: bool)

Sets whether the line should only be drawn inside polygons, and any portion of the line which falls outside the polygon should be clipped away.

This setting only has an effect when the line symbol is being used to render polygon rings.

Parameters

drawInsidePolygon (bool) –

setMapUnitScale(self, scale: QgsMapUnitScale)
Parameters

scale (QgsMapUnitScale) –

setOutputUnit(self, unit: QgsUnitTypes.RenderUnit)
Parameters

unit (QgsUnitTypes.RenderUnit) –

setPenCapStyle(self, style: Qt.PenCapStyle)

Sets the pen cap style used to render the line (e.g. flat, square, round, etc).

See also

penCapStyle()

Parameters

style (Qt.PenCapStyle) –

setPenJoinStyle(self, style: Qt.PenJoinStyle)

Sets the pen join style used to render the line (e.g. miter, bevel, round, etc).

See also

penJoinStyle()

Parameters

style (Qt.PenJoinStyle) –

setPenStyle(self, style: Qt.PenStyle)

Sets the pen style used to render the line (e.g. solid, dashed, etc).

See also

penStyle()

Parameters

style (Qt.PenStyle) –

setTweakDashPatternOnCorners(self, enabled: bool)

Sets whether dash patterns tweaks should be applied on sharp corners, to ensure that a double-length dash is drawn running into and out of the corner.

Note

This setting is only applied if alignDashPattern() is True.

New in version 3.16.

Parameters

enabled (bool) –

setUseCustomDashPattern(self, b: bool)

Sets whether the line uses a custom dash pattern.

Parameters

b (bool) –

startRender(self, context: QgsSymbolRenderContext)
Parameters

context (QgsSymbolRenderContext) –

stopRender(self, context: QgsSymbolRenderContext)
Parameters

context (QgsSymbolRenderContext) –

toSld(self, doc: QDomDocument, element: QDomElement, props: Dict[str, str])
Parameters
  • doc (QDomDocument) –

  • element (QDomElement) –

  • props (Dict[str) –

tweakDashPatternOnCorners(self) → bool

Returns True if dash patterns tweaks should be applied on sharp corners, to ensure that a double-length dash is drawn running into and out of the corner.

Note

This setting is only applied if alignDashPattern() is True.

New in version 3.16.

Return type

bool

useCustomDashPattern(self) → bool

Returns True if the line uses a custom dash pattern.

Return type

bool