QGIS API Documentation
2.4.0-Chugiak
|
#include <qgsfillsymbollayerv2.h>
Public Types | |
enum | GradientColorType { SimpleTwoColor, ColorRamp } |
enum | GradientType { Linear, Radial, Conical } |
enum | GradientCoordinateMode { Feature, Viewport } |
enum | GradientSpread { Pad, Reflect, Repeat } |
Public Member Functions | |
QgsGradientFillSymbolLayerV2 (QColor color=DEFAULT_SIMPLEFILL_COLOR, QColor color2=Qt::white, GradientColorType gradientColorType=SimpleTwoColor, GradientType gradientType=Linear, GradientCoordinateMode coordinateMode=Feature, GradientSpread gradientSpread=Pad) | |
virtual | ~QgsGradientFillSymbolLayerV2 () |
QString | layerType () const |
void | startRender (QgsSymbolV2RenderContext &context) |
void | stopRender (QgsSymbolV2RenderContext &context) |
void | renderPolygon (const QPolygonF &points, QList< QPolygonF > *rings, QgsSymbolV2RenderContext &context) |
QgsStringMap | properties () const |
QgsSymbolLayerV2 * | clone () const |
double | estimateMaxBleed () const |
Returns the estimated maximum distance which the layer style will bleed outside the drawn shape. More... | |
GradientType | gradientType () const |
Type of gradient, eg linear or radial. More... | |
void | setGradientType (GradientType gradientType) |
GradientColorType | gradientColorType () const |
Gradient color mode, controls how gradient color stops are created. More... | |
void | setGradientColorType (GradientColorType gradientColorType) |
QgsVectorColorRampV2 * | colorRamp () |
Color ramp used for the gradient fill, only used if the gradient color type is set to ColorRamp. More... | |
void | setColorRamp (QgsVectorColorRampV2 *ramp) |
QColor | color2 () const |
Color for endpoint of gradient, only used if the gradient color type is set to SimpleTwoColor. More... | |
void | setColor2 (QColor color2) |
GradientCoordinateMode | coordinateMode () const |
Coordinate mode for gradient. More... | |
void | setCoordinateMode (GradientCoordinateMode coordinateMode) |
GradientSpread | gradientSpread () const |
Gradient spread mode. More... | |
void | setGradientSpread (GradientSpread gradientSpread) |
void | setReferencePoint1 (QPointF referencePoint) |
Starting point of gradient fill, in the range [0,0] - [1,1]. More... | |
QPointF | referencePoint1 () const |
void | setReferencePoint1IsCentroid (bool isCentroid) |
Sets the starting point of the gradient to be the feature centroid. More... | |
bool | referencePoint1IsCentroid () const |
void | setReferencePoint2 (QPointF referencePoint) |
End point of gradient fill, in the range [0,0] - [1,1]. More... | |
QPointF | referencePoint2 () const |
void | setReferencePoint2IsCentroid (bool isCentroid) |
Sets the end point of the gradient to be the feature centroid. More... | |
bool | referencePoint2IsCentroid () const |
void | setAngle (double angle) |
Rotation angle for gradient fill. More... | |
double | angle () const |
void | setOffset (QPointF offset) |
Offset for gradient fill. More... | |
QPointF | offset () const |
void | setOffsetUnit (QgsSymbolV2::OutputUnit unit) |
Units for gradient fill offset. More... | |
QgsSymbolV2::OutputUnit | offsetUnit () const |
void | setOffsetMapUnitScale (const QgsMapUnitScale &scale) |
const QgsMapUnitScale & | offsetMapUnitScale () const |
void | setOutputUnit (QgsSymbolV2::OutputUnit unit) |
QgsSymbolV2::OutputUnit | outputUnit () const |
void | setMapUnitScale (const QgsMapUnitScale &scale) |
QgsMapUnitScale | mapUnitScale () const |
Public Member Functions inherited from QgsFillSymbolLayerV2 | |
void | drawPreviewIcon (QgsSymbolV2RenderContext &context, QSize size) |
void | setAngle (double angle) |
double | angle () const |
Public Member Functions inherited from QgsSymbolLayerV2 | |
virtual QColor | color () const |
virtual void | setColor (const QColor &color) |
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 void | toSld (QDomDocument &doc, QDomElement &element, QgsStringMap props) const |
virtual QString | ogrFeatureStyle (double mmScaleFactor, double mapUnitScaleFactor) const |
virtual QgsSymbolV2 * | subSymbol () |
virtual bool | setSubSymbol (QgsSymbolV2 *symbol) |
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 QgsExpression * | dataDefinedProperty (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 double | dxfWidth (const QgsDxfExport &e, const QgsSymbolV2RenderContext &context) 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 QgsSymbolLayerV2 * | create (const QgsStringMap &properties=QgsStringMap()) |
Protected Attributes | |
QBrush | mBrush |
QBrush | mSelBrush |
GradientColorType | mGradientColorType |
QColor | mColor2 |
QgsVectorColorRampV2 * | mGradientRamp |
GradientType | mGradientType |
GradientCoordinateMode | mCoordinateMode |
GradientSpread | mGradientSpread |
QPointF | mReferencePoint1 |
bool | mReferencePoint1IsCentroid |
QPointF | mReferencePoint2 |
bool | mReferencePoint2IsCentroid |
double | mAngle |
QPointF | mOffset |
QgsSymbolV2::OutputUnit | mOffsetUnit |
QgsMapUnitScale | mOffsetMapUnitScale |
Protected Attributes inherited from QgsFillSymbolLayerV2 | |
double | mAngle |
Protected Attributes inherited from QgsSymbolLayerV2 | |
QgsSymbolV2::SymbolType | mType |
bool | mLocked |
QColor | mColor |
int | mRenderingPass |
QMap< QString, QgsExpression * > | mDataDefinedProperties |
Private Member Functions | |
void | applyDataDefinedSymbology (QgsSymbolV2RenderContext &context, const QPolygonF &points) |
void | applyGradient (const QgsSymbolV2RenderContext &context, QBrush &brush, const QColor &color, const QColor &color2, const GradientColorType &gradientColorType, QgsVectorColorRampV2 *gradientRamp, const GradientType &gradientType, const GradientCoordinateMode &coordinateMode, const GradientSpread &gradientSpread, const QPointF &referencePoint1, const QPointF &referencePoint2, const double angle) |
Applies the gradient to a brush. More... | |
QPointF | rotateReferencePoint (const QPointF &refPoint, double angle) |
rotates a reference point by a specified angle around the point (0.5, 0.5) More... | |
Additional Inherited Members | |
Protected Member Functions inherited from QgsFillSymbolLayerV2 | |
QgsFillSymbolLayerV2 (bool locked=false) | |
void | _renderPolygon (QPainter *p, const QPolygonF &points, const QList< QPolygonF > *rings, QgsSymbolV2RenderContext &context) |
Default method to render polygon. More... | |
Protected Member Functions inherited from QgsSymbolLayerV2 | |
QgsSymbolLayerV2 (QgsSymbolV2::SymbolType type, bool locked=false) | |
virtual void | prepareExpressions (const QgsFields *fields, double scale=-1.0) |
virtual QgsExpression * | expression (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... | |
Static Protected Attributes inherited from QgsSymbolLayerV2 | |
static const bool | selectionIsOpaque = true |
static const bool | selectFillBorder = false |
static const bool | selectFillStyle = false |
Definition at line 147 of file qgsfillsymbollayerv2.h.
Enumerator | |
---|---|
SimpleTwoColor | |
ColorRamp |
Definition at line 151 of file qgsfillsymbollayerv2.h.
Enumerator | |
---|---|
Feature | |
Viewport |
Definition at line 164 of file qgsfillsymbollayerv2.h.
Enumerator | |
---|---|
Pad | |
Reflect | |
Repeat |
Definition at line 170 of file qgsfillsymbollayerv2.h.
Enumerator | |
---|---|
Linear | |
Radial | |
Conical |
Definition at line 157 of file qgsfillsymbollayerv2.h.
QgsGradientFillSymbolLayerV2::QgsGradientFillSymbolLayerV2 | ( | QColor | color = DEFAULT_SIMPLEFILL_COLOR , |
QColor | color2 = Qt::white , |
||
GradientColorType | gradientColorType = SimpleTwoColor , |
||
GradientType | gradientType = Linear , |
||
GradientCoordinateMode | coordinateMode = Feature , |
||
GradientSpread | gradientSpread = Pad |
||
) |
Definition at line 357 of file qgsfillsymbollayerv2.cpp.
References QgsSymbolLayerV2::color(), color2(), QgsSymbolLayerV2::mColor, and mColor2.
|
virtual |
Definition at line 376 of file qgsfillsymbollayerv2.cpp.
References mGradientRamp.
|
inline |
Definition at line 249 of file qgsfillsymbollayerv2.h.
References QgsFillSymbolLayerV2::mAngle.
Referenced by applyDataDefinedSymbology(), applyGradient(), create(), and rotateReferencePoint().
|
private |
Definition at line 481 of file qgsfillsymbollayerv2.cpp.
References angle(), applyGradient(), QgsSymbolLayerV2::color(), color2(), Conical, coordinateMode(), QgsSymbolLayerV2Utils::decodeColor(), QgsExpression::evaluate(), QgsSymbolLayerV2::expression(), Feature, QgsSymbolV2RenderContext::feature(), gradientType(), Linear, mAngle, mBrush, QgsSymbolLayerV2::mColor, mColor2, mCoordinateMode, mGradientColorType, mGradientRamp, mGradientSpread, mGradientType, mReferencePoint1, mReferencePoint1IsCentroid, mReferencePoint2, mReferencePoint2IsCentroid, Pad, QgsSymbolLayerV2Utils::polygonCentroid(), Radial, Reflect, Repeat, tr, and Viewport.
Referenced by renderPolygon().
|
private |
Applies the gradient to a brush.
Definition at line 649 of file qgsfillsymbollayerv2.cpp.
References QgsVectorGradientColorRampV2::addStopsToGradient(), QgsSymbolV2RenderContext::alpha(), angle(), QgsSymbolLayerV2::color(), color2(), ColorRamp, Conical, Feature, QgsSymbolLayerV2::fillColor(), Linear, Pad, Radial, referencePoint1(), referencePoint2(), Reflect, Repeat, rotateReferencePoint(), QgsVectorColorRampV2::type(), and Viewport.
Referenced by applyDataDefinedSymbology().
|
virtual |
Implements QgsSymbolLayerV2.
Definition at line 789 of file qgsfillsymbollayerv2.cpp.
References QgsVectorColorRampV2::clone(), QgsSymbolLayerV2::copyDataDefinedProperties(), mAngle, QgsSymbolLayerV2::mColor, mColor2, mCoordinateMode, mGradientColorType, mGradientRamp, mGradientSpread, mGradientType, mOffset, mOffsetMapUnitScale, mOffsetUnit, mReferencePoint1, mReferencePoint1IsCentroid, mReferencePoint2, mReferencePoint2IsCentroid, QgsGradientFillSymbolLayerV2(), setAngle(), setColorRamp(), setOffset(), setOffsetMapUnitScale(), setOffsetUnit(), setReferencePoint1(), setReferencePoint1IsCentroid(), setReferencePoint2(), and setReferencePoint2IsCentroid().
|
inline |
Color for endpoint of gradient, only used if the gradient color type is set to SimpleTwoColor.
Definition at line 220 of file qgsfillsymbollayerv2.h.
Referenced by applyDataDefinedSymbology(), applyGradient(), create(), and QgsGradientFillSymbolLayerV2().
|
inline |
Color ramp used for the gradient fill, only used if the gradient color type is set to ColorRamp.
Definition at line 216 of file qgsfillsymbollayerv2.h.
|
inline |
Coordinate mode for gradient.
Controls how the gradient stops are positioned.
Definition at line 224 of file qgsfillsymbollayerv2.h.
Referenced by applyDataDefinedSymbology(), and create().
|
static |
Definition at line 381 of file qgsfillsymbollayerv2.cpp.
References angle(), QgsSymbolLayerV2::color(), color2(), coordinateMode(), QgsVectorGradientColorRampV2::create(), QgsSymbolLayerV2Utils::decodeColor(), QgsSymbolLayerV2Utils::decodeMapUnitScale(), QgsSymbolLayerV2Utils::decodeOutputUnit(), QgsSymbolLayerV2Utils::decodePoint(), DEFAULT_SIMPLEFILL_COLOR, Feature, gradientSpread(), Linear, offset(), Pad, QgsGradientFillSymbolLayerV2(), referencePoint1(), referencePoint2(), setAngle(), setColorRamp(), QgsSymbolLayerV2::setDataDefinedProperty(), setOffset(), setOffsetMapUnitScale(), setOffsetUnit(), setReferencePoint1(), setReferencePoint1IsCentroid(), setReferencePoint2(), setReferencePoint2IsCentroid(), SimpleTwoColor, and QgsSymbolLayerV2::type().
Referenced by QgsSymbolLayerV2Registry::QgsSymbolLayerV2Registry().
|
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 806 of file qgsfillsymbollayerv2.cpp.
References mOffset.
|
inline |
Gradient color mode, controls how gradient color stops are created.
Definition at line 212 of file qgsfillsymbollayerv2.h.
|
inline |
Gradient spread mode.
Controls how the gradient behaves outside of the predefined stops
Definition at line 228 of file qgsfillsymbollayerv2.h.
Referenced by create().
|
inline |
Type of gradient, eg linear or radial.
Definition at line 208 of file qgsfillsymbollayerv2.h.
Referenced by applyDataDefinedSymbology().
|
virtual |
Implements QgsSymbolLayerV2.
Definition at line 476 of file qgsfillsymbollayerv2.cpp.
|
virtual |
Reimplemented from QgsSymbolLayerV2.
Definition at line 827 of file qgsfillsymbollayerv2.cpp.
References mOffsetMapUnitScale.
|
inline |
Definition at line 253 of file qgsfillsymbollayerv2.h.
Referenced by create(), and renderPolygon().
|
inline |
Definition at line 260 of file qgsfillsymbollayerv2.h.
|
inline |
Definition at line 257 of file qgsfillsymbollayerv2.h.
|
virtual |
Reimplemented from QgsSymbolLayerV2.
Definition at line 817 of file qgsfillsymbollayerv2.cpp.
References mOffsetUnit.
|
virtual |
Implements QgsSymbolLayerV2.
Definition at line 764 of file qgsfillsymbollayerv2.cpp.
References QgsSymbolLayerV2Utils::encodeColor(), QgsSymbolLayerV2Utils::encodeMapUnitScale(), QgsSymbolLayerV2Utils::encodeOutputUnit(), QgsSymbolLayerV2Utils::encodePoint(), mAngle, QgsSymbolLayerV2::mColor, mColor2, mCoordinateMode, mGradientColorType, mGradientRamp, mGradientSpread, mGradientType, mOffset, mOffsetMapUnitScale, mOffsetUnit, mReferencePoint1, mReferencePoint1IsCentroid, mReferencePoint2, mReferencePoint2IsCentroid, QgsVectorColorRampV2::properties(), and QgsSymbolLayerV2::saveDataDefinedProperties().
|
inline |
Definition at line 233 of file qgsfillsymbollayerv2.h.
Referenced by applyGradient(), and create().
|
inline |
Definition at line 237 of file qgsfillsymbollayerv2.h.
|
inline |
Definition at line 241 of file qgsfillsymbollayerv2.h.
Referenced by applyGradient(), and create().
|
inline |
Definition at line 245 of file qgsfillsymbollayerv2.h.
|
virtual |
Implements QgsFillSymbolLayerV2.
Definition at line 734 of file qgsfillsymbollayerv2.cpp.
References QgsFillSymbolLayerV2::_renderPolygon(), applyDataDefinedSymbology(), QgsSymbolLayerV2Utils::lineWidthScaleFactor(), mBrush, mOffset, mOffsetMapUnitScale, mOffsetUnit, mSelBrush, offset(), QgsRenderContext::painter(), QgsSymbolV2RenderContext::renderContext(), and QgsSymbolV2RenderContext::selected().
|
private |
rotates a reference point by a specified angle around the point (0.5, 0.5)
Definition at line 626 of file qgsfillsymbollayerv2.cpp.
References angle().
Referenced by applyGradient().
|
inline |
Rotation angle for gradient fill.
Can be used to rotate a gradient around its centre point
Definition at line 248 of file qgsfillsymbollayerv2.h.
References QgsFillSymbolLayerV2::angle().
|
inline |
Definition at line 221 of file qgsfillsymbollayerv2.h.
void QgsGradientFillSymbolLayerV2::setColorRamp | ( | QgsVectorColorRampV2 * | ramp | ) |
Definition at line 470 of file qgsfillsymbollayerv2.cpp.
References mGradientRamp.
|
inline |
Definition at line 225 of file qgsfillsymbollayerv2.h.
|
inline |
Definition at line 213 of file qgsfillsymbollayerv2.h.
|
inline |
Definition at line 229 of file qgsfillsymbollayerv2.h.
|
inline |
Definition at line 209 of file qgsfillsymbollayerv2.h.
|
virtual |
Reimplemented from QgsSymbolLayerV2.
Definition at line 822 of file qgsfillsymbollayerv2.cpp.
References mOffsetMapUnitScale.
|
inline |
Offset for gradient fill.
Definition at line 252 of file qgsfillsymbollayerv2.h.
|
inline |
Definition at line 259 of file qgsfillsymbollayerv2.h.
|
inline |
Units for gradient fill offset.
Definition at line 256 of file qgsfillsymbollayerv2.h.
|
virtual |
Reimplemented from QgsSymbolLayerV2.
Definition at line 812 of file qgsfillsymbollayerv2.cpp.
References mOffsetUnit.
|
inline |
Starting point of gradient fill, in the range [0,0] - [1,1].
Definition at line 232 of file qgsfillsymbollayerv2.h.
|
inline |
Sets the starting point of the gradient to be the feature centroid.
Definition at line 236 of file qgsfillsymbollayerv2.h.
|
inline |
End point of gradient fill, in the range [0,0] - [1,1].
Definition at line 240 of file qgsfillsymbollayerv2.h.
|
inline |
Sets the end point of the gradient to be the feature centroid.
Definition at line 244 of file qgsfillsymbollayerv2.h.
|
virtual |
Implements QgsSymbolLayerV2.
Definition at line 719 of file qgsfillsymbollayerv2.cpp.
References QgsSymbolV2RenderContext::alpha(), QgsSymbolV2RenderContext::fields(), mSelBrush, QgsSymbolLayerV2::prepareExpressions(), QgsSymbolV2RenderContext::renderContext(), QgsRenderContext::rendererScale(), QgsRenderContext::selectionColor(), and QgsSymbolLayerV2::selectionIsOpaque.
|
virtual |
Implements QgsSymbolLayerV2.
Definition at line 729 of file qgsfillsymbollayerv2.cpp.
|
protected |
Definition at line 283 of file qgsfillsymbollayerv2.h.
Referenced by applyDataDefinedSymbology(), clone(), and properties().
|
protected |
Definition at line 269 of file qgsfillsymbollayerv2.h.
Referenced by applyDataDefinedSymbology(), and renderPolygon().
|
protected |
Definition at line 273 of file qgsfillsymbollayerv2.h.
Referenced by applyDataDefinedSymbology(), clone(), properties(), and QgsGradientFillSymbolLayerV2().
|
protected |
Definition at line 276 of file qgsfillsymbollayerv2.h.
Referenced by applyDataDefinedSymbology(), clone(), and properties().
|
protected |
Definition at line 272 of file qgsfillsymbollayerv2.h.
Referenced by applyDataDefinedSymbology(), clone(), and properties().
|
protected |
Definition at line 274 of file qgsfillsymbollayerv2.h.
Referenced by applyDataDefinedSymbology(), clone(), properties(), setColorRamp(), and ~QgsGradientFillSymbolLayerV2().
|
protected |
Definition at line 277 of file qgsfillsymbollayerv2.h.
Referenced by applyDataDefinedSymbology(), clone(), and properties().
|
protected |
Definition at line 275 of file qgsfillsymbollayerv2.h.
Referenced by applyDataDefinedSymbology(), clone(), and properties().
|
protected |
Definition at line 285 of file qgsfillsymbollayerv2.h.
Referenced by clone(), estimateMaxBleed(), properties(), and renderPolygon().
|
protected |
Definition at line 287 of file qgsfillsymbollayerv2.h.
Referenced by clone(), mapUnitScale(), properties(), renderPolygon(), and setMapUnitScale().
|
protected |
Definition at line 286 of file qgsfillsymbollayerv2.h.
Referenced by clone(), outputUnit(), properties(), renderPolygon(), and setOutputUnit().
|
protected |
Definition at line 279 of file qgsfillsymbollayerv2.h.
Referenced by applyDataDefinedSymbology(), clone(), and properties().
|
protected |
Definition at line 280 of file qgsfillsymbollayerv2.h.
Referenced by applyDataDefinedSymbology(), clone(), and properties().
|
protected |
Definition at line 281 of file qgsfillsymbollayerv2.h.
Referenced by applyDataDefinedSymbology(), clone(), and properties().
|
protected |
Definition at line 282 of file qgsfillsymbollayerv2.h.
Referenced by applyDataDefinedSymbology(), clone(), and properties().
|
protected |
Definition at line 270 of file qgsfillsymbollayerv2.h.
Referenced by renderPolygon(), and startRender().