QGIS API Documentation  2.3.0-Master
 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. More...
 
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. More...
 
virtual QColor outlineColor () const
 Get outline color. More...
 
virtual void setFillColor (const QColor &color)
 Set fill color. More...
 
virtual QColor fillColor () const
 Get fill color. More...
 
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 QgsFields *fields, double scale=-1.0)
 
virtual QgsExpressionexpression (const QString &property) const
 
void saveDataDefinedProperties (QgsStringMap &stringMap) const
 Saves data defined properties to string map. More...
 
void copyDataDefinedProperties (QgsSymbolLayerV2 *destLayer) const
 Copies data defined properties of this layer to another symbol layer. More...
 

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 136 of file qgslinesymbollayerv2.h.

Member Enumeration Documentation

Enumerator
Interval 
Vertex 
LastVertex 
FirstVertex 
CentralPoint 

Definition at line 144 of file qgslinesymbollayerv2.h.

Constructor & Destructor Documentation

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

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

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

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

Definition at line 198 of file qgslinesymbollayerv2.h.

Referenced by QgsLinePatternFillSymbolLayer::applyPattern().

QString QgsMarkerLineSymbolLayerV2::layerType ( ) const
virtual

Implements QgsSymbolLayerV2.

Definition at line 628 of file qgslinesymbollayerv2.cpp.

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

Definition at line 851 of file qgslinesymbollayerv2.cpp.

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

Referenced by renderPolylineVertex().

double QgsMarkerLineSymbolLayerV2::offset ( ) const
inline

Definition at line 192 of file qgslinesymbollayerv2.h.

Referenced by createFromSld(), and renderPolyline().

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

Definition at line 201 of file qgslinesymbollayerv2.h.

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

Reimplemented from QgsSymbolLayerV2.

Definition at line 1193 of file qgslinesymbollayerv2.cpp.

References mIntervalUnit, QgsSymbolV2::Mixed, and mOffsetUnit.

Placement QgsMarkerLineSymbolLayerV2::placement ( ) const
inline

Definition at line 195 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 186 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 199 of file qgslinesymbollayerv2.h.

Referenced by clone(), and create().

void QgsMarkerLineSymbolLayerV2::setOffset ( double  offset)
inline

Definition at line 193 of file qgslinesymbollayerv2.h.

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

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

Definition at line 202 of file qgslinesymbollayerv2.h.

Referenced by clone(), and create().

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

Reimplemented from QgsSymbolLayerV2.

Definition at line 1187 of file qgslinesymbollayerv2.cpp.

References mIntervalUnit, and mOffsetUnit.

void QgsMarkerLineSymbolLayerV2::setPlacement ( Placement  p)
inline

Definition at line 196 of file qgslinesymbollayerv2.h.

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

void QgsMarkerLineSymbolLayerV2::setRotateMarker ( bool  rotate)
inline

Definition at line 187 of file qgslinesymbollayerv2.h.

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

Reimplemented from QgsLineSymbolLayerV2.

Definition at line 1177 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 998 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 1182 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: