QGIS API Documentation
3.0.2-Girona (307d082)
|
A class for svg fill patterns. More...
#include <qgsfillsymbollayer.h>
Public Member Functions | |
QgsSVGFillSymbolLayer (const QString &svgFilePath, double width=20, double rotation=0.0) | |
Constructs SVG fill symbol layer with picture from given absolute path to a SVG file. More... | |
QgsSVGFillSymbolLayer (const QByteArray &svgData, double width=20, double rotation=0.0) | |
~QgsSVGFillSymbolLayer () override | |
QgsSVGFillSymbolLayer * | clone () const override |
Shall be reimplemented by subclasses to create a deep copy of the instance. More... | |
QString | layerType () const override |
Returns a string that represents this layer type. More... | |
QgsMapUnitScale | mapUnitScale () const override |
QgsUnitTypes::RenderUnit | outputUnit () const override |
Returns the units to use for sizes and widths within the symbol layer. More... | |
double | patternWidth () const |
const QgsMapUnitScale & | patternWidthMapUnitScale () const |
QgsUnitTypes::RenderUnit | patternWidthUnit () const |
Returns the units for the width of the SVG images in the pattern. More... | |
QgsStringMap | properties () const override |
Should be reimplemented by subclasses to return a string map that contains the configuration information for the symbol layer. More... | |
void | setMapUnitScale (const QgsMapUnitScale &scale) override |
void | setOutputUnit (QgsUnitTypes::RenderUnit unit) override |
Sets the units to use for sizes and widths within the symbol layer. More... | |
void | setPatternWidth (double width) |
void | setPatternWidthMapUnitScale (const QgsMapUnitScale &scale) |
void | setPatternWidthUnit (QgsUnitTypes::RenderUnit unit) |
Sets the units for the width of the SVG images in the pattern. More... | |
void | setSvgFilePath (const QString &svgPath) |
void | setSvgFillColor (const QColor &c) |
void | setSvgStrokeColor (const QColor &c) |
void | setSvgStrokeWidth (double w) |
void | setSvgStrokeWidthMapUnitScale (const QgsMapUnitScale &scale) |
void | setSvgStrokeWidthUnit (QgsUnitTypes::RenderUnit unit) |
Sets the units for the stroke width. More... | |
void | startRender (QgsSymbolRenderContext &context) override |
void | stopRender (QgsSymbolRenderContext &context) override |
QString | svgFilePath () const |
QColor | svgFillColor () const |
QColor | svgStrokeColor () const |
double | svgStrokeWidth () const |
const QgsMapUnitScale & | svgStrokeWidthMapUnitScale () const |
QgsUnitTypes::RenderUnit | svgStrokeWidthUnit () const |
Returns the units for the stroke width. More... | |
void | toSld (QDomDocument &doc, QDomElement &element, const QgsStringMap &props) const override |
Public Member Functions inherited from QgsImageFillSymbolLayer | |
QgsImageFillSymbolLayer () | |
QColor | dxfColor (QgsSymbolRenderContext &context) const override |
get color More... | |
Qt::PenStyle | dxfPenStyle () const override |
get pen style More... | |
double | dxfWidth (const QgsDxfExport &e, QgsSymbolRenderContext &context) const override |
get line width More... | |
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. More... | |
void | renderPolygon (const QPolygonF &points, QList< QPolygonF > *rings, QgsSymbolRenderContext &context) override |
void | setStrokeWidthMapUnitScale (const QgsMapUnitScale &scale) |
void | setStrokeWidthUnit (QgsUnitTypes::RenderUnit unit) |
Sets the units for the symbol's stroke width. More... | |
bool | setSubSymbol (QgsSymbol *symbol) override |
set layer's subsymbol. takes ownership of the passed symbol More... | |
const QgsMapUnitScale & | strokeWidthMapUnitScale () const |
QgsUnitTypes::RenderUnit | strokeWidthUnit () const |
Returns the units for the symbol's stroke width. More... | |
QgsSymbol * | subSymbol () override |
Returns the symbol's sub symbol, if present. More... | |
QSet< QString > | usedAttributes (const QgsRenderContext &context) const override |
Returns the set of attributes referenced by the layer. More... | |
Public Member Functions inherited from QgsFillSymbolLayer | |
double | angle () const |
void | drawPreviewIcon (QgsSymbolRenderContext &context, QSize size) override |
void | setAngle (double angle) |
Public Member Functions inherited from QgsSymbolLayer | |
virtual | ~QgsSymbolLayer () |
virtual QColor | color () const |
The fill color. More... | |
QgsPropertyCollection & | dataDefinedProperties () |
Returns a reference to the symbol layer's property collection, used for data defined overrides. More... | |
const QgsPropertyCollection & | dataDefinedProperties () const |
Returns a reference to the symbol layer's property collection, used for data defined overrides. More... | |
virtual double | dxfAngle (QgsSymbolRenderContext &context) const |
get angle More... | |
virtual QColor | dxfBrushColor (QgsSymbolRenderContext &context) const |
get brush/fill color More... | |
virtual Qt::BrushStyle | dxfBrushStyle () const |
get brush/fill style More... | |
virtual QVector< qreal > | dxfCustomDashPattern (QgsUnitTypes::RenderUnit &unit) const |
get dash pattern More... | |
virtual double | dxfOffset (const QgsDxfExport &e, QgsSymbolRenderContext &context) const |
get offset More... | |
bool | enabled () const |
Returns true if symbol layer is enabled and will be drawn. More... | |
virtual QColor | fillColor () const |
Get fill color. More... | |
virtual bool | isCompatibleWithSymbol (QgsSymbol *symbol) const |
Returns if the layer can be used below the specified symbol. More... | |
bool | isLocked () const |
virtual QString | ogrFeatureStyle (double mmScaleFactor, double mapUnitScaleFactor) const |
QgsPaintEffect * | paintEffect () const |
Returns the current paint effect for the layer. More... | |
virtual void | prepareExpressions (const QgsSymbolRenderContext &context) |
Prepares all data defined property expressions for evaluation. More... | |
int | renderingPass () const |
virtual void | setColor (const QColor &color) |
The fill color. More... | |
void | setDataDefinedProperties (const QgsPropertyCollection &collection) |
Sets the symbol layer's property collection, used for data defined overrides. More... | |
virtual void | setDataDefinedProperty (Property key, const QgsProperty &property) |
Sets a data defined property for the layer. More... | |
void | setEnabled (bool enabled) |
Sets whether symbol layer is enabled and should be drawn. More... | |
virtual void | setFillColor (const QColor &color) |
Set fill color. More... | |
void | setLocked (bool locked) |
void | setPaintEffect (QgsPaintEffect *effect) |
Sets the current paint effect for the layer. More... | |
void | setRenderingPass (int renderingPass) |
virtual void | setStrokeColor (const QColor &color) |
Set stroke color. More... | |
virtual QColor | strokeColor () const |
Get stroke color. More... | |
QgsSymbol::SymbolType | type () const |
virtual bool | writeDxf (QgsDxfExport &e, double mmMapUnitScaleFactor, const QString &layerName, QgsSymbolRenderContext &context, QPointF shift=QPointF(0.0, 0.0)) const |
write as DXF More... | |
Static Public Member Functions | |
static QgsSymbolLayer * | create (const QgsStringMap &properties=QgsStringMap()) |
static QgsSymbolLayer * | createFromSld (QDomElement &element) |
static void | resolvePaths (QgsStringMap &properties, const QgsPathResolver &pathResolver, bool saving) |
Turns relative paths in properties map to absolute when reading and vice versa when writing. More... | |
Static Public Member Functions inherited from QgsSymbolLayer | |
static const QgsPropertiesDefinition & | propertyDefinitions () |
Returns the symbol layer property definitions. More... | |
Protected Member Functions | |
void | applyDataDefinedSettings (QgsSymbolRenderContext &context) override |
Protected Member Functions inherited from QgsFillSymbolLayer | |
QgsFillSymbolLayer (bool locked=false) | |
void | _renderPolygon (QPainter *p, const QPolygonF &points, const QList< QPolygonF > *rings, QgsSymbolRenderContext &context) |
Default method to render polygon. More... | |
Protected Member Functions inherited from QgsSymbolLayer | |
QgsSymbolLayer (QgsSymbol::SymbolType type, bool locked=false) | |
void | copyDataDefinedProperties (QgsSymbolLayer *destLayer) const |
Copies all data defined properties of this layer to another symbol layer. More... | |
void | copyPaintEffect (QgsSymbolLayer *destLayer) const |
Copies paint effect of this layer to another symbol layer. More... | |
void | restoreOldDataDefinedProperties (const QgsStringMap &stringMap) |
Restores older data defined properties from string map. More... | |
A class for svg fill patterns.
The class automatically scales the pattern to the appropriate pixel dimensions of the output device
Definition at line 898 of file qgsfillsymbollayer.h.
QgsSVGFillSymbolLayer::QgsSVGFillSymbolLayer | ( | const QString & | svgFilePath, |
double | width = 20 , |
||
double | rotation = 0.0 |
||
) |
Constructs SVG fill symbol layer with picture from given absolute path to a SVG file.
Definition at line 1705 of file qgsfillsymbollayer.cpp.
QgsSVGFillSymbolLayer::QgsSVGFillSymbolLayer | ( | const QByteArray & | svgData, |
double | width = 20 , |
||
double | rotation = 0.0 |
||
) |
Definition at line 1721 of file qgsfillsymbollayer.cpp.
|
override |
Definition at line 1739 of file qgsfillsymbollayer.cpp.
|
overrideprotectedvirtual |
Reimplemented from QgsImageFillSymbolLayer.
Definition at line 2166 of file qgsfillsymbollayer.cpp.
|
overridevirtual |
Shall be reimplemented by subclasses to create a deep copy of the instance.
Implements QgsSymbolLayer.
Definition at line 2015 of file qgsfillsymbollayer.cpp.
|
static |
Definition at line 1791 of file qgsfillsymbollayer.cpp.
|
static |
Definition at line 2101 of file qgsfillsymbollayer.cpp.
|
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 1905 of file qgsfillsymbollayer.cpp.
|
overridevirtual |
Reimplemented from QgsImageFillSymbolLayer.
Definition at line 1771 of file qgsfillsymbollayer.cpp.
|
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.
Reimplemented from QgsImageFillSymbolLayer.
Definition at line 1753 of file qgsfillsymbollayer.cpp.
|
inline |
Definition at line 933 of file qgsfillsymbollayer.h.
|
inline |
Definition at line 957 of file qgsfillsymbollayer.h.
|
inline |
Returns the units for the width of the SVG images in the pattern.
Definition at line 954 of file qgsfillsymbollayer.h.
|
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.
Implements QgsSymbolLayer.
Definition at line 1985 of file qgsfillsymbollayer.cpp.
|
static |
Turns relative paths in properties map to absolute when reading and vice versa when writing.
Used internally when reading/writing symbols.
Definition at line 1893 of file qgsfillsymbollayer.cpp.
|
overridevirtual |
Reimplemented from QgsImageFillSymbolLayer.
Definition at line 1763 of file qgsfillsymbollayer.cpp.
|
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.
unit | output units |
Reimplemented from QgsImageFillSymbolLayer.
Definition at line 1744 of file qgsfillsymbollayer.cpp.
|
inline |
Definition at line 932 of file qgsfillsymbollayer.h.
|
inline |
Definition at line 956 of file qgsfillsymbollayer.h.
|
inline |
Sets the units for the width of the SVG images in the pattern.
unit | width units |
Definition at line 948 of file qgsfillsymbollayer.h.
void QgsSVGFillSymbolLayer::setSvgFilePath | ( | const QString & | svgPath | ) |
Definition at line 1782 of file qgsfillsymbollayer.cpp.
|
inline |
Definition at line 935 of file qgsfillsymbollayer.h.
|
inline |
Definition at line 938 of file qgsfillsymbollayer.h.
|
inline |
Definition at line 940 of file qgsfillsymbollayer.h.
|
inline |
Definition at line 972 of file qgsfillsymbollayer.h.
|
inline |
Sets the units for the stroke width.
unit | width units |
Definition at line 964 of file qgsfillsymbollayer.h.
|
overridevirtual |
Implements QgsSymbolLayer.
Definition at line 1966 of file qgsfillsymbollayer.cpp.
|
overridevirtual |
Implements QgsSymbolLayer.
Definition at line 1977 of file qgsfillsymbollayer.cpp.
|
inline |
Definition at line 931 of file qgsfillsymbollayer.h.
|
inline |
Definition at line 936 of file qgsfillsymbollayer.h.
|
inline |
Definition at line 939 of file qgsfillsymbollayer.h.
|
inline |
Definition at line 941 of file qgsfillsymbollayer.h.
|
inline |
Definition at line 973 of file qgsfillsymbollayer.h.
|
inline |
Returns the units for the stroke width.
Definition at line 970 of file qgsfillsymbollayer.h.
|
overridevirtual |
Reimplemented from QgsSymbolLayer.
Definition at line 2046 of file qgsfillsymbollayer.cpp.
|
protected |
Width of the pattern (in output units)
Definition at line 983 of file qgsfillsymbollayer.h.
|
protected |
Definition at line 985 of file qgsfillsymbollayer.h.
|
protected |
Definition at line 984 of file qgsfillsymbollayer.h.
|
protected |
SVG data.
Definition at line 988 of file qgsfillsymbollayer.h.
|
protected |
Path to the svg file (or empty if constructed directly from data)
Definition at line 990 of file qgsfillsymbollayer.h.
|
protected |
SVG pattern image.
Definition at line 994 of file qgsfillsymbollayer.h.
|
protected |
Definition at line 998 of file qgsfillsymbollayer.h.
|
protected |
Definition at line 999 of file qgsfillsymbollayer.h.
|
protected |
Definition at line 1001 of file qgsfillsymbollayer.h.
|
protected |
Definition at line 1000 of file qgsfillsymbollayer.h.
|
protected |
SVG view box (to keep the aspect ratio.
Definition at line 992 of file qgsfillsymbollayer.h.