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
QgsGraduatedSymbolRendererV2 Class Reference

#include <qgsgraduatedsymbolrendererv2.h>

Inheritance diagram for QgsGraduatedSymbolRendererV2:
Inheritance graph
[legend]

Public Types

enum  Mode {
  EqualInterval, Quantile, Jenks, StdDev,
  Pretty, Custom
}
- Public Types inherited from QgsFeatureRendererV2
enum  Capabilities {
  SymbolLevels = 1, RotationField = 1 << 1, MoreSymbolsPerFeature = 1 << 2, Filter = 1 << 3,
  ScaleDependent = 1 << 4
}

Public Member Functions

 QgsGraduatedSymbolRendererV2 (QString attrName=QString(), QgsRangeList ranges=QgsRangeList())
 QgsGraduatedSymbolRendererV2 (const QgsGraduatedSymbolRendererV2 &other)
virtual ~QgsGraduatedSymbolRendererV2 ()
virtual QgsSymbolV2symbolForFeature (QgsFeature &feature)
 to be overridden
virtual QgsSymbolV2originalSymbolForFeature (QgsFeature &feature)
 Return symbol for feature.
virtual void startRender (QgsRenderContext &context, const QgsFields &fields)
virtual void stopRender (QgsRenderContext &context)
virtual QList< QString > usedAttributes ()
virtual QString dump () const
 for debugging
virtual QgsFeatureRendererV2clone () const
virtual void toSld (QDomDocument &doc, QDomElement &element) const
 used from subclasses to create SLD Rule elements following SLD v1.1 specs
virtual int capabilities ()
 returns bitwise OR-ed capabilities of the renderer
virtual QgsSymbolV2List symbols ()
 for symbol levels
QString classAttribute () const
void setClassAttribute (QString attr)
const QgsRangeListranges () const
bool updateRangeSymbol (int rangeIndex, QgsSymbolV2 *symbol)
bool updateRangeLabel (int rangeIndex, QString label)
bool updateRangeUpperValue (int rangeIndex, double value)
bool updateRangeLowerValue (int rangeIndex, double value)
bool updateRangeRenderState (int rangeIndex, bool render)
void addClass (QgsSymbolV2 *symbol)
void addClass (QgsRendererRangeV2 range)
void addClass (double lower, double upper)
void deleteClass (int idx)
void deleteAllClasses ()
void moveClass (int from, int to)
 Moves the category at index position from to index position to.
void sortByValue (Qt::SortOrder order=Qt::AscendingOrder)
void sortByLabel (Qt::SortOrder order=Qt::AscendingOrder)
Mode mode () const
void setMode (Mode mode)
void updateClasses (QgsVectorLayer *vlayer, Mode mode, int nclasses)
 Recalculate classes for a layer.
QList< double > getDataValues (QgsVectorLayer *vlayer)
 Evaluates the data expression and returns the list of values from the layer.
const
QgsRendererRangeV2LabelFormat
labelFormat () const
 Return the label format used to generate default classification labels.
void setLabelFormat (const QgsRendererRangeV2LabelFormat &labelFormat, bool updateRanges=false)
 Set the label format used to generate default classification labels.
void calculateLabelPrecision (bool updateRanges=true)
 Reset the label decimal places to a numberbased on the minimum class interval.
virtual QDomElement save (QDomDocument &doc)
 store renderer info to XML element
virtual QgsLegendSymbologyList legendSymbologyItems (QSize iconSize)
 return a list of symbology items for the legend
virtual QgsLegendSymbolList legendSymbolItems (double scaleDenominator=-1, QString rule=QString())
 return a list of item text / symbol
QgsSymbolV2sourceSymbol ()
void setSourceSymbol (QgsSymbolV2 *sym)
QgsVectorColorRampV2sourceColorRamp ()
void setSourceColorRamp (QgsVectorColorRampV2 *ramp)
bool invertedColorRamp ()
void setInvertedColorRamp (bool inverted)
void updateColorRamp (QgsVectorColorRampV2 *ramp=0, bool inverted=false)
 Update the color ramp used.
void updateSymbols (QgsSymbolV2 *sym)
 Update all the symbols but leave breaks and colors.
void setRotationField (QString fieldOrExpression)
 sets rotation field of renderer (if supported by the renderer)
QString rotationField () const
 return rotation field name (or empty string if not set or not supported by renderer)
void setSizeScaleField (QString fieldOrExpression)
QString sizeScaleField () const
void setScaleMethod (QgsSymbolV2::ScaleMethod scaleMethod)
QgsSymbolV2::ScaleMethod scaleMethod () const
virtual bool legendSymbolItemsCheckable () const
 items of symbology items in legend should be checkable
virtual bool legendSymbolItemChecked (QString key)
 item in symbology was checked
virtual void checkLegendSymbolItem (QString key, bool state=true)
 item in symbology was checked
virtual QString legendClassificationAttribute () const
 If supported by the renderer, return classification attribute for the use in legend.
- Public Member Functions inherited from QgsFeatureRendererV2
QString type () const
virtual Q_DECL_DEPRECATED void startRender (QgsRenderContext &context, const QgsVectorLayer *vlayer)
virtual ~QgsFeatureRendererV2 ()
virtual bool renderFeature (QgsFeature &feature, QgsRenderContext &context, int layer=-1, bool selected=false, bool drawVertexMarker=false)
bool usingSymbolLevels () const
void setUsingSymbolLevels (bool usingSymbolLevels)
virtual QDomElement writeSld (QDomDocument &doc, const QgsVectorLayer &layer) const
 create the SLD UserStyle element following the SLD v1.1 specs
virtual QgsLegendSymbolListV2 legendSymbolItemsV2 () const
 Return a list of symbology items for the legend.
void setVertexMarkerAppearance (int type, int size)
 set type and size of editing vertex markers for subsequent rendering
virtual bool willRenderFeature (QgsFeature &feat)
 return whether the renderer will render a feature or not.
virtual QgsSymbolV2List symbolsForFeature (QgsFeature &feat)
 return list of symbols used for rendering the feature.
virtual QgsSymbolV2List originalSymbolsForFeature (QgsFeature &feat)
 Equivalent of originalSymbolsForFeature() call extended to support renderers that may use more symbols per feature - similar to symbolsForFeature()

Static Public Member Functions

static
QgsGraduatedSymbolRendererV2
createRenderer (QgsVectorLayer *vlayer, QString attrName, int classes, Mode mode, QgsSymbolV2 *symbol, QgsVectorColorRampV2 *ramp, bool inverted=false, QgsRendererRangeV2LabelFormat legendFormat=QgsRendererRangeV2LabelFormat())
static QgsFeatureRendererV2create (QDomElement &element)
 create renderer from XML element
static
QgsGraduatedSymbolRendererV2
convertFromRenderer (const QgsFeatureRendererV2 *renderer)
 creates a QgsGraduatedSymbolRendererV2 from an existing renderer.
- Static Public Member Functions inherited from QgsFeatureRendererV2
static QgsFeatureRendererV2defaultRenderer (QGis::GeometryType geomType)
 return a new renderer - used by default in vector layers
static QgsFeatureRendererV2load (QDomElement &symbologyElem)
 create a renderer from XML element
static QgsFeatureRendererV2loadSld (const QDomNode &node, QGis::GeometryType geomType, QString &errorMessage)
 create a new renderer according to the information contained in the UserStyle element of a SLD style document

Protected Member Functions

QgsSymbolV2symbolForValue (double value)
- Protected Member Functions inherited from QgsFeatureRendererV2
 QgsFeatureRendererV2 (QString type)
void renderFeatureWithSymbol (QgsFeature &feature, QgsSymbolV2 *symbol, QgsRenderContext &context, int layer, bool selected, bool drawVertexMarker)
void renderVertexMarker (QPointF &pt, QgsRenderContext &context)
 render editing vertex marker at specified point
void renderVertexMarkerPolyline (QPolygonF &pts, QgsRenderContext &context)
 render editing vertex marker for a polyline
void renderVertexMarkerPolygon (QPolygonF &pts, QList< QPolygonF > *rings, QgsRenderContext &context)
 render editing vertex marker for a polygon
void setScaleMethodToSymbol (QgsSymbolV2 *symbol, int scaleMethod)

Protected Attributes

QString mAttrName
QgsRangeList mRanges
Mode mMode
QScopedPointer< QgsSymbolV2mSourceSymbol
QScopedPointer
< QgsVectorColorRampV2
mSourceColorRamp
bool mInvertedColorRamp
QgsRendererRangeV2LabelFormat mLabelFormat
QScopedPointer< QgsExpressionmRotation
QScopedPointer< QgsExpressionmSizeScale
QgsSymbolV2::ScaleMethod mScaleMethod
QScopedPointer< QgsExpressionmExpression
int mAttrNum
 attribute index (derived from attribute name in startRender)
bool mCounting
QHash< QgsSymbolV2
*, QgsSymbolV2 * > 
mTempSymbols
 temporary symbols, used for data-defined rotation and scaling
- Protected Attributes inherited from QgsFeatureRendererV2
QString mType
bool mUsingSymbolLevels
int mCurrentVertexMarkerType
 The current type of editing marker.
int mCurrentVertexMarkerSize
 The current size of editing marker.

Additional Inherited Members

- Static Protected Member Functions inherited from QgsFeatureRendererV2
static const unsigned char * _getPoint (QPointF &pt, QgsRenderContext &context, const unsigned char *wkb)
static const unsigned char * _getLineString (QPolygonF &pts, QgsRenderContext &context, const unsigned char *wkb)
static const unsigned char * _getPolygon (QPolygonF &pts, QList< QPolygonF > &holes, QgsRenderContext &context, const unsigned char *wkb)

Member Enumeration Documentation

Enumerator:
EqualInterval 
Quantile 
Jenks 
StdDev 
Pretty 
Custom 

Constructor & Destructor Documentation

QgsGraduatedSymbolRendererV2::QgsGraduatedSymbolRendererV2 ( QString  attrName = QString(),
QgsRangeList  ranges = QgsRangeList() 
)
QgsGraduatedSymbolRendererV2::QgsGraduatedSymbolRendererV2 ( const QgsGraduatedSymbolRendererV2 other)
QgsGraduatedSymbolRendererV2::~QgsGraduatedSymbolRendererV2 ( )
virtual

Member Function Documentation

void QgsGraduatedSymbolRendererV2::addClass ( QgsSymbolV2 symbol)
void QgsGraduatedSymbolRendererV2::addClass ( QgsRendererRangeV2  range)
Note
available in python bindings as addClassRange
void QgsGraduatedSymbolRendererV2::addClass ( double  lower,
double  upper 
)
Note
available in python bindings as addClassLowerUpper
void QgsGraduatedSymbolRendererV2::calculateLabelPrecision ( bool  updateRanges = true)

Reset the label decimal places to a numberbased on the minimum class interval.

Parameters
updateRangesif true then ranges currently using the default label will be updated
Note
Added in 2.6
virtual int QgsGraduatedSymbolRendererV2::capabilities ( )
inlinevirtual

returns bitwise OR-ed capabilities of the renderer

Reimplemented from QgsFeatureRendererV2.

void QgsGraduatedSymbolRendererV2::checkLegendSymbolItem ( QString  key,
bool  state = true 
)
virtual

item in symbology was checked

Note
added in 2.6

Reimplemented from QgsFeatureRendererV2.

QString QgsGraduatedSymbolRendererV2::classAttribute ( ) const
inline
QgsFeatureRendererV2 * QgsGraduatedSymbolRendererV2::clone ( ) const
virtual

Implements QgsFeatureRendererV2.

QgsGraduatedSymbolRendererV2 * QgsGraduatedSymbolRendererV2::convertFromRenderer ( const QgsFeatureRendererV2 renderer)
static

creates a QgsGraduatedSymbolRendererV2 from an existing renderer.

Note
added in 2.6
Returns
a new renderer if the conversion was possible, otherwise 0.
QgsFeatureRendererV2 * QgsGraduatedSymbolRendererV2::create ( QDomElement &  element)
static

create renderer from XML element

QgsGraduatedSymbolRendererV2 * QgsGraduatedSymbolRendererV2::createRenderer ( QgsVectorLayer vlayer,
QString  attrName,
int  classes,
Mode  mode,
QgsSymbolV2 symbol,
QgsVectorColorRampV2 ramp,
bool  inverted = false,
QgsRendererRangeV2LabelFormat  legendFormat = QgsRendererRangeV2LabelFormat() 
)
static
void QgsGraduatedSymbolRendererV2::deleteAllClasses ( )
void QgsGraduatedSymbolRendererV2::deleteClass ( int  idx)
QString QgsGraduatedSymbolRendererV2::dump ( ) const
virtual

for debugging

Reimplemented from QgsFeatureRendererV2.

QList< double > QgsGraduatedSymbolRendererV2::getDataValues ( QgsVectorLayer vlayer)

Evaluates the data expression and returns the list of values from the layer.

Parameters
vlayerThe layer for which to evaluate the expression
Note
Added in 2.6
bool QgsGraduatedSymbolRendererV2::invertedColorRamp ( )
inline
Note
added in 2.1
const QgsRendererRangeV2LabelFormat& QgsGraduatedSymbolRendererV2::labelFormat ( ) const
inline

Return the label format used to generate default classification labels.

Note
Added in 2.6
virtual QString QgsGraduatedSymbolRendererV2::legendClassificationAttribute ( ) const
inlinevirtual

If supported by the renderer, return classification attribute for the use in legend.

Note
added in 2.6

Reimplemented from QgsFeatureRendererV2.

bool QgsGraduatedSymbolRendererV2::legendSymbolItemChecked ( QString  key)
virtual

item in symbology was checked

Note
added in 2.6

Reimplemented from QgsFeatureRendererV2.

QgsLegendSymbolList QgsGraduatedSymbolRendererV2::legendSymbolItems ( double  scaleDenominator = -1,
QString  rule = QString() 
)
virtual

return a list of item text / symbol

Note
not available in python bindings

Reimplemented from QgsFeatureRendererV2.

bool QgsGraduatedSymbolRendererV2::legendSymbolItemsCheckable ( ) const
virtual

items of symbology items in legend should be checkable

Note
added in 2.5

Reimplemented from QgsFeatureRendererV2.

QgsLegendSymbologyList QgsGraduatedSymbolRendererV2::legendSymbologyItems ( QSize  iconSize)
virtual

return a list of symbology items for the legend

Reimplemented from QgsFeatureRendererV2.

Mode QgsGraduatedSymbolRendererV2::mode ( ) const
inline
void QgsGraduatedSymbolRendererV2::moveClass ( int  from,
int  to 
)

Moves the category at index position from to index position to.

QgsSymbolV2 * QgsGraduatedSymbolRendererV2::originalSymbolForFeature ( QgsFeature feature)
virtual

Return symbol for feature.

The difference compared to symbolForFeature() is that it returns original symbol which can be used as an identifier for renderer's rule - the former may return a temporary replacement of a symbol for use in rendering.

Note
added in 2.6

Reimplemented from QgsFeatureRendererV2.

const QgsRangeList& QgsGraduatedSymbolRendererV2::ranges ( ) const
inline
QString QgsGraduatedSymbolRendererV2::rotationField ( ) const
virtual

return rotation field name (or empty string if not set or not supported by renderer)

Reimplemented from QgsFeatureRendererV2.

QDomElement QgsGraduatedSymbolRendererV2::save ( QDomDocument &  doc)
virtual

store renderer info to XML element

Reimplemented from QgsFeatureRendererV2.

QgsSymbolV2::ScaleMethod QgsGraduatedSymbolRendererV2::scaleMethod ( ) const
inline
void QgsGraduatedSymbolRendererV2::setClassAttribute ( QString  attr)
inline
void QgsGraduatedSymbolRendererV2::setInvertedColorRamp ( bool  inverted)
inline
void QgsGraduatedSymbolRendererV2::setLabelFormat ( const QgsRendererRangeV2LabelFormat labelFormat,
bool  updateRanges = false 
)

Set the label format used to generate default classification labels.

Parameters
labelFormatThe string appended to classification labels
updateRangesIf true then ranges ending with the old unit string are updated to the new.
Note
Added in 2.6
void QgsGraduatedSymbolRendererV2::setMode ( Mode  mode)
inline
void QgsGraduatedSymbolRendererV2::setRotationField ( QString  fieldName)
virtual

sets rotation field of renderer (if supported by the renderer)

Reimplemented from QgsFeatureRendererV2.

void QgsGraduatedSymbolRendererV2::setScaleMethod ( QgsSymbolV2::ScaleMethod  scaleMethod)
void QgsGraduatedSymbolRendererV2::setSizeScaleField ( QString  fieldOrExpression)
void QgsGraduatedSymbolRendererV2::setSourceColorRamp ( QgsVectorColorRampV2 ramp)
void QgsGraduatedSymbolRendererV2::setSourceSymbol ( QgsSymbolV2 sym)
QString QgsGraduatedSymbolRendererV2::sizeScaleField ( ) const
void QgsGraduatedSymbolRendererV2::sortByLabel ( Qt::SortOrder  order = Qt::AscendingOrder)
void QgsGraduatedSymbolRendererV2::sortByValue ( Qt::SortOrder  order = Qt::AscendingOrder)
QgsVectorColorRampV2 * QgsGraduatedSymbolRendererV2::sourceColorRamp ( )
QgsSymbolV2 * QgsGraduatedSymbolRendererV2::sourceSymbol ( )
void QgsGraduatedSymbolRendererV2::startRender ( QgsRenderContext context,
const QgsFields fields 
)
virtual

Implements QgsFeatureRendererV2.

void QgsGraduatedSymbolRendererV2::stopRender ( QgsRenderContext context)
virtual

Implements QgsFeatureRendererV2.

QgsSymbolV2 * QgsGraduatedSymbolRendererV2::symbolForFeature ( QgsFeature feature)
virtual

to be overridden

Parameters
featurefeature
Returns
returns pointer to symbol or 0 if symbol was not found

Implements QgsFeatureRendererV2.

QgsSymbolV2 * QgsGraduatedSymbolRendererV2::symbolForValue ( double  value)
protected
QgsSymbolV2List QgsGraduatedSymbolRendererV2::symbols ( )
virtual

for symbol levels

Implements QgsFeatureRendererV2.

void QgsGraduatedSymbolRendererV2::toSld ( QDomDocument &  doc,
QDomElement &  element 
) const
virtual

used from subclasses to create SLD Rule elements following SLD v1.1 specs

Reimplemented from QgsFeatureRendererV2.

void QgsGraduatedSymbolRendererV2::updateClasses ( QgsVectorLayer vlayer,
Mode  mode,
int  nclasses 
)

Recalculate classes for a layer.

Parameters
vlayerThe layer being rendered (from which data values are calculated)
modeThe calculation mode
nclassesThe number of classes to calculate (approximate for some modes)
Note
Added in 2.6
void QgsGraduatedSymbolRendererV2::updateColorRamp ( QgsVectorColorRampV2 ramp = 0,
bool  inverted = false 
)

Update the color ramp used.

Also updates all symbols colors. Doesn't alter current breaks.

bool QgsGraduatedSymbolRendererV2::updateRangeLabel ( int  rangeIndex,
QString  label 
)
bool QgsGraduatedSymbolRendererV2::updateRangeLowerValue ( int  rangeIndex,
double  value 
)
bool QgsGraduatedSymbolRendererV2::updateRangeRenderState ( int  rangeIndex,
bool  render 
)
Note
added in 2.5
bool QgsGraduatedSymbolRendererV2::updateRangeSymbol ( int  rangeIndex,
QgsSymbolV2 symbol 
)
bool QgsGraduatedSymbolRendererV2::updateRangeUpperValue ( int  rangeIndex,
double  value 
)
void QgsGraduatedSymbolRendererV2::updateSymbols ( QgsSymbolV2 sym)

Update all the symbols but leave breaks and colors.

QList< QString > QgsGraduatedSymbolRendererV2::usedAttributes ( )
virtual

Implements QgsFeatureRendererV2.

Member Data Documentation

QString QgsGraduatedSymbolRendererV2::mAttrName
protected
int QgsGraduatedSymbolRendererV2::mAttrNum
protected

attribute index (derived from attribute name in startRender)

bool QgsGraduatedSymbolRendererV2::mCounting
protected
QScopedPointer<QgsExpression> QgsGraduatedSymbolRendererV2::mExpression
protected
bool QgsGraduatedSymbolRendererV2::mInvertedColorRamp
protected
QgsRendererRangeV2LabelFormat QgsGraduatedSymbolRendererV2::mLabelFormat
protected
Mode QgsGraduatedSymbolRendererV2::mMode
protected
QgsRangeList QgsGraduatedSymbolRendererV2::mRanges
protected
QScopedPointer<QgsExpression> QgsGraduatedSymbolRendererV2::mRotation
protected
QgsSymbolV2::ScaleMethod QgsGraduatedSymbolRendererV2::mScaleMethod
protected
QScopedPointer<QgsExpression> QgsGraduatedSymbolRendererV2::mSizeScale
protected
QScopedPointer<QgsVectorColorRampV2> QgsGraduatedSymbolRendererV2::mSourceColorRamp
protected
QScopedPointer<QgsSymbolV2> QgsGraduatedSymbolRendererV2::mSourceSymbol
protected
QHash<QgsSymbolV2*, QgsSymbolV2*> QgsGraduatedSymbolRendererV2::mTempSymbols
protected

temporary symbols, used for data-defined rotation and scaling


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