QGIS API Documentation
2.18.21-Las Palmas (9fba24a)
|
Line symbol layer used for representing lines as arrows. More...
#include <qgsarrowsymbollayer.h>
Public Types | |
enum | ArrowType { ArrowPlain, ArrowLeftHalf, ArrowRightHalf } |
Possible arrow types. More... | |
enum | HeadType { HeadSingle, HeadReversed, HeadDouble } |
Possible head types. More... | |
Public Member Functions | |
QgsArrowSymbolLayer () | |
Simple constructor. More... | |
double | arrowStartWidth () const |
Get current arrow start width. More... | |
QgsSymbolV2::OutputUnit | arrowStartWidthUnit () const |
Get the unit for the arrow start width. More... | |
QgsMapUnitScale | arrowStartWidthUnitScale () const |
Get the scale for the arrow start width. More... | |
ArrowType | arrowType () const |
Get the current arrow type. More... | |
double | arrowWidth () const |
Get current arrow width. More... | |
QgsSymbolV2::OutputUnit | arrowWidthUnit () const |
Get the unit for the arrow width. More... | |
QgsMapUnitScale | arrowWidthUnitScale () const |
Get the scale for the arrow width. More... | |
virtual QgsArrowSymbolLayer * | clone () const override |
Virtual constructor. More... | |
virtual QColor | color () const override |
The fill color. More... | |
double | headLength () const |
Get the current arrow head length. More... | |
QgsSymbolV2::OutputUnit | headLengthUnit () const |
Get the unit for the head length. More... | |
QgsMapUnitScale | headLengthUnitScale () const |
Get the scale for the head length. More... | |
double | headThickness () const |
Get the current arrow head height. More... | |
QgsSymbolV2::OutputUnit | headThicknessUnit () const |
Get the unit for the head height. More... | |
QgsMapUnitScale | headThicknessUnitScale () const |
Get the scale for the head height. More... | |
HeadType | headType () const |
Get the current head type. More... | |
bool | isCurved () const |
Return whether it is a curved arrow or a straight one. More... | |
bool | isRepeated () const |
Return whether the arrow is repeated along the line or not. More... | |
QString | layerType () const override |
Returns a string that represents this layer type. 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 | renderPolyline (const QPolygonF &points, QgsSymbolV2RenderContext &context) override |
Main drawing method. More... | |
void | setArrowStartWidth (double width) |
Set the arrow start width. More... | |
void | setArrowStartWidthUnit (QgsSymbolV2::OutputUnit unit) |
Set the unit for the arrow start width. More... | |
void | setArrowStartWidthUnitScale (const QgsMapUnitScale &scale) |
Set the scale for the arrow start width. More... | |
void | setArrowType (ArrowType type) |
Set the arrow type. More... | |
void | setArrowWidth (double width) |
Set the arrow width. More... | |
void | setArrowWidthUnit (QgsSymbolV2::OutputUnit unit) |
Set the unit for the arrow width. More... | |
void | setArrowWidthUnitScale (const QgsMapUnitScale &scale) |
Set the scale for the arrow width. More... | |
void | setColor (const QColor &c) override |
The fill color. More... | |
void | setHeadLength (double length) |
Set the arrow head length. More... | |
void | setHeadLengthUnit (QgsSymbolV2::OutputUnit unit) |
Set the unit for the head length. More... | |
void | setHeadLengthUnitScale (const QgsMapUnitScale &scale) |
Set the scale for the head length. More... | |
void | setHeadThickness (double thickness) |
Set the arrow head height. More... | |
void | setHeadThicknessUnit (QgsSymbolV2::OutputUnit unit) |
Set the unit for the head height. More... | |
void | setHeadThicknessUnitScale (const QgsMapUnitScale &scale) |
Set the scale for the head height. More... | |
void | setHeadType (HeadType type) |
Set the head type. More... | |
void | setIsCurved (bool isCurved) |
Set whether it is a curved arrow or a straight one. More... | |
void | setIsRepeated (bool isRepeated) |
Set whether the arrow is repeated along the line. More... | |
virtual bool | setSubSymbol (QgsSymbolV2 *symbol) override |
Set the sub symbol used for filling. More... | |
void | startRender (QgsSymbolV2RenderContext &context) override |
Prepare the rendering. More... | |
void | stopRender (QgsSymbolV2RenderContext &context) override |
End of the rendering. More... | |
virtual QgsSymbolV2 * | subSymbol () override |
Get the sub symbol used for filling. More... | |
virtual QSet< QString > | usedAttributes () const override |
Return a list of attributes required to render this feature. More... | |
Public Member Functions inherited from QgsLineSymbolLayerV2 | |
void | drawPreviewIcon (QgsSymbolV2RenderContext &context, QSize size) override |
virtual double | dxfWidth (const QgsDxfExport &e, QgsSymbolV2RenderContext &context) const override |
get line width More... | |
QgsMapUnitScale | mapUnitScale () const override |
double | offset () const |
const QgsMapUnitScale & | offsetMapUnitScale () const |
QgsSymbolV2::OutputUnit | offsetUnit () const |
QgsSymbolV2::OutputUnit | outputUnit () const override |
virtual void | renderPolygonOutline (const QPolygonF &points, QList< QPolygonF > *rings, QgsSymbolV2RenderContext &context) |
void | setMapUnitScale (const QgsMapUnitScale &scale) override |
void | setOffset (double offset) |
void | setOffsetMapUnitScale (const QgsMapUnitScale &scale) |
void | setOffsetUnit (QgsSymbolV2::OutputUnit unit) |
void | setOutputUnit (QgsSymbolV2::OutputUnit unit) override |
virtual void | setWidth (double width) |
void | setWidthMapUnitScale (const QgsMapUnitScale &scale) |
void | setWidthUnit (QgsSymbolV2::OutputUnit unit) |
virtual double | width () const |
const QgsMapUnitScale & | widthMapUnitScale () const |
QgsSymbolV2::OutputUnit | widthUnit () const |
Public Member Functions inherited from QgsSymbolLayerV2 | |
virtual | ~QgsSymbolLayerV2 () |
virtual Q_DECL_DEPRECATED const QgsExpression * | dataDefinedProperty (const QString &property) const |
Returns a data defined expression for a property, if set. More... | |
virtual Q_DECL_DEPRECATED QString | dataDefinedPropertyString (const QString &property) const |
Returns a data defined expression for a property, if set. More... | |
virtual double | dxfAngle (QgsSymbolV2RenderContext &context) const |
get angle More... | |
virtual QColor | dxfBrushColor (QgsSymbolV2RenderContext &context) const |
get brush/fill color More... | |
virtual Qt::BrushStyle | dxfBrushStyle () const |
get brush/fill style More... | |
virtual QColor | dxfColor (QgsSymbolV2RenderContext &context) const |
get color More... | |
virtual QVector< qreal > | dxfCustomDashPattern (QgsSymbolV2::OutputUnit &unit) const |
get dash pattern More... | |
virtual double | dxfOffset (const QgsDxfExport &e, QgsSymbolV2RenderContext &context) const |
get offset More... | |
virtual Qt::PenStyle | dxfPenStyle () const |
get pen style More... | |
virtual double | estimateMaxBleed () const |
Returns the estimated maximum distance which the layer style will bleed outside the drawn shape. More... | |
virtual Q_DECL_DEPRECATED QVariant | evaluateDataDefinedProperty (const QString &property, const QgsFeature *feature, const QVariant &defaultVal=QVariant(), bool *ok=nullptr) const |
Evaluates the matching data defined property and returns the calculated value. More... | |
virtual QVariant | evaluateDataDefinedProperty (const QString &property, const QgsSymbolV2RenderContext &context, const QVariant &defaultVal=QVariant(), bool *ok=nullptr) const |
Evaluates the matching data defined property and returns the calculated value. More... | |
virtual QColor | fillColor () const |
Get fill color. More... | |
virtual QgsDataDefined * | getDataDefinedProperty (const QString &property) const |
Returns the data defined property corresponding to the specified property key. More... | |
virtual bool | hasDataDefinedProperties () const |
Checks whether the layer has any associated data defined properties. More... | |
virtual bool | hasDataDefinedProperty (const QString &property) const |
Checks whether the layer has a matching data defined property and if that property is currently actived. More... | |
virtual bool | isCompatibleWithSymbol (QgsSymbolV2 *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 |
virtual QColor | outlineColor () const |
Get outline color. More... | |
QgsPaintEffect * | paintEffect () const |
Returns the current paint effect for the layer. More... | |
virtual void | removeDataDefinedProperties () |
Removes all data defined properties from the layer and deletes associated objects. More... | |
virtual void | removeDataDefinedProperty (const QString &property) |
Removes a data defined property from the layer. More... | |
int | renderingPass () const |
virtual Q_DECL_DEPRECATED void | setDataDefinedProperty (const QString &property, const QString &expressionString) |
Sets a data defined expression for a property. More... | |
virtual void | setDataDefinedProperty (const QString &property, QgsDataDefined *dataDefined) |
Sets a data defined property for the layer. More... | |
virtual void | setFillColor (const QColor &color) |
Set fill color. More... | |
void | setLocked (bool locked) |
virtual void | setOutlineColor (const QColor &color) |
Set outline color. More... | |
void | setPaintEffect (QgsPaintEffect *effect) |
Sets the current paint effect for the layer. More... | |
void | setRenderingPass (int renderingPass) |
virtual void | toSld (QDomDocument &doc, QDomElement &element, const QgsStringMap &props) const |
Writes the SLD element following the SLD v1.1 specs. More... | |
QgsSymbolV2::SymbolType | type () const |
virtual bool | writeDxf (QgsDxfExport &e, double mmMapUnitScaleFactor, const QString &layerName, QgsSymbolV2RenderContext &context, QPointF shift=QPointF(0.0, 0.0)) const |
write as DXF More... | |
Static Public Member Functions | |
static QgsSymbolLayerV2 * | create (const QgsStringMap &properties=QgsStringMap()) |
Create a new QgsArrowSymbolLayer. More... | |
Line symbol layer used for representing lines as arrows.
Definition at line 28 of file qgsarrowsymbollayer.h.
Possible arrow types.
Enumerator | |
---|---|
ArrowPlain | |
ArrowLeftHalf | |
ArrowRightHalf |
Definition at line 131 of file qgsarrowsymbollayer.h.
Possible head types.
Enumerator | |
---|---|
HeadSingle | |
HeadReversed | |
HeadDouble |
Definition at line 118 of file qgsarrowsymbollayer.h.
QgsArrowSymbolLayer::QgsArrowSymbolLayer | ( | ) |
Simple constructor.
Definition at line 18 of file qgsarrowsymbollayer.cpp.
|
inline |
Get current arrow start width.
Only meaningful for single headed arrows
Definition at line 69 of file qgsarrowsymbollayer.h.
|
inline |
Get the unit for the arrow start width.
Definition at line 73 of file qgsarrowsymbollayer.h.
|
inline |
Get the scale for the arrow start width.
Definition at line 77 of file qgsarrowsymbollayer.h.
|
inline |
Get the current arrow type.
Definition at line 139 of file qgsarrowsymbollayer.h.
|
inline |
Get current arrow width.
Definition at line 56 of file qgsarrowsymbollayer.h.
|
inline |
Get the unit for the arrow width.
Definition at line 60 of file qgsarrowsymbollayer.h.
|
inline |
Get the scale for the arrow width.
Definition at line 64 of file qgsarrowsymbollayer.h.
|
overridevirtual |
Virtual constructor.
Implements QgsSymbolLayerV2.
Definition at line 126 of file qgsarrowsymbollayer.cpp.
|
overridevirtual |
The fill color.
Reimplemented from QgsSymbolLayerV2.
Definition at line 805 of file qgsarrowsymbollayer.cpp.
|
static |
Create a new QgsArrowSymbolLayer.
properties | A property map to deserialize saved information from properties() |
Definition at line 58 of file qgsarrowsymbollayer.cpp.
|
inline |
Get the current arrow head length.
Definition at line 82 of file qgsarrowsymbollayer.h.
|
inline |
Get the unit for the head length.
Definition at line 86 of file qgsarrowsymbollayer.h.
|
inline |
Get the scale for the head length.
Definition at line 90 of file qgsarrowsymbollayer.h.
|
inline |
Get the current arrow head height.
Definition at line 95 of file qgsarrowsymbollayer.h.
|
inline |
Get the unit for the head height.
Definition at line 99 of file qgsarrowsymbollayer.h.
|
inline |
Get the scale for the head height.
Definition at line 103 of file qgsarrowsymbollayer.h.
|
inline |
Get the current head type.
Definition at line 126 of file qgsarrowsymbollayer.h.
|
inline |
Return whether it is a curved arrow or a straight one.
Definition at line 108 of file qgsarrowsymbollayer.h.
|
inline |
Return whether the arrow is repeated along the line or not.
Definition at line 113 of file qgsarrowsymbollayer.h.
|
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 QgsSymbolLayerV2.
Definition at line 135 of file qgsarrowsymbollayer.cpp.
|
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 QgsSymbolLayerV2.
Definition at line 140 of file qgsarrowsymbollayer.cpp.
|
overridevirtual |
Main drawing method.
Implements QgsLineSymbolLayerV2.
Definition at line 684 of file qgsarrowsymbollayer.cpp.
|
inline |
Set the arrow start width.
Definition at line 71 of file qgsarrowsymbollayer.h.
|
inline |
Set the unit for the arrow start width.
Definition at line 75 of file qgsarrowsymbollayer.h.
|
inline |
Set the scale for the arrow start width.
Definition at line 79 of file qgsarrowsymbollayer.h.
|
inline |
Set the arrow type.
Definition at line 141 of file qgsarrowsymbollayer.h.
|
inline |
Set the arrow width.
Definition at line 58 of file qgsarrowsymbollayer.h.
|
inline |
Set the unit for the arrow width.
Definition at line 62 of file qgsarrowsymbollayer.h.
|
inline |
Set the scale for the arrow width.
Definition at line 66 of file qgsarrowsymbollayer.h.
|
overridevirtual |
The fill color.
Reimplemented from QgsSymbolLayerV2.
Definition at line 797 of file qgsarrowsymbollayer.cpp.
|
inline |
Set the arrow head length.
Definition at line 84 of file qgsarrowsymbollayer.h.
|
inline |
Set the unit for the head length.
Definition at line 88 of file qgsarrowsymbollayer.h.
|
inline |
Set the scale for the head length.
Definition at line 92 of file qgsarrowsymbollayer.h.
|
inline |
Set the arrow head height.
Definition at line 97 of file qgsarrowsymbollayer.h.
|
inline |
Set the unit for the head height.
Definition at line 101 of file qgsarrowsymbollayer.h.
|
inline |
Set the scale for the head height.
Definition at line 105 of file qgsarrowsymbollayer.h.
|
inline |
Set the head type.
Definition at line 128 of file qgsarrowsymbollayer.h.
|
inline |
Set whether it is a curved arrow or a straight one.
Definition at line 110 of file qgsarrowsymbollayer.h.
|
inline |
Set whether the arrow is repeated along the line.
Definition at line 115 of file qgsarrowsymbollayer.h.
|
overridevirtual |
Set the sub symbol used for filling.
Takes ownership.
Reimplemented from QgsSymbolLayerV2.
Definition at line 47 of file qgsarrowsymbollayer.cpp.
|
overridevirtual |
Prepare the rendering.
Implements QgsSymbolLayerV2.
Definition at line 184 of file qgsarrowsymbollayer.cpp.
|
overridevirtual |
End of the rendering.
Implements QgsSymbolLayerV2.
Definition at line 198 of file qgsarrowsymbollayer.cpp.
|
inlineoverridevirtual |
Get the sub symbol used for filling.
Reimplemented from QgsSymbolLayerV2.
Definition at line 47 of file qgsarrowsymbollayer.h.
Return a list of attributes required to render this feature.
Reimplemented from QgsSymbolLayerV2.
Definition at line 174 of file qgsarrowsymbollayer.cpp.