QGIS API Documentation
3.0.2-Girona (307d082)
|
#include <qgssymbol.h>
Public Member Functions | |
QgsLineSymbol (const QgsSymbolLayerList &layers=QgsSymbolLayerList()) | |
QgsLineSymbol * | clone () const override |
Get a deep copy of this symbol. More... | |
QgsProperty | dataDefinedWidth () const |
Returns data defined width for whole symbol (including all symbol layers). More... | |
void | renderPolyline (const QPolygonF &points, const QgsFeature *f, QgsRenderContext &context, int layer=-1, bool selected=false) |
void | setDataDefinedWidth (const QgsProperty &property) |
Set data defined width for whole symbol (including all symbol layers). More... | |
void | setWidth (double width) |
double | width () const |
Public Member Functions inherited from QgsSymbol | |
virtual | ~QgsSymbol () |
bool | appendSymbolLayer (QgsSymbolLayer *layer) |
Append symbol layer at the end of the list Ownership will be transferred. More... | |
QImage | asImage (QSize size, QgsRenderContext *customContext=nullptr) |
Generate symbol as image. More... | |
QImage | bigSymbolPreviewImage (QgsExpressionContext *expressionContext=nullptr) |
Returns a large (roughly 100x100 pixel) preview image for the symbol. More... | |
bool | changeSymbolLayer (int index, QgsSymbolLayer *layer) |
delete layer at specified index and set a new one More... | |
bool | clipFeaturesToExtent () const |
Returns whether features drawn by the symbol will be clipped to the render context's extent. More... | |
QColor | color () const |
bool | deleteSymbolLayer (int index) |
delete symbol layer at specified index More... | |
void | drawPreviewIcon (QPainter *painter, QSize size, QgsRenderContext *customContext=nullptr) |
Draw icon of the symbol that occupyies area given by size using the painter. More... | |
QString | dump () const |
void | exportImage (const QString &path, const QString &format, QSize size) |
export symbol as image format. PNG and SVG supported More... | |
bool | hasDataDefinedProperties () const |
Returns whether the symbol utilizes any data defined properties. More... | |
bool | insertSymbolLayer (int index, QgsSymbolLayer *layer) |
Insert symbol layer to specified index Ownership will be transferred. More... | |
const QgsVectorLayer * | layer () const |
QgsMapUnitScale | mapUnitScale () const |
qreal | opacity () const |
Returns the opacity for the symbol. More... | |
QgsUnitTypes::RenderUnit | outputUnit () const |
Returns the units to use for sizes and widths within the symbol. More... | |
void | renderFeature (const QgsFeature &feature, QgsRenderContext &context, int layer=-1, bool selected=false, bool drawVertexMarker=false, int currentVertexMarkerType=0, int currentVertexMarkerSize=0) |
Render a feature. More... | |
RenderHints | renderHints () const |
Returns the rendering hint flags for the symbol. More... | |
void | setClipFeaturesToExtent (bool clipFeaturesToExtent) |
Sets whether features drawn by the symbol should be clipped to the render context's extent. More... | |
void | setColor (const QColor &color) |
void | setLayer (const QgsVectorLayer *layer) |
void | setMapUnitScale (const QgsMapUnitScale &scale) |
void | setOpacity (qreal opacity) |
Sets the opacity for the symbol. More... | |
void | setOutputUnit (QgsUnitTypes::RenderUnit unit) |
Sets the units to use for sizes and widths within the symbol. More... | |
void | setRenderHints (RenderHints hints) |
Sets rendering hint flags for the symbol. More... | |
void | startRender (QgsRenderContext &context, const QgsFields &fields=QgsFields()) |
Begins the rendering process for the symbol. More... | |
void | stopRender (QgsRenderContext &context) |
Ends the rendering process. More... | |
QgsSymbolLayer * | symbolLayer (int layer) |
Returns a specific symbol layers contained in the symbol. More... | |
int | symbolLayerCount () const |
Returns total number of symbol layers contained in the symbol. More... | |
QgsSymbolLayerList | symbolLayers () |
Returns list of symbol layers contained in the symbol. More... | |
QgsSymbolRenderContext * | symbolRenderContext () |
Returns the symbol render context. More... | |
QgsSymbolLayer * | takeSymbolLayer (int index) |
Remove symbol layer from the list and return pointer to it. More... | |
void | toSld (QDomDocument &doc, QDomElement &element, QgsStringMap props) const |
SymbolType | type () const |
QSet< QString > | usedAttributes (const QgsRenderContext &context) const |
Return a list of attributes required to render this feature. More... | |
Static Public Member Functions | |
static QgsLineSymbol * | createSimple (const QgsStringMap &properties) |
Create a line symbol with one symbol layer: SimpleLine with specified properties. More... | |
Static Public Member Functions inherited from QgsSymbol | |
static QgsSymbol * | defaultSymbol (QgsWkbTypes::GeometryType geomType) |
return new default symbol for specified geometry type More... | |
Additional Inherited Members | |
Public Types inherited from QgsSymbol | |
enum | RenderHint { DynamicRotation = 2 } |
Flags controlling behavior of symbols during rendering. More... | |
enum | ScaleMethod { ScaleArea, ScaleDiameter } |
Scale method. More... | |
enum | SymbolType { Marker, Line, Fill, Hybrid } |
Type of the symbol. More... | |
Protected Member Functions inherited from QgsSymbol | |
QgsSymbol (SymbolType type, const QgsSymbolLayerList &layers) | |
QgsSymbolLayerList | cloneLayers () const |
Retrieve a cloned list of all layers that make up this symbol. More... | |
void | renderUsingLayer (QgsSymbolLayer *layer, QgsSymbolRenderContext &context) |
Renders a context using a particular symbol layer without passing in a geometry. More... | |
void | renderVertexMarker (QPointF pt, QgsRenderContext &context, int currentVertexMarkerType, int currentVertexMarkerSize) |
Render editing vertex marker at specified point. More... | |
Static Protected Member Functions inherited from QgsSymbol | |
static QPolygonF | _getLineString (QgsRenderContext &context, const QgsCurve &curve, bool clipToExtent=true) |
Creates a line string in screen coordinates from a QgsCurve in map coordinates. More... | |
static QPointF | _getPoint (QgsRenderContext &context, const QgsPoint &point) |
Creates a point in screen coordinates from a QgsPoint in map coordinates. More... | |
static void | _getPolygon (QPolygonF &pts, QList< QPolygonF > &holes, QgsRenderContext &context, const QgsPolygon &polygon, bool clipToExtent=true) |
Creates a polygon in screen coordinates from a QgsPolygonXYin map coordinates. More... | |
static QPolygonF | _getPolygonRing (QgsRenderContext &context, const QgsCurve &curve, bool clipToExtent) |
Creates a polygon ring in screen coordinates from a QgsCurve in map coordinates. More... | |
Protected Attributes inherited from QgsSymbol | |
bool | mClipFeaturesToExtent = true |
const QgsVectorLayer * | mLayer = nullptr |
QgsSymbolLayerList | mLayers |
qreal | mOpacity = 1.0 |
Symbol opacity (in the range 0 - 1) More... | |
RenderHints | mRenderHints = nullptr |
SymbolType | mType |
Definition at line 772 of file qgssymbol.h.
QgsLineSymbol::QgsLineSymbol | ( | const QgsSymbolLayerList & | layers = QgsSymbolLayerList() | ) |
Definition at line 1549 of file qgssymbol.cpp.
|
overridevirtual |
Get a deep copy of this symbol.
Needs to be reimplemented by subclasses. Ownership is transferred to the caller.
Implements QgsSymbol.
Definition at line 1753 of file qgssymbol.cpp.
|
static |
Create a line symbol with one symbol layer: SimpleLine with specified properties.
This is a convenience method for easier creation of line symbols.
Definition at line 1103 of file qgssymbol.cpp.
QgsProperty QgsLineSymbol::dataDefinedWidth | ( | ) | const |
Returns data defined width for whole symbol (including all symbol layers).
Definition at line 1636 of file qgssymbol.cpp.
void QgsLineSymbol::renderPolyline | ( | const QPolygonF & | points, |
const QgsFeature * | f, | ||
QgsRenderContext & | context, | ||
int | layer = -1 , |
||
bool | selected = false |
||
) |
Definition at line 1689 of file qgssymbol.cpp.
void QgsLineSymbol::setDataDefinedWidth | ( | const QgsProperty & | property | ) |
Set data defined width for whole symbol (including all symbol layers).
Definition at line 1601 of file qgssymbol.cpp.
void QgsLineSymbol::setWidth | ( | double | width | ) |
Definition at line 1556 of file qgssymbol.cpp.
double QgsLineSymbol::width | ( | ) | const |
Definition at line 1582 of file qgssymbol.cpp.