QGIS API Documentation  2.9.0-Master
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
QgsMarkerLineSymbolLayerV2 Class Reference

#include <qgslinesymbollayerv2.h>

Inheritance diagram for QgsMarkerLineSymbolLayerV2:
Inheritance graph
[legend]

Public Types

enum  Placement {
  Interval, Vertex, LastVertex, FirstVertex,
  CentralPoint
}
 

Public Member Functions

 QgsMarkerLineSymbolLayerV2 (bool rotateMarker=DEFAULT_MARKERLINE_ROTATE, double interval=DEFAULT_MARKERLINE_INTERVAL)
 
 ~QgsMarkerLineSymbolLayerV2 ()
 
QgsSymbolLayerV2clone () const override
 
double estimateMaxBleed () const override
 Returns the estimated maximum distance which the layer style will bleed outside the drawn shape. More...
 
double interval () const
 
const QgsMapUnitScaleintervalMapUnitScale () const
 
QgsSymbolV2::OutputUnit intervalUnit () const
 
QString layerType () const override
 
QgsMapUnitScale mapUnitScale () const override
 
double offsetAlongLine () const
 Returns the offset along the line for the marker placement. More...
 
const QgsMapUnitScaleoffsetAlongLineMapUnitScale () const
 Returns the map unit scale used for calculating the offset in map units along line for markers. More...
 
QgsSymbolV2::OutputUnit offsetAlongLineUnit () const
 Returns the unit used for calculating the offset along line for markers. More...
 
QgsSymbolV2::OutputUnit outputUnit () const override
 
Placement placement () const
 
QgsStringMap properties () const override
 
void renderPolygonOutline (const QPolygonF &points, QList< QPolygonF > *rings, QgsSymbolV2RenderContext &context) override
 
void renderPolyline (const QPolygonF &points, QgsSymbolV2RenderContext &context) override
 
bool rotateMarker () const
 
void setColor (const QColor &color) override
 
void setInterval (double interval)
 
void setIntervalMapUnitScale (const QgsMapUnitScale &scale)
 
void setIntervalUnit (QgsSymbolV2::OutputUnit unit)
 
void setMapUnitScale (const QgsMapUnitScale &scale) override
 
void setOffsetAlongLine (double offsetAlongLine)
 Sets the the offset along the line for the marker placement. More...
 
void setOffsetAlongLineMapUnitScale (const QgsMapUnitScale &scale)
 Sets the map unit scale used for calculating the offset in map units along line for markers. More...
 
void setOffsetAlongLineUnit (QgsSymbolV2::OutputUnit unit)
 Sets the unit used for calculating the offset along line for markers. More...
 
void setOutputUnit (QgsSymbolV2::OutputUnit unit) override
 
void setPlacement (Placement p)
 
void setRotateMarker (bool rotate)
 
bool setSubSymbol (QgsSymbolV2 *symbol) override
 
virtual void setWidth (double width) override
 
void startRender (QgsSymbolV2RenderContext &context) override
 
void stopRender (QgsSymbolV2RenderContext &context) override
 
QgsSymbolV2subSymbol () override
 
void toSld (QDomDocument &doc, QDomElement &element, QgsStringMap props) const override
 
virtual double width () const override
 
- Public Member Functions inherited from QgsLineSymbolLayerV2
void drawPreviewIcon (QgsSymbolV2RenderContext &context, QSize size) override
 
virtual double dxfWidth (const QgsDxfExport &e, const QgsSymbolV2RenderContext &context) const override
 
QgsMapUnitScale mapUnitScale () const override
 
double offset () const
 
const QgsMapUnitScaleoffsetMapUnitScale () const
 
QgsSymbolV2::OutputUnit offsetUnit () const
 
QgsSymbolV2::OutputUnit outputUnit () const override
 
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
 
void setWidthMapUnitScale (const QgsMapUnitScale &scale)
 
void setWidthUnit (QgsSymbolV2::OutputUnit unit)
 
const QgsMapUnitScalewidthMapUnitScale () const
 
QgsSymbolV2::OutputUnit widthUnit () const
 
- Public Member Functions inherited from QgsSymbolLayerV2
virtual ~QgsSymbolLayerV2 ()
 
virtual QColor color () const
 
virtual const QgsExpressiondataDefinedProperty (const QString &property) const
 
virtual QString dataDefinedPropertyString (const QString &property) const
 
virtual QColor dxfBrushColor (const QgsSymbolV2RenderContext &context) const
 
virtual Qt::BrushStyle dxfBrushStyle () const
 
virtual QColor dxfColor (const QgsSymbolV2RenderContext &context) const
 
virtual QVector< qreal > dxfCustomDashPattern (QgsSymbolV2::OutputUnit &unit) const
 
virtual double dxfOffset (const QgsDxfExport &e, const QgsSymbolV2RenderContext &context) const
 
virtual Qt::PenStyle dxfPenStyle () const
 
virtual QColor fillColor () const
 Get fill color. More...
 
bool hasDataDefinedProperties () const
 
bool isLocked () const
 
virtual QString ogrFeatureStyle (double mmScaleFactor, double mapUnitScaleFactor) const
 
virtual QColor outlineColor () const
 Get outline color. More...
 
QgsPaintEffectpaintEffect () const
 Returns the current paint effect for the layer. More...
 
virtual void removeDataDefinedProperties ()
 
virtual void removeDataDefinedProperty (const QString &property)
 
int renderingPass () const
 
virtual void setDataDefinedProperty (const QString &property, const QString &expressionString)
 
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)
 
QgsSymbolV2::SymbolType type () const
 
virtual QSet< QString > usedAttributes () const
 
virtual bool writeDxf (QgsDxfExport &e, double mmMapUnitScaleFactor, const QString &layerName, const QgsSymbolV2RenderContext *context, const QgsFeature *f, const QPointF &shift=QPointF(0.0, 0.0)) const
 

Static Public Member Functions

static QgsSymbolLayerV2create (const QgsStringMap &properties=QgsStringMap())
 
static QgsSymbolLayerV2createFromSld (QDomElement &element)
 

Protected Member Functions

double markerAngle (const QPolygonF &points, bool isRing, int vertex)
 
void renderPolylineCentral (const QPolygonF &points, QgsSymbolV2RenderContext &context)
 
void renderPolylineInterval (const QPolygonF &points, QgsSymbolV2RenderContext &context)
 
void renderPolylineVertex (const QPolygonF &points, QgsSymbolV2RenderContext &context, Placement placement=Vertex)
 
- Protected Member Functions inherited from QgsLineSymbolLayerV2
 QgsLineSymbolLayerV2 (bool locked=false)
 
- Protected Member Functions inherited from QgsSymbolLayerV2
 QgsSymbolLayerV2 (QgsSymbolV2::SymbolType type, bool locked=false)
 
void copyDataDefinedProperties (QgsSymbolLayerV2 *destLayer) const
 Copies data defined properties of this layer to another symbol layer. More...
 
void copyPaintEffect (QgsSymbolLayerV2 *destLayer) const
 Copies paint effect of this layer to another symbol layer. More...
 
virtual QgsExpressionexpression (const QString &property) const
 
virtual void prepareExpressions (const QgsFields *fields, double scale=-1.0)
 
void saveDataDefinedProperties (QgsStringMap &stringMap) const
 Saves data defined properties to string map. More...
 

Protected Attributes

double mInterval
 
QgsMapUnitScale mIntervalMapUnitScale
 
QgsSymbolV2::OutputUnit mIntervalUnit
 
QgsMarkerSymbolV2mMarker
 
double mOffsetAlongLine
 
QgsMapUnitScale mOffsetAlongLineMapUnitScale
 
QgsSymbolV2::OutputUnit mOffsetAlongLineUnit
 
Placement mPlacement
 
bool mRotateMarker
 
- Protected Attributes inherited from QgsLineSymbolLayerV2
double mOffset
 
QgsMapUnitScale mOffsetMapUnitScale
 
QgsSymbolV2::OutputUnit mOffsetUnit
 
double mWidth
 
QgsMapUnitScale mWidthMapUnitScale
 
QgsSymbolV2::OutputUnit mWidthUnit
 
- Protected Attributes inherited from QgsSymbolLayerV2
QColor mColor
 
QMap< QString, QgsExpression * > mDataDefinedProperties
 
bool mLocked
 
QgsPaintEffectmPaintEffect
 
int mRenderingPass
 
QgsSymbolV2::SymbolType mType
 

Additional Inherited Members

- Static Protected Attributes inherited from QgsSymbolLayerV2
static const bool selectFillBorder = false
 
static const bool selectFillStyle = false
 
static const bool selectionIsOpaque = true
 

Detailed Description

Definition at line 137 of file qgslinesymbollayerv2.h.

Member Enumeration Documentation

Enumerator
Interval 
Vertex 
LastVertex 
FirstVertex 
CentralPoint 

Definition at line 145 of file qgslinesymbollayerv2.h.

Constructor & Destructor Documentation

QgsMarkerLineSymbolLayerV2::QgsMarkerLineSymbolLayerV2 ( bool  rotateMarker = DEFAULT_MARKERLINE_ROTATE,
double  interval = DEFAULT_MARKERLINE_INTERVAL 
)

Definition at line 688 of file qgslinesymbollayerv2.cpp.

QgsMarkerLineSymbolLayerV2::~QgsMarkerLineSymbolLayerV2 ( )

Definition at line 701 of file qgslinesymbollayerv2.cpp.

Member Function Documentation

QgsSymbolLayerV2 * QgsMarkerLineSymbolLayerV2::clone ( ) const
overridevirtual

Implements QgsSymbolLayerV2.

Definition at line 1287 of file qgslinesymbollayerv2.cpp.

QgsSymbolLayerV2 * QgsMarkerLineSymbolLayerV2::create ( const QgsStringMap properties = QgsStringMap())
static

Definition at line 706 of file qgslinesymbollayerv2.cpp.

QgsSymbolLayerV2 * QgsMarkerLineSymbolLayerV2::createFromSld ( QDomElement &  element)
static

Definition at line 1380 of file qgslinesymbollayerv2.cpp.

double QgsMarkerLineSymbolLayerV2::estimateMaxBleed ( ) const
overridevirtual

Returns the estimated maximum distance which the layer style will bleed outside the drawn shape.

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

Reimplemented from QgsSymbolLayerV2.

Definition at line 1500 of file qgslinesymbollayerv2.cpp.

double QgsMarkerLineSymbolLayerV2::interval ( ) const
inline

Definition at line 192 of file qgslinesymbollayerv2.h.

const QgsMapUnitScale& QgsMarkerLineSymbolLayerV2::intervalMapUnitScale ( ) const
inline

Definition at line 251 of file qgslinesymbollayerv2.h.

QgsSymbolV2::OutputUnit QgsMarkerLineSymbolLayerV2::intervalUnit ( ) const
inline

Definition at line 248 of file qgslinesymbollayerv2.h.

QString QgsMarkerLineSymbolLayerV2::layerType ( ) const
overridevirtual

Implements QgsSymbolLayerV2.

Definition at line 787 of file qgslinesymbollayerv2.cpp.

QgsMapUnitScale QgsMarkerLineSymbolLayerV2::mapUnitScale ( ) const
overridevirtual

Reimplemented from QgsSymbolLayerV2.

Definition at line 1489 of file qgslinesymbollayerv2.cpp.

double QgsMarkerLineSymbolLayerV2::markerAngle ( const QPolygonF &  points,
bool  isRing,
int  vertex 
)
protected

Definition at line 1057 of file qgslinesymbollayerv2.cpp.

double QgsMarkerLineSymbolLayerV2::offsetAlongLine ( ) const
inline

Returns the offset along the line for the marker placement.

For Interval placements, this is the distance between the start of the line and the first marker. For FirstVertex and LastVertex placements, this is the distance between the marker and the start of the line or the end of the line respectively. This setting has no effect for Vertex or CentralPoint placements.

Returns
The offset along the line. The unit for the offset is retrievable via offsetAlongLineUnit.
Note
added in 2.3
See also
setOffsetAlongLine
offsetAlongLineUnit
placement

Definition at line 208 of file qgslinesymbollayerv2.h.

const QgsMapUnitScale& QgsMarkerLineSymbolLayerV2::offsetAlongLineMapUnitScale ( ) const
inline

Returns the map unit scale used for calculating the offset in map units along line for markers.

Returns
Offset along line map unit scale.

Definition at line 240 of file qgslinesymbollayerv2.h.

QgsSymbolV2::OutputUnit QgsMarkerLineSymbolLayerV2::offsetAlongLineUnit ( ) const
inline

Returns the unit used for calculating the offset along line for markers.

Returns
Offset along line unit type.
See also
setOffsetAlongLineUnit
offsetAlongLine

Definition at line 228 of file qgslinesymbollayerv2.h.

QgsSymbolV2::OutputUnit QgsMarkerLineSymbolLayerV2::outputUnit ( ) const
overridevirtual

Reimplemented from QgsSymbolLayerV2.

Definition at line 1471 of file qgslinesymbollayerv2.cpp.

Placement QgsMarkerLineSymbolLayerV2::placement ( ) const
inline

Definition at line 195 of file qgslinesymbollayerv2.h.

QgsStringMap QgsMarkerLineSymbolLayerV2::properties ( ) const
overridevirtual

Implements QgsSymbolLayerV2.

Definition at line 1240 of file qgslinesymbollayerv2.cpp.

void QgsMarkerLineSymbolLayerV2::renderPolygonOutline ( const QPolygonF &  points,
QList< QPolygonF > *  rings,
QgsSymbolV2RenderContext context 
)
overridevirtual

Reimplemented from QgsLineSymbolLayerV2.

Definition at line 884 of file qgslinesymbollayerv2.cpp.

void QgsMarkerLineSymbolLayerV2::renderPolyline ( const QPolygonF &  points,
QgsSymbolV2RenderContext context 
)
overridevirtual

Implements QgsLineSymbolLayerV2.

Definition at line 821 of file qgslinesymbollayerv2.cpp.

void QgsMarkerLineSymbolLayerV2::renderPolylineCentral ( const QPolygonF &  points,
QgsSymbolV2RenderContext context 
)
protected

Definition at line 1191 of file qgslinesymbollayerv2.cpp.

void QgsMarkerLineSymbolLayerV2::renderPolylineInterval ( const QPolygonF &  points,
QgsSymbolV2RenderContext context 
)
protected

Definition at line 896 of file qgslinesymbollayerv2.cpp.

void QgsMarkerLineSymbolLayerV2::renderPolylineVertex ( const QPolygonF &  points,
QgsSymbolV2RenderContext context,
Placement  placement = Vertex 
)
protected

Definition at line 986 of file qgslinesymbollayerv2.cpp.

bool QgsMarkerLineSymbolLayerV2::rotateMarker ( ) const
inline

Definition at line 189 of file qgslinesymbollayerv2.h.

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

Reimplemented from QgsSymbolLayerV2.

Definition at line 792 of file qgslinesymbollayerv2.cpp.

void QgsMarkerLineSymbolLayerV2::setInterval ( double  interval)
inline

Definition at line 193 of file qgslinesymbollayerv2.h.

void QgsMarkerLineSymbolLayerV2::setIntervalMapUnitScale ( const QgsMapUnitScale scale)
inline

Definition at line 250 of file qgslinesymbollayerv2.h.

void QgsMarkerLineSymbolLayerV2::setIntervalUnit ( QgsSymbolV2::OutputUnit  unit)
inline

Definition at line 247 of file qgslinesymbollayerv2.h.

void QgsMarkerLineSymbolLayerV2::setMapUnitScale ( const QgsMapUnitScale scale)
overridevirtual

Reimplemented from QgsSymbolLayerV2.

Definition at line 1481 of file qgslinesymbollayerv2.cpp.

void QgsMarkerLineSymbolLayerV2::setOffsetAlongLine ( double  offsetAlongLine)
inline

Sets the the offset along the line for the marker placement.

For Interval placements, this is the distance between the start of the line and the first marker. For FirstVertex and LastVertex placements, this is the distance between the marker and the start of the line or the end of the line respectively. This setting has no effect for Vertex or CentralPoint placements.

Parameters
offsetAlongLineDistance to offset markers along the line. The offset unit is set via setOffsetAlongLineUnit.
Note
added in 2.3
See also
offsetAlongLine
setOffsetAlongLineUnit
setPlacement

Definition at line 221 of file qgslinesymbollayerv2.h.

void QgsMarkerLineSymbolLayerV2::setOffsetAlongLineMapUnitScale ( const QgsMapUnitScale scale)
inline

Sets the map unit scale used for calculating the offset in map units along line for markers.

Parameters
scaleOffset along line map unit scale.

Definition at line 245 of file qgslinesymbollayerv2.h.

void QgsMarkerLineSymbolLayerV2::setOffsetAlongLineUnit ( QgsSymbolV2::OutputUnit  unit)
inline

Sets the unit used for calculating the offset along line for markers.

Parameters
unitOffset along line unit type.
See also
offsetAlongLineUnit
setOffsetAlongLine

Definition at line 235 of file qgslinesymbollayerv2.h.

void QgsMarkerLineSymbolLayerV2::setOutputUnit ( QgsSymbolV2::OutputUnit  unit)
overridevirtual

Reimplemented from QgsSymbolLayerV2.

Definition at line 1463 of file qgslinesymbollayerv2.cpp.

void QgsMarkerLineSymbolLayerV2::setPlacement ( Placement  p)
inline

Definition at line 196 of file qgslinesymbollayerv2.h.

void QgsMarkerLineSymbolLayerV2::setRotateMarker ( bool  rotate)
inline

Definition at line 190 of file qgslinesymbollayerv2.h.

bool QgsMarkerLineSymbolLayerV2::setSubSymbol ( QgsSymbolV2 symbol)
overridevirtual

Reimplemented from QgsSymbolLayerV2.

Definition at line 1273 of file qgslinesymbollayerv2.cpp.

void QgsMarkerLineSymbolLayerV2::setWidth ( double  width)
overridevirtual

Reimplemented from QgsLineSymbolLayerV2.

Definition at line 1453 of file qgslinesymbollayerv2.cpp.

void QgsMarkerLineSymbolLayerV2::startRender ( QgsSymbolV2RenderContext context)
overridevirtual

Implements QgsSymbolLayerV2.

Definition at line 798 of file qgslinesymbollayerv2.cpp.

void QgsMarkerLineSymbolLayerV2::stopRender ( QgsSymbolV2RenderContext context)
overridevirtual

Implements QgsSymbolLayerV2.

Definition at line 816 of file qgslinesymbollayerv2.cpp.

QgsSymbolV2 * QgsMarkerLineSymbolLayerV2::subSymbol ( )
overridevirtual

Reimplemented from QgsSymbolLayerV2.

Definition at line 1268 of file qgslinesymbollayerv2.cpp.

void QgsMarkerLineSymbolLayerV2::toSld ( QDomDocument &  doc,
QDomElement &  element,
QgsStringMap  props 
) const
overridevirtual

Reimplemented from QgsSymbolLayerV2.

Definition at line 1305 of file qgslinesymbollayerv2.cpp.

double QgsMarkerLineSymbolLayerV2::width ( ) const
overridevirtual

Reimplemented from QgsLineSymbolLayerV2.

Definition at line 1458 of file qgslinesymbollayerv2.cpp.

Member Data Documentation

double QgsMarkerLineSymbolLayerV2::mInterval
protected

Definition at line 267 of file qgslinesymbollayerv2.h.

QgsMapUnitScale QgsMarkerLineSymbolLayerV2::mIntervalMapUnitScale
protected

Definition at line 269 of file qgslinesymbollayerv2.h.

QgsSymbolV2::OutputUnit QgsMarkerLineSymbolLayerV2::mIntervalUnit
protected

Definition at line 268 of file qgslinesymbollayerv2.h.

QgsMarkerSymbolV2* QgsMarkerLineSymbolLayerV2::mMarker
protected

Definition at line 270 of file qgslinesymbollayerv2.h.

double QgsMarkerLineSymbolLayerV2::mOffsetAlongLine
protected

Definition at line 272 of file qgslinesymbollayerv2.h.

QgsMapUnitScale QgsMarkerLineSymbolLayerV2::mOffsetAlongLineMapUnitScale
protected

Definition at line 274 of file qgslinesymbollayerv2.h.

QgsSymbolV2::OutputUnit QgsMarkerLineSymbolLayerV2::mOffsetAlongLineUnit
protected

Definition at line 273 of file qgslinesymbollayerv2.h.

Placement QgsMarkerLineSymbolLayerV2::mPlacement
protected

Definition at line 271 of file qgslinesymbollayerv2.h.

bool QgsMarkerLineSymbolLayerV2::mRotateMarker
protected

Definition at line 266 of file qgslinesymbollayerv2.h.


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