QGIS API Documentation 3.38.0-Grenoble (exported)
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
QgsLinePatternFillSymbolLayer Class Reference

A symbol fill consisting of repeated parallel lines. More...

#include <qgsfillsymbollayer.h>

Inheritance diagram for QgsLinePatternFillSymbolLayer:
Inheritance graph
[legend]

Public Member Functions

 QgsLinePatternFillSymbolLayer ()
 
 ~QgsLinePatternFillSymbolLayer () override
 
Qgis::LineClipMode clipMode () const
 Returns the line clipping mode, which defines how lines are clipped at the edges of shapes.
 
QgsLinePatternFillSymbolLayerclone () const override
 Shall be reimplemented by subclasses to create a deep copy of the instance.
 
QColor color () const override
 Returns the "representative" color of the symbol layer.
 
double distance () const
 Returns the distance between lines in the fill pattern.
 
const QgsMapUnitScaledistanceMapUnitScale () const
 Returns the map unit scale for the pattern's line distance.
 
Qgis::RenderUnit distanceUnit () const
 Returns the units for the distance between lines in the fill pattern.
 
double estimateMaxBleed (const QgsRenderContext &context) const override
 Returns the estimated maximum distance which the layer style will bleed outside the drawn shape when drawn in the specified /a context.
 
bool hasDataDefinedProperties () const override
 Returns true if the symbol layer (or any of its sub-symbols) contains data defined properties.
 
QString layerType () const override
 Returns a string that represents this layer type.
 
double lineAngle () const
 Returns the angle for the parallel lines used to fill the symbol.
 
double lineWidth () const
 Returns the width of the line subsymbol used to render the parallel lines in the fill.
 
const QgsMapUnitScalelineWidthMapUnitScale () const
 Returns the map unit scale for the pattern's line width.
 
Qgis::RenderUnit lineWidthUnit () const
 Returns the units for the line's width.
 
QgsMapUnitScale mapUnitScale () const override
 
double offset () const
 Returns the offset distance for lines within the fill, which is the distance to offset the parallel lines from their normal position.
 
const QgsMapUnitScaleoffsetMapUnitScale () const
 Returns the map unit scale for the pattern's line offset.
 
Qgis::RenderUnit offsetUnit () const
 Returns the units for the line pattern's offset.
 
QString ogrFeatureStyleWidth (double widthScaleFactor) const
 
Qgis::RenderUnit outputUnit () const override
 Returns the units to use for sizes and widths within the symbol layer.
 
QVariantMap properties () const override
 Should be reimplemented by subclasses to return a string map that contains the configuration information for the symbol layer.
 
void renderPolygon (const QPolygonF &points, const QVector< QPolygonF > *rings, QgsSymbolRenderContext &context) override
 Renders the fill symbol layer for the polygon whose outer ring is defined by points, using the given render context.
 
void setClipMode (Qgis::LineClipMode mode)
 Sets the line clipping mode, which defines how lines are clipped at the edges of shapes.
 
void setColor (const QColor &c) override
 Sets the "representative" color for the symbol layer.
 
void setDistance (double d)
 Sets the distance between lines in the fill pattern.
 
void setDistanceMapUnitScale (const QgsMapUnitScale &scale)
 Sets the map unit scale for the pattern's line distance.
 
void setDistanceUnit (Qgis::RenderUnit unit)
 Sets the unit for the distance between lines in the fill pattern.
 
void setLineAngle (double a)
 Sets the angle for the parallel lines used to fill the symbol.
 
void setLineWidth (double w)
 Sets the width of the line subsymbol used to render the parallel lines in the fill.
 
void setLineWidthMapUnitScale (const QgsMapUnitScale &scale)
 Sets the map unit scale for the pattern's line width.
 
void setLineWidthUnit (Qgis::RenderUnit unit)
 Sets the unit for the line's width.
 
void setMapUnitScale (const QgsMapUnitScale &scale) override
 
void setOffset (double offset)
 Sets the offset distance for lines within the fill, which is the distance to offset the parallel lines from their normal position.
 
void setOffsetMapUnitScale (const QgsMapUnitScale &scale)
 Sets the map unit scale for the pattern's line offset.
 
void setOffsetUnit (Qgis::RenderUnit unit)
 Sets the unit for the line pattern's offset.
 
void setOutputUnit (Qgis::RenderUnit unit) override
 Sets the units to use for sizes and widths within the symbol layer.
 
bool setSubSymbol (QgsSymbol *symbol) override
 Sets layer's subsymbol. takes ownership of the passed symbol.
 
void startFeatureRender (const QgsFeature &feature, QgsRenderContext &context) override
 Called before the layer will be rendered for a particular feature.
 
void startRender (QgsSymbolRenderContext &context) override
 Called before a set of rendering operations commences on the supplied render context.
 
void stopFeatureRender (const QgsFeature &feature, QgsRenderContext &context) override
 Called after the layer has been rendered for a particular feature.
 
void stopRender (QgsSymbolRenderContext &context) override
 Called after a set of rendering operations has finished on the supplied render context.
 
QgsSymbolsubSymbol () override
 Returns the symbol's sub symbol, if present.
 
void toSld (QDomDocument &doc, QDomElement &element, const QVariantMap &props) const override
 Saves the symbol layer as SLD.
 
QImage toTiledPatternImage () const override
 Renders the symbol layer as an image that can be used as a seamless pattern fill for polygons, this method is used by SLD export to generate image tiles for ExternalGraphic polygon fills.
 
QSet< QString > usedAttributes (const QgsRenderContext &context) const override
 Returns the set of attributes referenced by the layer.
 
bool usesMapUnits () const override
 Returns true if the symbol layer has any components which use map unit based sizes.
 
- Public Member Functions inherited from QgsImageFillSymbolLayer
 QgsImageFillSymbolLayer ()
 
 ~QgsImageFillSymbolLayer () override
 
Qgis::SymbolCoordinateReference coordinateReference () const
 Returns the coordinate reference mode for fill which controls how the top left corner of the image fill is positioned relative to the feature.
 
Qt::PenStyle dxfPenStyle () const override
 Gets pen style.
 
double dxfWidth (const QgsDxfExport &e, QgsSymbolRenderContext &context) const override
 Gets line width.
 
void setCoordinateReference (Qgis::SymbolCoordinateReference coordinateReference)
 Sets the coordinate reference mode for fill which controls how the top left corner of the image fill is positioned relative to the feature.
 
void setStrokeWidthMapUnitScale (const QgsMapUnitScale &scale)
 Sets the stroke width map unit scale.
 
void setStrokeWidthUnit (Qgis::RenderUnit unit)
 Sets the units for the symbol's stroke width.
 
const QgsMapUnitScalestrokeWidthMapUnitScale () const
 Returns the stroke width map unit scale.
 
Qgis::RenderUnit strokeWidthUnit () const
 Returns the units for the symbol's stroke width.
 
- Public Member Functions inherited from QgsFillSymbolLayer
 QgsFillSymbolLayer (const QgsFillSymbolLayer &other)=delete
 QgsFillSymbolLayer cannot be copied.
 
double angle () const
 Returns the rotation angle of the fill symbol, in degrees clockwise.
 
void drawPreviewIcon (QgsSymbolRenderContext &context, QSize size) override
 
QgsFillSymbolLayeroperator= (const QgsFillSymbolLayer &other)=delete
 QgsFillSymbolLayer cannot be copied.
 
void setAngle (double angle)
 Sets the rotation angle of the pattern, in degrees clockwise.
 
- Public Member Functions inherited from QgsSymbolLayer
 QgsSymbolLayer (const QgsSymbolLayer &other)=delete
 QgsSymbolLayer cannot be copied.
 
virtual ~QgsSymbolLayer ()
 
virtual bool canCauseArtifactsBetweenAdjacentTiles () const
 Returns true if the symbol layer rendering can cause visible artifacts across a single feature when the feature is rendered as a series of adjacent map tiles each containing a portion of the feature's geometry.
 
QgsPropertyCollectiondataDefinedProperties ()
 Returns a reference to the symbol layer's property collection, used for data defined overrides.
 
const QgsPropertyCollectiondataDefinedProperties () const
 Returns a reference to the symbol layer's property collection, used for data defined overrides.
 
virtual double dxfAngle (QgsSymbolRenderContext &context) const
 Gets angle.
 
virtual QColor dxfBrushColor (QgsSymbolRenderContext &context) const
 Gets brush/fill color.
 
virtual Qt::BrushStyle dxfBrushStyle () const
 Gets brush/fill style.
 
virtual QColor dxfColor (QgsSymbolRenderContext &context) const
 Gets color.
 
virtual QVector< qreal > dxfCustomDashPattern (Qgis::RenderUnit &unit) const
 Gets dash pattern.
 
virtual double dxfOffset (const QgsDxfExport &e, QgsSymbolRenderContext &context) const
 Gets offset.
 
virtual double dxfSize (const QgsDxfExport &e, QgsSymbolRenderContext &context) const
 Gets marker size.
 
bool enabled () const
 Returns true if symbol layer is enabled and will be drawn.
 
virtual QColor fillColor () const
 Returns the fill color for the symbol layer.
 
virtual Qgis::SymbolLayerFlags flags () const
 Returns flags which control the symbol layer's behavior.
 
QString id () const
 Returns symbol layer identifier This id is unique in the whole project.
 
virtual bool isCompatibleWithSymbol (QgsSymbol *symbol) const
 Returns if the layer can be used below the specified symbol.
 
bool isLocked () const
 Returns true if the symbol layer colors are locked and the layer will ignore any symbol-level color changes.
 
virtual QList< QgsSymbolLayerReferencemasks () const
 Returns masks defined by this symbol layer.
 
virtual QString ogrFeatureStyle (double mmScaleFactor, double mapUnitScaleFactor) const
 
QgsSymbolLayeroperator= (const QgsSymbolLayer &other)=delete
 QgsSymbolLayer cannot be copied.
 
QgsPaintEffectpaintEffect () const
 Returns the current paint effect for the layer.
 
virtual void prepareExpressions (const QgsSymbolRenderContext &context)
 Prepares all data defined property expressions for evaluation.
 
virtual void prepareMasks (const QgsSymbolRenderContext &context)
 Prepares all mask internal objects according to what is defined in context This should be called prior to calling startRender() method.
 
int renderingPass () const
 Specifies the rendering pass in which this symbol layer should be rendered.
 
void setDataDefinedProperties (const QgsPropertyCollection &collection)
 Sets the symbol layer's property collection, used for data defined overrides.
 
virtual void setDataDefinedProperty (Property key, const QgsProperty &property)
 Sets a data defined property for the layer.
 
void setEnabled (bool enabled)
 Sets whether symbol layer is enabled and should be drawn.
 
virtual void setFillColor (const QColor &color)
 Sets the fill color for the symbol layer.
 
void setId (const QString &id)
 Set symbol layer identifier This id has to be unique in the whole project.
 
void setLocked (bool locked)
 Sets whether the layer's colors are locked.
 
void setPaintEffect (QgsPaintEffect *effect)
 Sets the current paint effect for the layer.
 
void setRenderingPass (int renderingPass)
 Specifies the rendering pass in which this symbol layer should be rendered.
 
virtual void setStrokeColor (const QColor &color)
 Sets the stroke color for the symbol layer.
 
void setUserFlags (Qgis::SymbolLayerUserFlags flags)
 Sets user-controlled flags which control the symbol layer's behavior.
 
virtual QColor strokeColor () const
 Returns the stroke color for the symbol layer.
 
Qgis::SymbolType type () const
 
Qgis::SymbolLayerUserFlags userFlags () const
 Returns user-controlled flags which control the symbol layer's behavior.
 
virtual bool writeDxf (QgsDxfExport &e, double mmMapUnitScaleFactor, const QString &layerName, QgsSymbolRenderContext &context, QPointF shift=QPointF(0.0, 0.0)) const
 write as DXF
 

Static Public Member Functions

static QgsSymbolLayercreate (const QVariantMap &properties=QVariantMap())
 Creates a new QgsLinePatternFillSymbolLayer from a properties map.
 
static QgsSymbolLayercreateFromSld (QDomElement &element)
 Creates a new QgsLinePatternFillSymbolLayer from a SLD element.
 
- Static Public Member Functions inherited from QgsSymbolLayer
static const QgsPropertiesDefinitionpropertyDefinitions ()
 Returns the symbol layer property definitions.
 

Protected Member Functions

void applyDataDefinedSettings (QgsSymbolRenderContext &context) override
 Applies data defined settings prior to generating the fill symbol brush.
 
- Protected Member Functions inherited from QgsImageFillSymbolLayer
virtual bool applyBrushTransformFromContext (QgsSymbolRenderContext *context=nullptr) const
 Returns true if the image brush should be transformed using the render context's texture origin.
 
- Protected Member Functions inherited from QgsFillSymbolLayer
 QgsFillSymbolLayer (bool locked=false)
 
void _renderPolygon (QPainter *p, const QPolygonF &points, const QVector< QPolygonF > *rings, QgsSymbolRenderContext &context)
 Default method to render polygon.
 
- Protected Member Functions inherited from QgsSymbolLayer
 QgsSymbolLayer (Qgis::SymbolType type, bool locked=false)
 Constructor for QgsSymbolLayer.
 
void copyDataDefinedProperties (QgsSymbolLayer *destLayer) const
 Copies all data defined properties of this layer to another symbol layer.
 
void copyPaintEffect (QgsSymbolLayer *destLayer) const
 Copies paint effect of this layer to another symbol layer.
 
void installMasks (QgsRenderContext &context, bool recursive)
 When rendering, install masks on context painter if recursive is true masks are installed recursively for all children symbol layers.
 
void removeMasks (QgsRenderContext &context, bool recursive)
 When rendering, remove previously installed masks from context painter if recursive is true masks are removed recursively for all children symbol layers.
 
void restoreOldDataDefinedProperties (const QVariantMap &stringMap)
 Restores older data defined properties from string map.
 
bool shouldRenderUsingSelectionColor (const QgsSymbolRenderContext &context) const
 Returns true if the symbol layer should be rendered using the selection color from the render context.
 

Additional Inherited Members

- Public Types inherited from QgsSymbolLayer
enum class  Property : int {
  Size = 0 , Angle , Name , FillColor ,
  StrokeColor , StrokeWidth , StrokeStyle , Offset ,
  Character , Width , Height , PreserveAspectRatio ,
  FillStyle , JoinStyle , SecondaryColor , LineAngle ,
  LineDistance , GradientType , CoordinateMode , GradientSpread ,
  GradientReference1X , GradientReference1Y , GradientReference2X , GradientReference2Y ,
  GradientReference1IsCentroid , GradientReference2IsCentroid , BlurRadius , ShapeburstUseWholeShape ,
  ShapeburstMaxDistance , ShapeburstIgnoreRings , File , DistanceX ,
  DistanceY , DisplacementX , DisplacementY , Opacity ,
  CustomDash , CapStyle , Placement , Interval ,
  OffsetAlongLine , AverageAngleLength , HorizontalAnchor , VerticalAnchor ,
  LayerEnabled , ArrowWidth , ArrowStartWidth , ArrowHeadLength ,
  ArrowHeadThickness , ArrowHeadType , ArrowType , OffsetX ,
  OffsetY , PointCount , RandomSeed , ClipPoints ,
  DensityArea , FontFamily , FontStyle , DashPatternOffset ,
  TrimStart , TrimEnd , LineStartWidthValue , LineEndWidthValue ,
  LineStartColorValue , LineEndColorValue , MarkerClipping , RandomOffsetX ,
  RandomOffsetY , LineClipping
}
 Data definable properties. More...
 
- Protected Attributes inherited from QgsImageFillSymbolLayer
QBrush mBrush
 
Qgis::SymbolCoordinateReference mCoordinateReference = Qgis::SymbolCoordinateReference::Feature
 
double mNextAngle = 0.0
 
double mStrokeWidth = 0.0
 Stroke width.
 
QgsMapUnitScale mStrokeWidthMapUnitScale
 
Qgis::RenderUnit mStrokeWidthUnit = Qgis::RenderUnit::Millimeters
 
- Protected Attributes inherited from QgsFillSymbolLayer
double mAngle = 0.0
 
- Protected Attributes inherited from QgsSymbolLayer
QPainterPath mClipPath
 
QColor mColor
 
QgsPropertyCollection mDataDefinedProperties
 
bool mEnabled = true
 True if layer is enabled and should be drawn.
 
QgsFields mFields
 
QString mId
 
bool mLocked = false
 
std::unique_ptr< QgsPaintEffectmPaintEffect
 
int mRenderingPass = 0
 
Qgis::SymbolType mType
 
Qgis::SymbolLayerUserFlags mUserFlags
 User controlled flags.
 
- Static Protected Attributes inherited from QgsSymbolLayer
static const bool SELECT_FILL_BORDER = false
 Whether fill styles for selected features also highlight symbol stroke.
 
static const bool SELECT_FILL_STYLE = false
 Whether fill styles for selected features uses symbol layer style.
 
static const bool SELECTION_IS_OPAQUE = true
 Whether styles for selected features ignore symbol alpha.
 

Detailed Description

A symbol fill consisting of repeated parallel lines.

Definition at line 1467 of file qgsfillsymbollayer.h.

Constructor & Destructor Documentation

◆ QgsLinePatternFillSymbolLayer()

QgsLinePatternFillSymbolLayer::QgsLinePatternFillSymbolLayer ( )

Definition at line 2558 of file qgsfillsymbollayer.cpp.

◆ ~QgsLinePatternFillSymbolLayer()

QgsLinePatternFillSymbolLayer::~QgsLinePatternFillSymbolLayer ( )
overridedefault

Member Function Documentation

◆ applyDataDefinedSettings()

void QgsLinePatternFillSymbolLayer::applyDataDefinedSettings ( QgsSymbolRenderContext context)
overrideprotectedvirtual

Applies data defined settings prior to generating the fill symbol brush.

Reimplemented from QgsImageFillSymbolLayer.

Definition at line 3501 of file qgsfillsymbollayer.cpp.

◆ clipMode()

Qgis::LineClipMode QgsLinePatternFillSymbolLayer::clipMode ( ) const
inline

Returns the line clipping mode, which defines how lines are clipped at the edges of shapes.

See also
setClipMode()
Since
QGIS 3.24

Definition at line 1679 of file qgsfillsymbollayer.h.

◆ clone()

QgsLinePatternFillSymbolLayer * QgsLinePatternFillSymbolLayer::clone ( ) const
overridevirtual

Shall be reimplemented by subclasses to create a deep copy of the instance.

Implements QgsSymbolLayer.

Definition at line 3407 of file qgsfillsymbollayer.cpp.

◆ color()

QColor QgsLinePatternFillSymbolLayer::color ( ) const
overridevirtual

Returns the "representative" color of the symbol layer.

Depending on the symbol layer type, this will have different meaning. For instance, a line symbol layer will generally return the stroke color of the layer, while a fill symbol layer will return the "fill" color instead of stroke.

Some symbol layer types will return an invalid QColor if they have no representative color associated (e.g. raster image based symbol layers).

See also
setColor()
strokeColor()
fillColor()

Reimplemented from QgsSymbolLayer.

Definition at line 2579 of file qgsfillsymbollayer.cpp.

◆ create()

QgsSymbolLayer * QgsLinePatternFillSymbolLayer::create ( const QVariantMap &  properties = QVariantMap())
static

Creates a new QgsLinePatternFillSymbolLayer from a properties map.

The caller takes ownership of the returned object.

Definition at line 2749 of file qgsfillsymbollayer.cpp.

◆ createFromSld()

QgsSymbolLayer * QgsLinePatternFillSymbolLayer::createFromSld ( QDomElement &  element)
static

Creates a new QgsLinePatternFillSymbolLayer from a SLD element.

The caller takes ownership of the returned object.

Definition at line 3524 of file qgsfillsymbollayer.cpp.

◆ distance()

double QgsLinePatternFillSymbolLayer::distance ( ) const
inline

Returns the distance between lines in the fill pattern.

Units are retrieved by distanceUnit().

See also
setDistance()
distanceUnit()

Definition at line 1528 of file qgsfillsymbollayer.h.

◆ distanceMapUnitScale()

const QgsMapUnitScale & QgsLinePatternFillSymbolLayer::distanceMapUnitScale ( ) const
inline

Returns the map unit scale for the pattern's line distance.

See also
setDistanceMapUnitScale()
distance()
distanceUnit()

Definition at line 1607 of file qgsfillsymbollayer.h.

◆ distanceUnit()

Qgis::RenderUnit QgsLinePatternFillSymbolLayer::distanceUnit ( ) const
inline

Returns the units for the distance between lines in the fill pattern.

See also
setDistanceUnit()
distance()

Definition at line 1589 of file qgsfillsymbollayer.h.

◆ estimateMaxBleed()

double QgsLinePatternFillSymbolLayer::estimateMaxBleed ( const QgsRenderContext context) const
overridevirtual

Returns the estimated maximum distance which the layer style will bleed outside the drawn shape when drawn in the specified /a context.

For example, polygons drawn with an stroke will draw half the width of the stroke outside of the polygon. This amount is estimated, since it may be affected by data defined symbology rules.

Reimplemented from QgsSymbolLayer.

Definition at line 2697 of file qgsfillsymbollayer.cpp.

◆ hasDataDefinedProperties()

bool QgsLinePatternFillSymbolLayer::hasDataDefinedProperties ( ) const
overridevirtual

Returns true if the symbol layer (or any of its sub-symbols) contains data defined properties.

Since
QGIS 3.4.5

Reimplemented from QgsSymbolLayer.

Definition at line 2613 of file qgsfillsymbollayer.cpp.

◆ layerType()

QString QgsLinePatternFillSymbolLayer::layerType ( ) const
overridevirtual

Returns a string that represents this layer type.

Used for serialization. Should match with the string used to register this symbol layer in the registry.

Implements QgsSymbolLayer.

Definition at line 2863 of file qgsfillsymbollayer.cpp.

◆ lineAngle()

double QgsLinePatternFillSymbolLayer::lineAngle ( ) const
inline

Returns the angle for the parallel lines used to fill the symbol.

Angles are in degrees, clockwise from North.

See also
setLineAngle()

Definition at line 1513 of file qgsfillsymbollayer.h.

◆ lineWidth()

double QgsLinePatternFillSymbolLayer::lineWidth ( ) const
inline

Returns the width of the line subsymbol used to render the parallel lines in the fill.

See also
setLineWidth()

Definition at line 1544 of file qgsfillsymbollayer.h.

◆ lineWidthMapUnitScale()

const QgsMapUnitScale & QgsLinePatternFillSymbolLayer::lineWidthMapUnitScale ( ) const
inline

Returns the map unit scale for the pattern's line width.

See also
setLineWidthMapUnitScale()
lineWidth()
lineWidthUnit()

Definition at line 1639 of file qgsfillsymbollayer.h.

◆ lineWidthUnit()

Qgis::RenderUnit QgsLinePatternFillSymbolLayer::lineWidthUnit ( ) const
inline

Returns the units for the line's width.

See also
setLineWidthUnit()

Definition at line 1621 of file qgsfillsymbollayer.h.

◆ mapUnitScale()

QgsMapUnitScale QgsLinePatternFillSymbolLayer::mapUnitScale ( ) const
overridevirtual

Reimplemented from QgsImageFillSymbolLayer.

Definition at line 2738 of file qgsfillsymbollayer.cpp.

◆ offset()

double QgsLinePatternFillSymbolLayer::offset ( ) const
inline

Returns the offset distance for lines within the fill, which is the distance to offset the parallel lines from their normal position.

Units are retrieved via offsetUnit().

See also
setOffset()
offsetUnit()
offsetMapUnitScale()

Definition at line 1573 of file qgsfillsymbollayer.h.

◆ offsetMapUnitScale()

const QgsMapUnitScale & QgsLinePatternFillSymbolLayer::offsetMapUnitScale ( ) const
inline

Returns the map unit scale for the pattern's line offset.

See also
setOffsetMapUnitScale()
offset()
offsetUnit()

Definition at line 1671 of file qgsfillsymbollayer.h.

◆ offsetUnit()

Qgis::RenderUnit QgsLinePatternFillSymbolLayer::offsetUnit ( ) const
inline

Returns the units for the line pattern's offset.

See also
setOffsetUnit()

Definition at line 1653 of file qgsfillsymbollayer.h.

◆ ogrFeatureStyleWidth()

QString QgsLinePatternFillSymbolLayer::ogrFeatureStyleWidth ( double  widthScaleFactor) const

Definition at line 3486 of file qgsfillsymbollayer.cpp.

◆ outputUnit()

Qgis::RenderUnit QgsLinePatternFillSymbolLayer::outputUnit ( ) const
overridevirtual

Returns the units to use for sizes and widths within the symbol layer.

Individual symbol layer subclasses will interpret this in different ways, e.g., a marker symbol layer may use it to specify the units for the marker size, while a line symbol layer may use it to specify the units for the line width.

Returns
output unit, or QgsUnitTypes::RenderUnknownUnit if the symbol layer contains mixed units
See also
setOutputUnit()

Reimplemented from QgsImageFillSymbolLayer.

Definition at line 2713 of file qgsfillsymbollayer.cpp.

◆ properties()

QVariantMap QgsLinePatternFillSymbolLayer::properties ( ) const
overridevirtual

Should be reimplemented by subclasses to return a string map that contains the configuration information for the symbol layer.

This is used to serialize a symbol layer perstistently.

Reimplemented from QgsImageFillSymbolLayer.

Definition at line 3387 of file qgsfillsymbollayer.cpp.

◆ renderPolygon()

void QgsLinePatternFillSymbolLayer::renderPolygon ( const QPolygonF &  points,
const QVector< QPolygonF > *  rings,
QgsSymbolRenderContext context 
)
overridevirtual

Renders the fill symbol layer for the polygon whose outer ring is defined by points, using the given render context.

The rings argument optionally specifies a list of polygon rings to render as holes.

Reimplemented from QgsImageFillSymbolLayer.

Definition at line 3193 of file qgsfillsymbollayer.cpp.

◆ setClipMode()

void QgsLinePatternFillSymbolLayer::setClipMode ( Qgis::LineClipMode  mode)
inline

Sets the line clipping mode, which defines how lines are clipped at the edges of shapes.

See also
clipMode()
Since
QGIS 3.24

Definition at line 1687 of file qgsfillsymbollayer.h.

◆ setColor()

void QgsLinePatternFillSymbolLayer::setColor ( const QColor &  color)
overridevirtual

Sets the "representative" color for the symbol layer.

Depending on the symbol layer type, this will have different meaning. For instance, a line symbol layer will generally set the stroke color of the layer, while a fill symbol layer will set the "fill" color instead of stroke.

See also
color()
setStrokeColor()
setFillColor()

Reimplemented from QgsSymbolLayer.

Definition at line 2573 of file qgsfillsymbollayer.cpp.

◆ setDistance()

void QgsLinePatternFillSymbolLayer::setDistance ( double  d)
inline

Sets the distance between lines in the fill pattern.

Parameters
ddistance. Units are specified by setDistanceUnit()
See also
distance()
setDistanceUnit()

Definition at line 1521 of file qgsfillsymbollayer.h.

◆ setDistanceMapUnitScale()

void QgsLinePatternFillSymbolLayer::setDistanceMapUnitScale ( const QgsMapUnitScale scale)
inline

Sets the map unit scale for the pattern's line distance.

See also
distanceMapUnitScale()
setDistance()
setDistanceUnit()

Definition at line 1598 of file qgsfillsymbollayer.h.

◆ setDistanceUnit()

void QgsLinePatternFillSymbolLayer::setDistanceUnit ( Qgis::RenderUnit  unit)
inline

Sets the unit for the distance between lines in the fill pattern.

See also
distanceUnit()
setDistance()

Definition at line 1581 of file qgsfillsymbollayer.h.

◆ setLineAngle()

void QgsLinePatternFillSymbolLayer::setLineAngle ( double  a)
inline

Sets the angle for the parallel lines used to fill the symbol.

Angles are in degrees, clockwise from North.

See also
lineAngle()

Definition at line 1504 of file qgsfillsymbollayer.h.

◆ setLineWidth()

void QgsLinePatternFillSymbolLayer::setLineWidth ( double  w)

Sets the width of the line subsymbol used to render the parallel lines in the fill.

See also
lineWidth()

Definition at line 2567 of file qgsfillsymbollayer.cpp.

◆ setLineWidthMapUnitScale()

void QgsLinePatternFillSymbolLayer::setLineWidthMapUnitScale ( const QgsMapUnitScale scale)
inline

Sets the map unit scale for the pattern's line width.

See also
lineWidthMapUnitScale()
setLineWidth()
setLineWidthUnit()

Definition at line 1630 of file qgsfillsymbollayer.h.

◆ setLineWidthUnit()

void QgsLinePatternFillSymbolLayer::setLineWidthUnit ( Qgis::RenderUnit  unit)
inline

Sets the unit for the line's width.

See also
lineWidthUnit()

Definition at line 1614 of file qgsfillsymbollayer.h.

◆ setMapUnitScale()

void QgsLinePatternFillSymbolLayer::setMapUnitScale ( const QgsMapUnitScale scale)
overridevirtual

Reimplemented from QgsImageFillSymbolLayer.

Definition at line 2730 of file qgsfillsymbollayer.cpp.

◆ setOffset()

void QgsLinePatternFillSymbolLayer::setOffset ( double  offset)
inline

Sets the offset distance for lines within the fill, which is the distance to offset the parallel lines from their normal position.

Units are specified via setOffsetUnit().

See also
offset()
setOffsetUnit()
setOffsetMapUnitScale()

Definition at line 1560 of file qgsfillsymbollayer.h.

◆ setOffsetMapUnitScale()

void QgsLinePatternFillSymbolLayer::setOffsetMapUnitScale ( const QgsMapUnitScale scale)
inline

Sets the map unit scale for the pattern's line offset.

See also
offsetMapUnitScale()
setOffset()
setOffsetUnit()

Definition at line 1662 of file qgsfillsymbollayer.h.

◆ setOffsetUnit()

void QgsLinePatternFillSymbolLayer::setOffsetUnit ( Qgis::RenderUnit  unit)
inline

Sets the unit for the line pattern's offset.

See also
offsetUnit()

Definition at line 1646 of file qgsfillsymbollayer.h.

◆ setOutputUnit()

void QgsLinePatternFillSymbolLayer::setOutputUnit ( Qgis::RenderUnit  unit)
overridevirtual

Sets the units to use for sizes and widths within the symbol layer.

Individual symbol layer subclasses will interpret this in different ways, e.g., a marker symbol layer may use it to specify the units for the marker size, while a line symbol layer may use it to specify the units for the line width.

Parameters
unitoutput units
See also
outputUnit()

Reimplemented from QgsImageFillSymbolLayer.

Definition at line 2702 of file qgsfillsymbollayer.cpp.

◆ setSubSymbol()

bool QgsLinePatternFillSymbolLayer::setSubSymbol ( QgsSymbol symbol)
overridevirtual

Sets layer's subsymbol. takes ownership of the passed symbol.

Reimplemented from QgsSymbolLayer.

Definition at line 2584 of file qgsfillsymbollayer.cpp.

◆ startFeatureRender()

void QgsLinePatternFillSymbolLayer::startFeatureRender ( const QgsFeature feature,
QgsRenderContext context 
)
overridevirtual

Called before the layer will be rendered for a particular feature.

This is always followed by a call to stopFeatureRender() after the feature has been completely rendered (i.e. all parts have been rendered).

The default implementation does nothing.

Note
In some circumstances, startFeatureRender() and stopFeatureRender() may not be called before a symbol layer is rendered. E.g., when a symbol layer is being rendered in isolation and not as a result of rendering a feature (for instance, when rendering a legend patch or other non-feature based shape).
See also
stopFeatureRender()
startRender()
Since
QGIS 3.12

Reimplemented from QgsSymbolLayer.

Definition at line 2622 of file qgsfillsymbollayer.cpp.

◆ startRender()

void QgsLinePatternFillSymbolLayer::startRender ( QgsSymbolRenderContext context)
overridevirtual

Called before a set of rendering operations commences on the supplied render context.

This is always followed by a call to stopRender() after all rendering operations have been completed.

Subclasses can use this method to prepare for a set of rendering operations, e.g. by pre-evaluating paths or images to render, and performing other one-time optimisations.

See also
startFeatureRender()
stopRender()

Implements QgsSymbolLayer.

Definition at line 3161 of file qgsfillsymbollayer.cpp.

◆ stopFeatureRender()

void QgsLinePatternFillSymbolLayer::stopFeatureRender ( const QgsFeature feature,
QgsRenderContext context 
)
overridevirtual

Called after the layer has been rendered for a particular feature.

This is always preceded by a call to startFeatureRender() just before the feature will be rendered.

The default implementation does nothing.

Note
In some circumstances, startFeatureRender() and stopFeatureRender() may not be called before a symbol layer is rendered. E.g., when a symbol layer is being rendered in isolation and not as a result of rendering a feature (for instance, when rendering a legend patch or other non-feature based shape).
See also
startFeatureRender()
stopRender()
Since
QGIS 3.12

Reimplemented from QgsSymbolLayer.

Definition at line 2629 of file qgsfillsymbollayer.cpp.

◆ stopRender()

void QgsLinePatternFillSymbolLayer::stopRender ( QgsSymbolRenderContext context)
overridevirtual

Called after a set of rendering operations has finished on the supplied render context.

This is always preceded by a call to startRender() before all rendering operations are commenced.

Subclasses can use this method to cleanup after a set of rendering operations.

See also
startRender()
stopFeatureRender()

Implements QgsSymbolLayer.

Definition at line 3184 of file qgsfillsymbollayer.cpp.

◆ subSymbol()

QgsSymbol * QgsLinePatternFillSymbolLayer::subSymbol ( )
overridevirtual

Returns the symbol's sub symbol, if present.

Reimplemented from QgsSymbolLayer.

Definition at line 2600 of file qgsfillsymbollayer.cpp.

◆ toSld()

void QgsLinePatternFillSymbolLayer::toSld ( QDomDocument &  doc,
QDomElement &  element,
const QVariantMap &  props 
) const
overridevirtual

Saves the symbol layer as SLD.

Reimplemented from QgsSymbolLayer.

Definition at line 3419 of file qgsfillsymbollayer.cpp.

◆ toTiledPatternImage()

QImage QgsLinePatternFillSymbolLayer::toTiledPatternImage ( ) const
overridevirtual

Renders the symbol layer as an image that can be used as a seamless pattern fill for polygons, this method is used by SLD export to generate image tiles for ExternalGraphic polygon fills.

The default implementation returns a null image.

Returns
the tile image (not necessarily a square) or a null image if not implemented.
Since
QGIS 3.30

Reimplemented from QgsFillSymbolLayer.

Definition at line 2636 of file qgsfillsymbollayer.cpp.

◆ usedAttributes()

QSet< QString > QgsLinePatternFillSymbolLayer::usedAttributes ( const QgsRenderContext context) const
overridevirtual

Returns the set of attributes referenced by the layer.

This includes attributes required by any data defined properties associated with the layer.

Reimplemented from QgsSymbolLayer.

Definition at line 2605 of file qgsfillsymbollayer.cpp.

◆ usesMapUnits()

bool QgsLinePatternFillSymbolLayer::usesMapUnits ( ) const
overridevirtual

Returns true if the symbol layer has any components which use map unit based sizes.

Since
QGIS 3.18

Reimplemented from QgsSymbolLayer.

Definition at line 2723 of file qgsfillsymbollayer.cpp.


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