QGIS API Documentation  2.8.2-Wien
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
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.
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.
const QgsMapUnitScaleoffsetAlongLineMapUnitScale () const
 Returns the map unit scale used for calculating the offset in map units along line for markers.
QgsSymbolV2::OutputUnit offsetAlongLineUnit () const
 Returns the unit used for calculating the offset along line for markers.
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.
void setOffsetAlongLineMapUnitScale (const QgsMapUnitScale &scale)
 Sets the map unit scale used for calculating the offset in map units along line for markers.
void setOffsetAlongLineUnit (QgsSymbolV2::OutputUnit unit)
 Sets the unit used for calculating the offset along line for markers.
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
double offset () const
const QgsMapUnitScaleoffsetMapUnitScale () const
QgsSymbolV2::OutputUnit offsetUnit () const
void setOffset (double offset)
void setOffsetMapUnitScale (const QgsMapUnitScale &scale)
void setOffsetUnit (QgsSymbolV2::OutputUnit unit)
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.
bool hasDataDefinedProperties () const
bool isLocked () const
virtual QString ogrFeatureStyle (double mmScaleFactor, double mapUnitScaleFactor) const
virtual QColor outlineColor () const
 Get outline color.
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.
void setLocked (bool locked)
virtual void setOutlineColor (const QColor &color)
 Set outline color.
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.
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.

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
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 687 of file qgslinesymbollayerv2.cpp.

QgsMarkerLineSymbolLayerV2::~QgsMarkerLineSymbolLayerV2 ( )

Definition at line 700 of file qgslinesymbollayerv2.cpp.

Member Function Documentation

QgsSymbolLayerV2 * QgsMarkerLineSymbolLayerV2::clone ( ) const
overridevirtual

Implements QgsSymbolLayerV2.

Definition at line 1286 of file qgslinesymbollayerv2.cpp.

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

Definition at line 705 of file qgslinesymbollayerv2.cpp.

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

Definition at line 1378 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 1498 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 786 of file qgslinesymbollayerv2.cpp.

QgsMapUnitScale QgsMarkerLineSymbolLayerV2::mapUnitScale ( ) const
overridevirtual

Reimplemented from QgsLineSymbolLayerV2.

Definition at line 1487 of file qgslinesymbollayerv2.cpp.

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

Definition at line 1056 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 QgsLineSymbolLayerV2.

Definition at line 1469 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 1239 of file qgslinesymbollayerv2.cpp.

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

Reimplemented from QgsLineSymbolLayerV2.

Definition at line 883 of file qgslinesymbollayerv2.cpp.

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

Implements QgsLineSymbolLayerV2.

Definition at line 820 of file qgslinesymbollayerv2.cpp.

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

Definition at line 1190 of file qgslinesymbollayerv2.cpp.

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

Definition at line 895 of file qgslinesymbollayerv2.cpp.

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

Definition at line 985 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 791 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 QgsLineSymbolLayerV2.

Definition at line 1479 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 QgsLineSymbolLayerV2.

Definition at line 1461 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 1272 of file qgslinesymbollayerv2.cpp.

void QgsMarkerLineSymbolLayerV2::setWidth ( double  width)
overridevirtual

Reimplemented from QgsLineSymbolLayerV2.

Definition at line 1451 of file qgslinesymbollayerv2.cpp.

void QgsMarkerLineSymbolLayerV2::startRender ( QgsSymbolV2RenderContext context)
overridevirtual

Implements QgsSymbolLayerV2.

Definition at line 797 of file qgslinesymbollayerv2.cpp.

void QgsMarkerLineSymbolLayerV2::stopRender ( QgsSymbolV2RenderContext context)
overridevirtual

Implements QgsSymbolLayerV2.

Definition at line 815 of file qgslinesymbollayerv2.cpp.

QgsSymbolV2 * QgsMarkerLineSymbolLayerV2::subSymbol ( )
overridevirtual

Reimplemented from QgsSymbolLayerV2.

Definition at line 1267 of file qgslinesymbollayerv2.cpp.

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

Reimplemented from QgsSymbolLayerV2.

Definition at line 1303 of file qgslinesymbollayerv2.cpp.

double QgsMarkerLineSymbolLayerV2::width ( ) const
overridevirtual

Reimplemented from QgsLineSymbolLayerV2.

Definition at line 1456 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: