QGIS API Documentation  2.2.0-Valmiera
 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]
Collaboration diagram for QgsMarkerLineSymbolLayerV2:
Collaboration 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)
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)
QgsSymbolV2::OutputUnit intervalUnit () const
void setIntervalUnit (QgsSymbolV2::OutputUnit unit)
QgsSymbolV2::OutputUnit offsetUnit () const
void setOffsetUnit (QgsSymbolV2::OutputUnit unit)
void setOutputUnit (QgsSymbolV2::OutputUnit unit)
QgsSymbolV2::OutputUnit outputUnit () const
- Public Member Functions inherited from QgsLineSymbolLayerV2
virtual void renderPolygonOutline (const QPolygonF &points, QList< QPolygonF > *rings, QgsSymbolV2RenderContext &context)
void setWidthUnit (QgsSymbolV2::OutputUnit unit)
QgsSymbolV2::OutputUnit widthUnit () 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

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 QgsVectorLayer *vl, 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
QgsMarkerSymbolV2mMarker
double mOffset
QgsSymbolV2::OutputUnit mOffsetUnit
Placement mPlacement
- Protected Attributes inherited from QgsLineSymbolLayerV2
double mWidth
QgsSymbolV2::OutputUnit mWidthUnit
- 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

Detailed Description

Definition at line 133 of file qgslinesymbollayerv2.h.

Member Enumeration Documentation

Enumerator:
Interval 
Vertex 
LastVertex 
FirstVertex 
CentralPoint 

Definition at line 141 of file qgslinesymbollayerv2.h.

Constructor & Destructor Documentation

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

Definition at line 536 of file qgslinesymbollayerv2.cpp.

References mMarker.

Member Function Documentation

QgsSymbolLayerV2 * QgsMarkerLineSymbolLayerV2::clone ( ) const
virtual
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.

Definition at line 1171 of file qgslinesymbollayerv2.cpp.

References mMarker, mOffset, and QgsMarkerSymbolV2::size().

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

Definition at line 195 of file qgslinesymbollayerv2.h.

Referenced by QgsLinePatternFillSymbolLayer::applyPattern().

QString QgsMarkerLineSymbolLayerV2::layerType ( ) const
virtual

Implements QgsSymbolLayerV2.

Definition at line 596 of file qgslinesymbollayerv2.cpp.

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

Definition at line 819 of file qgslinesymbollayerv2.cpp.

References _averageAngle(), MathUtils::angle(), and MyLine::angle().

Referenced by renderPolylineVertex().

double QgsMarkerLineSymbolLayerV2::offset ( ) const
inline

Definition at line 189 of file qgslinesymbollayerv2.h.

Referenced by createFromSld(), and renderPolyline().

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

Definition at line 198 of file qgslinesymbollayerv2.h.

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

Reimplemented from QgsSymbolLayerV2.

Definition at line 1161 of file qgslinesymbollayerv2.cpp.

References mIntervalUnit, QgsSymbolV2::Mixed, and mOffsetUnit.

Placement QgsMarkerLineSymbolLayerV2::placement ( ) const
inline

Definition at line 192 of file qgslinesymbollayerv2.h.

Referenced by createFromSld(), and renderPolyline().

QgsStringMap QgsMarkerLineSymbolLayerV2::properties ( ) const
virtual
void QgsMarkerLineSymbolLayerV2::renderPolyline ( const QPolygonF &  points,
QgsSymbolV2RenderContext context 
)
virtual
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

Definition at line 183 of file qgslinesymbollayerv2.h.

Referenced by createFromSld(), and QgsMarkerLineSymbolLayerV2().

void QgsMarkerLineSymbolLayerV2::setColor ( const QColor &  color)
virtual
void QgsMarkerLineSymbolLayerV2::setInterval ( double  interval)
inline
void QgsMarkerLineSymbolLayerV2::setIntervalUnit ( QgsSymbolV2::OutputUnit  unit)
inline

Definition at line 196 of file qgslinesymbollayerv2.h.

Referenced by clone(), and create().

void QgsMarkerLineSymbolLayerV2::setOffset ( double  offset)
inline

Definition at line 190 of file qgslinesymbollayerv2.h.

Referenced by clone(), create(), and createFromSld().

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

Definition at line 199 of file qgslinesymbollayerv2.h.

Referenced by clone(), and create().

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

Reimplemented from QgsSymbolLayerV2.

Definition at line 1155 of file qgslinesymbollayerv2.cpp.

References mIntervalUnit, and mOffsetUnit.

void QgsMarkerLineSymbolLayerV2::setPlacement ( Placement  p)
inline

Definition at line 193 of file qgslinesymbollayerv2.h.

Referenced by clone(), create(), and createFromSld().

void QgsMarkerLineSymbolLayerV2::setRotateMarker ( bool  rotate)
inline

Definition at line 184 of file qgslinesymbollayerv2.h.

bool QgsMarkerLineSymbolLayerV2::setSubSymbol ( QgsSymbolV2 symbol)
virtual
void QgsMarkerLineSymbolLayerV2::setWidth ( double  width)
virtual

Reimplemented from QgsLineSymbolLayerV2.

Definition at line 1145 of file qgslinesymbollayerv2.cpp.

References mMarker, and QgsMarkerSymbolV2::setSize().

void QgsMarkerLineSymbolLayerV2::startRender ( QgsSymbolV2RenderContext context)
virtual
void QgsMarkerLineSymbolLayerV2::stopRender ( QgsSymbolV2RenderContext context)
virtual
QgsSymbolV2 * QgsMarkerLineSymbolLayerV2::subSymbol ( )
virtual

Reimplemented from QgsSymbolLayerV2.

Definition at line 966 of file qgslinesymbollayerv2.cpp.

References mMarker.

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

Reimplemented from QgsLineSymbolLayerV2.

Definition at line 1150 of file qgslinesymbollayerv2.cpp.

References mMarker, and QgsMarkerSymbolV2::size().

Member Data Documentation

double QgsMarkerLineSymbolLayerV2::mInterval
protected
QgsSymbolV2::OutputUnit QgsMarkerLineSymbolLayerV2::mIntervalUnit
protected
QgsMarkerSymbolV2* QgsMarkerLineSymbolLayerV2::mMarker
protected
double QgsMarkerLineSymbolLayerV2::mOffset
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: