QGIS API Documentation
2.12.0-Lyon
|
#include <qgsrendererv2.h>
Public Types | |
enum | Capabilities { SymbolLevels = 1, RotationField = 1 << 1, MoreSymbolsPerFeature = 1 << 2, Filter = 1 << 3, ScaleDependent = 1 << 4 } |
Public Member Functions | |
virtual | ~QgsFeatureRendererV2 () |
virtual int | capabilities () |
returns bitwise OR-ed capabilities of the renderer More... | |
virtual void | checkLegendSymbolItem (const QString &key, bool state=true) |
item in symbology was checked More... | |
virtual QgsFeatureRendererV2 * | clone () const =0 |
virtual QString | dump () const |
for debugging More... | |
virtual QString | filter () |
If a renderer does not require all the features this method may be overridden and return an expression used as where clause. More... | |
bool | forceRasterRender () const |
Returns whether the renderer must render as a raster. More... | |
virtual QString | legendClassificationAttribute () const |
If supported by the renderer, return classification attribute for the use in legend. More... | |
virtual bool | legendSymbolItemChecked (const QString &key) |
items of symbology items in legend is checked More... | |
virtual QgsLegendSymbolList | legendSymbolItems (double scaleDenominator=-1, const QString &rule="") |
return a list of item text / symbol More... | |
virtual bool | legendSymbolItemsCheckable () const |
items of symbology items in legend should be checkable More... | |
virtual QgsLegendSymbolListV2 | legendSymbolItemsV2 () const |
Return a list of symbology items for the legend. More... | |
virtual QgsLegendSymbologyList | legendSymbologyItems (QSize iconSize) |
return a list of symbology items for the legend More... | |
virtual void | modifyRequestExtent (QgsRectangle &extent, QgsRenderContext &context) |
Allows for a renderer to modify the extent of a feature request prior to rendering. More... | |
virtual Q_DECL_DEPRECATED QgsSymbolV2 * | originalSymbolForFeature (QgsFeature &feature) |
Return symbol for feature. More... | |
virtual QgsSymbolV2 * | originalSymbolForFeature (QgsFeature &feature, QgsRenderContext &context) |
Return symbol for feature. More... | |
virtual Q_DECL_DEPRECATED QgsSymbolV2List | originalSymbolsForFeature (QgsFeature &feat) |
Equivalent of originalSymbolsForFeature() call extended to support renderers that may use more symbols per feature - similar to symbolsForFeature() More... | |
virtual QgsSymbolV2List | originalSymbolsForFeature (QgsFeature &feat, QgsRenderContext &context) |
Equivalent of originalSymbolsForFeature() call extended to support renderers that may use more symbols per feature - similar to symbolsForFeature() More... | |
QgsPaintEffect * | paintEffect () const |
Returns the current paint effect for the renderer. More... | |
virtual bool | renderFeature (QgsFeature &feature, QgsRenderContext &context, int layer=-1, bool selected=false, bool drawVertexMarker=false) |
virtual Q_DECL_DEPRECATED QString | rotationField () const |
return rotation field name (or empty string if not set or not supported by renderer) More... | |
virtual QDomElement | save (QDomDocument &doc) |
store renderer info to XML element More... | |
void | setForceRasterRender (bool forceRaster) |
Sets whether the renderer should be rendered to a raster destination. More... | |
void | setPaintEffect (QgsPaintEffect *effect) |
Sets the current paint effect for the renderer. More... | |
virtual Q_DECL_DEPRECATED void | setRotationField (const QString &fieldName) |
sets rotation field of renderer (if supported by the renderer) More... | |
void | setUsingSymbolLevels (bool usingSymbolLevels) |
void | setVertexMarkerAppearance (int type, int size) |
set type and size of editing vertex markers for subsequent rendering More... | |
virtual void | startRender (QgsRenderContext &context, const QgsFields &fields)=0 |
Needs to be called when a new render cycle is started. More... | |
virtual Q_DECL_DEPRECATED void | startRender (QgsRenderContext &context, const QgsVectorLayer *vlayer) |
virtual void | stopRender (QgsRenderContext &context)=0 |
virtual Q_DECL_DEPRECATED QgsSymbolV2 * | symbolForFeature (QgsFeature &feature) |
To be overridden. More... | |
virtual QgsSymbolV2 * | symbolForFeature (QgsFeature &feature, QgsRenderContext &context) |
To be overridden. More... | |
virtual Q_DECL_DEPRECATED QgsSymbolV2List | symbols () |
for symbol levels More... | |
virtual QgsSymbolV2List | symbols (QgsRenderContext &context) |
Returns list of symbols used by the renderer. More... | |
virtual Q_DECL_DEPRECATED QgsSymbolV2List | symbolsForFeature (QgsFeature &feat) |
return list of symbols used for rendering the feature. More... | |
virtual QgsSymbolV2List | symbolsForFeature (QgsFeature &feat, QgsRenderContext &context) |
Returns list of symbols used for rendering the feature. More... | |
virtual void | toSld (QDomDocument &doc, QDomElement &element) const |
used from subclasses to create SLD Rule elements following SLD v1.1 specs More... | |
QString | type () const |
virtual QList< QString > | usedAttributes ()=0 |
bool | usingSymbolLevels () const |
virtual Q_DECL_DEPRECATED bool | willRenderFeature (QgsFeature &feat) |
return whether the renderer will render a feature or not. More... | |
virtual bool | willRenderFeature (QgsFeature &feat, QgsRenderContext &context) |
Returns whether the renderer will render a feature or not. More... | |
virtual Q_DECL_DEPRECATED QDomElement | writeSld (QDomDocument &doc, const QgsVectorLayer &layer) const |
create the SLD UserStyle element following the SLD v1.1 specs More... | |
virtual QDomElement | writeSld (QDomDocument &doc, const QString &styleName) const |
create the SLD UserStyle element following the SLD v1.1 specs with the given name More... | |
Static Public Member Functions | |
static QgsFeatureRendererV2 * | defaultRenderer (QGis::GeometryType geomType) |
return a new renderer - used by default in vector layers More... | |
static QgsFeatureRendererV2 * | load (QDomElement &symbologyElem) |
create a renderer from XML element More... | |
static QgsFeatureRendererV2 * | loadSld (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. More... | |
Protected Member Functions | |
QgsFeatureRendererV2 (const QString &type) | |
void | copyPaintEffect (QgsFeatureRendererV2 *destRenderer) const |
Copies paint effect of this renderer to another renderer. More... | |
void | renderFeatureWithSymbol (QgsFeature &feature, QgsSymbolV2 *symbol, QgsRenderContext &context, int layer, bool selected, bool drawVertexMarker) |
void | renderVertexMarker (const QPointF &pt, QgsRenderContext &context) |
render editing vertex marker at specified point More... | |
void | renderVertexMarkerPolygon (QPolygonF &pts, QList< QPolygonF > *rings, QgsRenderContext &context) |
render editing vertex marker for a polygon More... | |
void | renderVertexMarkerPolyline (QPolygonF &pts, QgsRenderContext &context) |
render editing vertex marker for a polyline More... | |
void | setScaleMethodToSymbol (QgsSymbolV2 *symbol, int scaleMethod) |
Static Protected Member Functions | |
static const unsigned char * | _getLineString (QPolygonF &pts, QgsRenderContext &context, const unsigned char *wkb, bool clipToExtent=true) |
static const unsigned char * | _getPoint (QPointF &pt, QgsRenderContext &context, const unsigned char *wkb) |
static const unsigned char * | _getPolygon (QPolygonF &pts, QList< QPolygonF > &holes, QgsRenderContext &context, const unsigned char *wkb, bool clipToExtent=true) |
static void | convertSymbolRotation (QgsSymbolV2 *symbol, const QString &field) |
static void | convertSymbolSizeScale (QgsSymbolV2 *symbol, QgsSymbolV2::ScaleMethod method, const QString &field) |
Protected Attributes | |
int | mCurrentVertexMarkerSize |
The current size of editing marker. More... | |
int | mCurrentVertexMarkerType |
The current type of editing marker. More... | |
bool | mForceRaster |
QgsPaintEffect * | mPaintEffect |
QString | mType |
bool | mUsingSymbolLevels |
Definition at line 74 of file qgsrendererv2.h.
Enumerator | |
---|---|
SymbolLevels | |
RotationField | |
MoreSymbolsPerFeature | |
Filter | |
ScaleDependent |
Definition at line 157 of file qgsrendererv2.h.
|
virtual |
Definition at line 226 of file qgsrendererv2.cpp.
|
protected |
Definition at line 214 of file qgsrendererv2.cpp.
|
staticprotected |
Definition at line 65 of file qgsrendererv2.cpp.
|
staticprotected |
Definition at line 45 of file qgsrendererv2.cpp.
|
staticprotected |
Definition at line 119 of file qgsrendererv2.cpp.
|
inlinevirtual |
returns bitwise OR-ed capabilities of the renderer
Reimplemented in QgsRuleBasedRendererV2, QgsGraduatedSymbolRendererV2, QgsCategorizedSymbolRendererV2, QgsInvertedPolygonRenderer, QgsSingleSymbolRendererV2, and QgsPointDisplacementRenderer.
Definition at line 167 of file qgsrendererv2.h.
|
virtual |
item in symbology was checked
Reimplemented in QgsRuleBasedRendererV2, QgsGraduatedSymbolRendererV2, and QgsCategorizedSymbolRendererV2.
Definition at line 659 of file qgsrendererv2.cpp.
|
pure virtual |
|
staticprotected |
Definition at line 802 of file qgsrendererv2.cpp.
|
staticprotected |
Definition at line 777 of file qgsrendererv2.cpp.
|
protected |
Copies paint effect of this renderer to another renderer.
destRenderer | destination renderer for copied effect |
Definition at line 205 of file qgsrendererv2.cpp.
|
static |
return a new renderer - used by default in vector layers
Definition at line 231 of file qgsrendererv2.cpp.
|
virtual |
for debugging
Reimplemented in QgsRuleBasedRendererV2, QgsGraduatedSymbolRendererV2, QgsCategorizedSymbolRendererV2, QgsInvertedPolygonRenderer, QgsSingleSymbolRendererV2, and QgsHeatmapRenderer.
Definition at line 468 of file qgsrendererv2.cpp.
|
inlinevirtual |
If a renderer does not require all the features this method may be overridden and return an expression used as where clause.
This will be called once after startRender() and before the first call to renderFeature(). By default this returns a null string and all features will be requested. You do not need to specify the extent in here, this is taken care of separately and will be combined with a filter returned from this method.
Reimplemented in QgsRuleBasedRendererV2.
Definition at line 144 of file qgsrendererv2.h.
|
inline |
Returns whether the renderer must render as a raster.
Definition at line 318 of file qgsrendererv2.h.
|
inlinevirtual |
If supported by the renderer, return classification attribute for the use in legend.
Reimplemented in QgsGraduatedSymbolRendererV2, and QgsCategorizedSymbolRendererV2.
Definition at line 238 of file qgsrendererv2.h.
|
virtual |
items of symbology items in legend is checked
Reimplemented in QgsRuleBasedRendererV2, QgsGraduatedSymbolRendererV2, and QgsCategorizedSymbolRendererV2.
Definition at line 653 of file qgsrendererv2.cpp.
|
virtual |
return a list of item text / symbol
Reimplemented in QgsRuleBasedRendererV2, QgsGraduatedSymbolRendererV2, QgsCategorizedSymbolRendererV2, QgsInvertedPolygonRenderer, QgsPointDisplacementRenderer, and QgsSingleSymbolRendererV2.
Definition at line 665 of file qgsrendererv2.cpp.
|
virtual |
items of symbology items in legend should be checkable
Reimplemented in QgsRuleBasedRendererV2, QgsGraduatedSymbolRendererV2, and QgsCategorizedSymbolRendererV2.
Definition at line 648 of file qgsrendererv2.cpp.
|
virtual |
Return a list of symbology items for the legend.
Better choice than legendSymbolItems(). Default fallback implementation just uses legendSymbolItems() implementation
Reimplemented in QgsRuleBasedRendererV2, QgsGraduatedSymbolRendererV2, QgsCategorizedSymbolRendererV2, and QgsSingleSymbolRendererV2.
Definition at line 672 of file qgsrendererv2.cpp.
|
virtual |
return a list of symbology items for the legend
Reimplemented in QgsRuleBasedRendererV2, QgsGraduatedSymbolRendererV2, QgsCategorizedSymbolRendererV2, QgsInvertedPolygonRenderer, QgsPointDisplacementRenderer, and QgsSingleSymbolRendererV2.
Definition at line 641 of file qgsrendererv2.cpp.
|
static |
create a renderer from XML element
Definition at line 490 of file qgsrendererv2.cpp.
|
static |
Create a new renderer according to the information contained in the UserStyle element of a SLD style document.
node | the node in the SLD document whose the UserStyle element is a child |
geomType | the geometry type of the features, used to convert Symbolizer elements |
errorMessage | it will contain the error message if something went wrong |
Definition at line 532 of file qgsrendererv2.cpp.
|
inlinevirtual |
Allows for a renderer to modify the extent of a feature request prior to rendering.
extent | reference to request's filter extent. Modify extent to change the extent of feature request |
context | render context |
Reimplemented in QgsHeatmapRenderer.
Definition at line 298 of file qgsrendererv2.h.
|
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.
Definition at line 252 of file qgsrendererv2.cpp.
|
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.
Reimplemented in QgsGraduatedSymbolRendererV2, QgsInvertedPolygonRenderer, QgsCategorizedSymbolRendererV2, QgsPointDisplacementRenderer, and QgsSingleSymbolRendererV2.
Definition at line 259 of file qgsrendererv2.cpp.
|
virtual |
Equivalent of originalSymbolsForFeature() call extended to support renderers that may use more symbols per feature - similar to symbolsForFeature()
Definition at line 748 of file qgsrendererv2.cpp.
|
virtual |
Equivalent of originalSymbolsForFeature() call extended to support renderers that may use more symbols per feature - similar to symbolsForFeature()
Reimplemented in QgsRuleBasedRendererV2, QgsInvertedPolygonRenderer, and QgsPointDisplacementRenderer.
Definition at line 758 of file qgsrendererv2.cpp.
QgsPaintEffect * QgsFeatureRendererV2::paintEffect | ( | ) | const |
Returns the current paint effect for the renderer.
Definition at line 766 of file qgsrendererv2.cpp.
|
virtual |
Reimplemented in QgsRuleBasedRendererV2, QgsInvertedPolygonRenderer, QgsPointDisplacementRenderer, and QgsHeatmapRenderer.
Definition at line 269 of file qgsrendererv2.cpp.
|
protected |
Definition at line 279 of file qgsrendererv2.cpp.
|
protected |
render editing vertex marker at specified point
Definition at line 702 of file qgsrendererv2.cpp.
|
protected |
render editing vertex marker for a polygon
Definition at line 715 of file qgsrendererv2.cpp.
|
protected |
render editing vertex marker for a polyline
Definition at line 709 of file qgsrendererv2.cpp.
|
inlinevirtual |
return rotation field name (or empty string if not set or not supported by renderer)
Reimplemented in QgsGraduatedSymbolRendererV2, QgsCategorizedSymbolRendererV2, and QgsSingleSymbolRendererV2.
Definition at line 245 of file qgsrendererv2.h.
|
virtual |
store renderer info to XML element
Reimplemented in QgsRuleBasedRendererV2, QgsGraduatedSymbolRendererV2, QgsCategorizedSymbolRendererV2, QgsInvertedPolygonRenderer, QgsPointDisplacementRenderer, QgsSingleSymbolRendererV2, and QgsHeatmapRenderer.
Definition at line 520 of file qgsrendererv2.cpp.
|
inline |
Sets whether the renderer should be rendered to a raster destination.
forceRaster | set to true if renderer must be drawn on a raster surface. This may be desirable for highly detailed layers where rendering as a vector would result in a large, complex vector output. |
Definition at line 327 of file qgsrendererv2.h.
void QgsFeatureRendererV2::setPaintEffect | ( | QgsPaintEffect * | effect | ) |
Sets the current paint effect for the renderer.
effect | paint effect. Ownership is transferred to the renderer. |
Definition at line 771 of file qgsrendererv2.cpp.
|
inlinevirtual |
sets rotation field of renderer (if supported by the renderer)
Reimplemented in QgsGraduatedSymbolRendererV2, QgsCategorizedSymbolRendererV2, and QgsSingleSymbolRendererV2.
Definition at line 249 of file qgsrendererv2.h.
|
protected |
Definition at line 190 of file qgsrendererv2.cpp.
|
inline |
Definition at line 181 of file qgsrendererv2.h.
void QgsFeatureRendererV2::setVertexMarkerAppearance | ( | int | type, |
int | size | ||
) |
set type and size of editing vertex markers for subsequent rendering
Definition at line 684 of file qgsrendererv2.cpp.
|
pure virtual |
Needs to be called when a new render cycle is started.
context | Additional information passed to the renderer about the job which will be rendered |
fields | The fields available for rendering |
Implemented in QgsRuleBasedRendererV2, QgsGraduatedSymbolRendererV2, QgsCategorizedSymbolRendererV2, QgsPointDisplacementRenderer, QgsInvertedPolygonRenderer, QgsHeatmapRenderer, and QgsSingleSymbolRendererV2.
|
virtual |
Definition at line 264 of file qgsrendererv2.cpp.
|
pure virtual |
|
virtual |
To be overridden.
feature | feature |
Definition at line 236 of file qgsrendererv2.cpp.
|
virtual |
To be overridden.
feature | feature |
context | render context |
Reimplemented in QgsRuleBasedRendererV2, QgsGraduatedSymbolRendererV2, QgsInvertedPolygonRenderer, QgsCategorizedSymbolRendererV2, QgsPointDisplacementRenderer, QgsHeatmapRenderer, and QgsSingleSymbolRendererV2.
Definition at line 243 of file qgsrendererv2.cpp.
|
virtual |
for symbol levels
Definition at line 473 of file qgsrendererv2.cpp.
|
virtual |
Returns list of symbols used by the renderer.
context | render context |
Reimplemented in QgsRuleBasedRendererV2, QgsGraduatedSymbolRendererV2, QgsCategorizedSymbolRendererV2, QgsInvertedPolygonRenderer, QgsSingleSymbolRendererV2, QgsPointDisplacementRenderer, and QgsHeatmapRenderer.
Definition at line 479 of file qgsrendererv2.cpp.
|
virtual |
return list of symbols used for rendering the feature.
For renderers that do not support MoreSymbolsPerFeature it is more efficient to use symbolForFeature()
Definition at line 730 of file qgsrendererv2.cpp.
|
virtual |
Returns list of symbols used for rendering the feature.
For renderers that do not support MoreSymbolsPerFeature it is more efficient to use symbolForFeature()
Reimplemented in QgsRuleBasedRendererV2, QgsInvertedPolygonRenderer, and QgsPointDisplacementRenderer.
Definition at line 740 of file qgsrendererv2.cpp.
|
inlinevirtual |
used from subclasses to create SLD Rule elements following SLD v1.1 specs
Reimplemented in QgsRuleBasedRendererV2, QgsGraduatedSymbolRendererV2, QgsCategorizedSymbolRendererV2, QgsSingleSymbolRendererV2, and QgsPointDisplacementRenderer.
Definition at line 209 of file qgsrendererv2.h.
|
inline |
Definition at line 82 of file qgsrendererv2.h.
|
inline |
Definition at line 180 of file qgsrendererv2.h.
|
virtual |
return whether the renderer will render a feature or not.
Must be called between startRender() and stopRender() calls. Default implementation uses symbolForFeature().
Definition at line 690 of file qgsrendererv2.cpp.
|
virtual |
Returns whether the renderer will render a feature or not.
Must be called between startRender() and stopRender() calls. Default implementation uses symbolForFeature().
Reimplemented in QgsRuleBasedRendererV2, QgsInvertedPolygonRenderer, and QgsPointDisplacementRenderer.
Definition at line 697 of file qgsrendererv2.cpp.
|
virtual |
create the SLD UserStyle element following the SLD v1.1 specs
Definition at line 621 of file qgsrendererv2.cpp.
|
virtual |
create the SLD UserStyle element following the SLD v1.1 specs with the given name
Definition at line 626 of file qgsrendererv2.cpp.
|
protected |
The current size of editing marker.
Definition at line 364 of file qgsrendererv2.h.
|
protected |
The current type of editing marker.
Definition at line 362 of file qgsrendererv2.h.
|
protected |
Definition at line 368 of file qgsrendererv2.h.
|
protected |
Definition at line 366 of file qgsrendererv2.h.
|
protected |
Definition at line 357 of file qgsrendererv2.h.
|
protected |
Definition at line 359 of file qgsrendererv2.h.