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

Static Public Member Functions

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

Protected Member Functions

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

Protected Attributes

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

Additional Inherited Members

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

Member Enumeration Documentation

Enumerator:
Interval 
Vertex 
LastVertex 
FirstVertex 
CentralPoint 

Constructor & Destructor Documentation

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

Member Function Documentation

QgsSymbolLayerV2 * QgsMarkerLineSymbolLayerV2::clone ( ) const
virtual

Implements QgsSymbolLayerV2.

QgsSymbolLayerV2 * QgsMarkerLineSymbolLayerV2::create ( const QgsStringMap properties = QgsStringMap())
static
QgsSymbolLayerV2 * QgsMarkerLineSymbolLayerV2::createFromSld ( QDomElement &  element)
static
double QgsMarkerLineSymbolLayerV2::estimateMaxBleed ( ) const
virtual

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.

double QgsMarkerLineSymbolLayerV2::interval ( ) const
inline
const QgsMapUnitScale& QgsMarkerLineSymbolLayerV2::intervalMapUnitScale ( ) const
inline
QgsSymbolV2::OutputUnit QgsMarkerLineSymbolLayerV2::intervalUnit ( ) const
inline
QString QgsMarkerLineSymbolLayerV2::layerType ( ) const
virtual

Implements QgsSymbolLayerV2.

QgsMapUnitScale QgsMarkerLineSymbolLayerV2::mapUnitScale ( ) const
virtual

Reimplemented from QgsLineSymbolLayerV2.

double QgsMarkerLineSymbolLayerV2::markerAngle ( const QPolygonF &  points,
bool  isRing,
int  vertex 
)
protected
double QgsMarkerLineSymbolLayerV2::offset ( ) const
inline
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
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.
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
const QgsMapUnitScale& QgsMarkerLineSymbolLayerV2::offsetMapUnitScale ( ) const
inline
QgsSymbolV2::OutputUnit QgsMarkerLineSymbolLayerV2::offsetUnit ( ) const
inline
QgsSymbolV2::OutputUnit QgsMarkerLineSymbolLayerV2::outputUnit ( ) const
virtual

Reimplemented from QgsLineSymbolLayerV2.

Placement QgsMarkerLineSymbolLayerV2::placement ( ) const
inline
QgsStringMap QgsMarkerLineSymbolLayerV2::properties ( ) const
virtual

Implements QgsSymbolLayerV2.

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

Reimplemented from QgsLineSymbolLayerV2.

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

Implements QgsLineSymbolLayerV2.

void QgsMarkerLineSymbolLayerV2::renderPolylineCentral ( const QPolygonF &  points,
QgsSymbolV2RenderContext context 
)
protected
void QgsMarkerLineSymbolLayerV2::renderPolylineInterval ( const QPolygonF &  points,
QgsSymbolV2RenderContext context 
)
protected
void QgsMarkerLineSymbolLayerV2::renderPolylineVertex ( const QPolygonF &  points,
QgsSymbolV2RenderContext context,
Placement  placement = Vertex 
)
protected
bool QgsMarkerLineSymbolLayerV2::rotateMarker ( ) const
inline
void QgsMarkerLineSymbolLayerV2::setColor ( const QColor &  color)
virtual

Reimplemented from QgsSymbolLayerV2.

void QgsMarkerLineSymbolLayerV2::setInterval ( double  interval)
inline
void QgsMarkerLineSymbolLayerV2::setIntervalMapUnitScale ( const QgsMapUnitScale scale)
inline
void QgsMarkerLineSymbolLayerV2::setIntervalUnit ( QgsSymbolV2::OutputUnit  unit)
inline
void QgsMarkerLineSymbolLayerV2::setMapUnitScale ( const QgsMapUnitScale scale)
virtual

Reimplemented from QgsLineSymbolLayerV2.

void QgsMarkerLineSymbolLayerV2::setOffset ( double  offset)
inline
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
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.
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
void QgsMarkerLineSymbolLayerV2::setOffsetMapUnitScale ( const QgsMapUnitScale scale)
inline
void QgsMarkerLineSymbolLayerV2::setOffsetUnit ( QgsSymbolV2::OutputUnit  unit)
inline
void QgsMarkerLineSymbolLayerV2::setOutputUnit ( QgsSymbolV2::OutputUnit  unit)
virtual

Reimplemented from QgsLineSymbolLayerV2.

void QgsMarkerLineSymbolLayerV2::setPlacement ( Placement  p)
inline
void QgsMarkerLineSymbolLayerV2::setRotateMarker ( bool  rotate)
inline
bool QgsMarkerLineSymbolLayerV2::setSubSymbol ( QgsSymbolV2 symbol)
virtual

Reimplemented from QgsSymbolLayerV2.

void QgsMarkerLineSymbolLayerV2::setWidth ( double  width)
virtual

Reimplemented from QgsLineSymbolLayerV2.

void QgsMarkerLineSymbolLayerV2::startRender ( QgsSymbolV2RenderContext context)
virtual

Implements QgsSymbolLayerV2.

void QgsMarkerLineSymbolLayerV2::stopRender ( QgsSymbolV2RenderContext context)
virtual

Implements QgsSymbolLayerV2.

QgsSymbolV2 * QgsMarkerLineSymbolLayerV2::subSymbol ( )
virtual

Reimplemented from QgsSymbolLayerV2.

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

Reimplemented from QgsSymbolLayerV2.

double QgsMarkerLineSymbolLayerV2::width ( ) const
virtual

Reimplemented from QgsLineSymbolLayerV2.

Member Data Documentation

double QgsMarkerLineSymbolLayerV2::mInterval
protected
QgsMapUnitScale QgsMarkerLineSymbolLayerV2::mIntervalMapUnitScale
protected
QgsSymbolV2::OutputUnit QgsMarkerLineSymbolLayerV2::mIntervalUnit
protected
QgsMarkerSymbolV2* QgsMarkerLineSymbolLayerV2::mMarker
protected
double QgsMarkerLineSymbolLayerV2::mOffset
protected
double QgsMarkerLineSymbolLayerV2::mOffsetAlongLine
protected
QgsMapUnitScale QgsMarkerLineSymbolLayerV2::mOffsetAlongLineMapUnitScale
protected
QgsSymbolV2::OutputUnit QgsMarkerLineSymbolLayerV2::mOffsetAlongLineUnit
protected
QgsMapUnitScale QgsMarkerLineSymbolLayerV2::mOffsetMapUnitScale
protected
QgsSymbolV2::OutputUnit QgsMarkerLineSymbolLayerV2::mOffsetUnit
protected
Placement QgsMarkerLineSymbolLayerV2::mPlacement
protected
bool QgsMarkerLineSymbolLayerV2::mRotateMarker
protected

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