16 #ifndef QGSLINESYMBOLLAYERV2_H
17 #define QGSLINESYMBOLLAYERV2_H
26 #define DEFAULT_SIMPLELINE_COLOR QColor(0,0,0)
27 #define DEFAULT_SIMPLELINE_WIDTH DEFAULT_LINE_WIDTH
28 #define DEFAULT_SIMPLELINE_PENSTYLE Qt::SolidLine
29 #define DEFAULT_SIMPLELINE_JOINSTYLE Qt::BevelJoin
30 #define DEFAULT_SIMPLELINE_CAPSTYLE Qt::SquareCap
64 QString
ogrFeatureStyle(
double mmScaleFactor,
double mapUnitScaleFactor )
const;
76 Qt::PenStyle
penStyle()
const {
return mPenStyle; }
85 double offset()
const {
return mOffset; }
86 void setOffset(
double offset ) { mOffset = offset; }
144 #define DEFAULT_MARKERLINE_ROTATE true
145 #define DEFAULT_MARKERLINE_INTERVAL 3
185 void setColor(
const QColor& color );
190 virtual void setWidth(
double width );
191 virtual double width()
const;
203 double offset()
const {
return mOffset; }
279 void renderPolylineVertex(
const QPolygonF& points,
QgsSymbolV2RenderContext& context, Placement placement = Vertex );
281 double markerAngle(
const QPolygonF& points,
bool isRing,
int vertex );
308 void renderOffsetVertexAlongLine(
const QPolygonF& points,
int vertex,
double distance ,
QgsSymbolV2RenderContext &context );
void setIntervalUnit(QgsSymbolV2::OutputUnit unit)
QgsSymbolV2::OutputUnit customDashPatternUnit() const
QgsMapUnitScale mOffsetMapUnitScale
Class for parsing and evaluation of expressions (formerly called "search strings").
QgsSymbolV2::OutputUnit intervalUnit() const
#define DEFAULT_SIMPLELINE_PENSTYLE
#define DEFAULT_MARKERLINE_ROTATE
void setOutputUnit(QgsSymbolV2::OutputUnit unit)
QgsSymbolV2::OutputUnit offsetAlongLineUnit() const
Returns the unit used for calculating the offset along line for markers.
virtual Qt::PenStyle dxfPenStyle() const
virtual QgsSymbolLayerV2 * clone() const =0
const QgsMapUnitScale & offsetMapUnitScale() const
virtual double width() const
QgsSymbolV2::OutputUnit outputUnit() const
#define DEFAULT_MARKERLINE_INTERVAL
const QgsMapUnitScale & customDashPatternMapUnitScale() const
void setCustomDashPatternUnit(QgsSymbolV2::OutputUnit unit)
QgsMapUnitScale mCustomDashPatternMapUnitScale
bool useCustomDashPattern() const
void setUseCustomDashPattern(bool b)
QVector< qreal > customDashVector() const
const QgsMapUnitScale & intervalMapUnitScale() const
void setPenJoinStyle(Qt::PenJoinStyle style)
void setOffsetUnit(QgsSymbolV2::OutputUnit unit)
Qt::PenCapStyle mPenCapStyle
void setIntervalMapUnitScale(const QgsMapUnitScale &scale)
void setOffsetMapUnitScale(const QgsMapUnitScale &scale)
QMap< QString, QString > QgsStringMap
Qt::PenStyle penStyle() const
QgsMapUnitScale mOffsetAlongLineMapUnitScale
virtual double estimateMaxBleed() const
Returns the estimated maximum distance which the layer style will bleed outside the drawn shape...
void setOffsetAlongLine(double offsetAlongLine)
Sets the the offset along the line for the marker placement.
virtual void startRender(QgsSymbolV2RenderContext &context)=0
void setInterval(double interval)
QgsSymbolV2::OutputUnit mOffsetUnit
bool mUseCustomDashPattern
void setDrawInsidePolygon(bool drawInsidePolygon)
void setRotateMarker(bool rotate)
QgsSymbolV2::OutputUnit mIntervalUnit
virtual void toSld(QDomDocument &doc, QDomElement &element, QgsStringMap props) const
double offsetAlongLine() const
Returns the offset along the line for the marker placement.
bool drawInsidePolygon() const
virtual QVector< qreal > dxfCustomDashPattern(QgsSymbolV2::OutputUnit &unit) const
const QgsMapUnitScale & offsetMapUnitScale() const
Qt::PenJoinStyle mPenJoinStyle
QVector< qreal > mCustomDashVector
Vector with an even number of entries for the.
#define DEFAULT_SIMPLELINE_WIDTH
virtual void setWidth(double width)
bool rotateMarker() const
virtual QgsStringMap properties() const =0
QgsMapUnitScale mapUnitScale() const
void setOffsetAlongLineMapUnitScale(const QgsMapUnitScale &scale)
Sets the map unit scale used for calculating the offset in map units along line for markers...
void setOffset(double offset)
virtual void renderPolygonOutline(const QPolygonF &points, QList< QPolygonF > *rings, QgsSymbolV2RenderContext &context)
void setOffsetAlongLineUnit(QgsSymbolV2::OutputUnit unit)
Sets the unit used for calculating the offset along line for markers.
QgsMapUnitScale mOffsetMapUnitScale
void setPenCapStyle(Qt::PenCapStyle style)
void setCustomDashVector(const QVector< qreal > &vector)
QgsSymbolV2::OutputUnit offsetUnit() const
QgsMarkerSymbolV2 * mMarker
virtual QColor dxfColor(const QgsSymbolV2RenderContext &context) const
void setOffsetMapUnitScale(const QgsMapUnitScale &scale)
virtual void renderPolyline(const QPolygonF &points, QgsSymbolV2RenderContext &context)=0
void setOffset(double offset)
QgsSymbolV2::OutputUnit mCustomDashPatternUnit
virtual QString layerType() const =0
virtual QgsSymbolV2 * subSymbol()
#define DEFAULT_SIMPLELINE_COLOR
QgsMapUnitScale mIntervalMapUnitScale
QgsSymbolV2::OutputUnit mOffsetAlongLineUnit
void setPenStyle(Qt::PenStyle style)
void setPlacement(Placement p)
void setCustomDashPatternMapUnitScale(const QgsMapUnitScale &scale)
virtual void setColor(const QColor &color)
Placement placement() const
QgsSymbolV2::OutputUnit mOffsetUnit
virtual double dxfWidth(const QgsDxfExport &e, const QgsSymbolV2RenderContext &context) const
const QgsMapUnitScale & offsetAlongLineMapUnitScale() const
Returns the map unit scale used for calculating the offset in map units along line for markers...
virtual bool setSubSymbol(QgsSymbolV2 *symbol)
virtual void stopRender(QgsSymbolV2RenderContext &context)=0
void setOffsetUnit(QgsSymbolV2::OutputUnit unit)
virtual QString ogrFeatureStyle(double mmScaleFactor, double mapUnitScaleFactor) const
QgsSymbolV2::OutputUnit offsetUnit() const
Qt::PenJoinStyle penJoinStyle() const
void setMapUnitScale(const QgsMapUnitScale &scale)
Qt::PenCapStyle penCapStyle() const