QGIS API Documentation
2.18.21-Las Palmas (9fba24a)
|
Evaluates and returns the diagram settings relating to a diagram for a specific feature. More...
#include <qgsdiagramrendererv2.h>
Public Member Functions | |
QgsDiagramRendererV2 () | |
virtual | ~QgsDiagramRendererV2 () |
bool | attributeLegend () const |
Returns true if renderer will show legend items for diagram attributes. More... | |
virtual QgsDiagramRendererV2 * | clone () const =0 |
Returns new instance that is equivalent to this one. More... | |
QgsDiagram * | diagram () const |
virtual QList< QString > | diagramAttributes () const =0 |
Returns attribute indices needed for diagram rendering. More... | |
virtual QList< QgsDiagramSettings > | diagramSettings () const =0 |
Returns list with all diagram settings in the renderer. More... | |
virtual QList< QgsLayerTreeModelLegendNode *> | legendItems (QgsLayerTreeLayer *nodeLayer) const |
Returns list of legend nodes for the diagram. More... | |
virtual void | readXML (const QDomElement &elem, const QgsVectorLayer *layer)=0 |
virtual QSet< QString > | referencedFields (const QgsExpressionContext &context=QgsExpressionContext(), const QgsFields &fields=QgsFields()) const |
Returns the set of any fields required for diagram rendering. More... | |
void | renderDiagram (const QgsFeature &feature, QgsRenderContext &c, QPointF pos) const |
virtual QString | rendererName () const =0 |
void | setAttributeLegend (bool enabled) |
Sets whether the renderer will show legend items for diagram attributes. More... | |
void | setDiagram (QgsDiagram *d) |
void | setSizeLegend (bool enabled) |
Sets whether the renderer will show legend items for diagram sizes. More... | |
void | setSizeLegendSymbol (QgsMarkerSymbolV2 *symbol) |
Sets the marker symbol used for rendering the diagram size legend. More... | |
bool | sizeLegend () const |
Returns true if renderer will show legend items for diagram sizes. More... | |
QgsMarkerSymbolV2 * | sizeLegendSymbol () const |
Returns the marker symbol used for rendering the diagram size legend. More... | |
virtual QSizeF | sizeMapUnits (const QgsFeature &feature, const QgsRenderContext &c) const |
Returns size of the diagram for a feature in map units. More... | |
virtual void | writeXML (QDomElement &layerElem, QDomDocument &doc, const QgsVectorLayer *layer) const =0 |
Protected Member Functions | |
QgsDiagramRendererV2 (const QgsDiagramRendererV2 &other) | |
void | _readXML (const QDomElement &elem, const QgsVectorLayer *layer) |
void | _writeXML (QDomElement &rendererElem, QDomDocument &doc, const QgsVectorLayer *layer) const |
void | convertSizeToMapUnits (QSizeF &size, const QgsRenderContext &context) const |
Converts size from mm to map units. More... | |
virtual bool | diagramSettings (const QgsFeature &feature, const QgsRenderContext &c, QgsDiagramSettings &s) const =0 |
Returns diagram settings for a feature (or false if the diagram for the feature is not to be rendered). More... | |
virtual QSizeF | diagramSize (const QgsFeature &features, const QgsRenderContext &c) const =0 |
Returns size of the diagram (in painter units) or an invalid size in case of error. More... | |
QgsDiagramRendererV2 & | operator= (const QgsDiagramRendererV2 &other) |
Static Protected Member Functions | |
static int | dpiPaintDevice (const QPainter *) |
Returns the paint device dpi (or -1 in case of error. More... | |
Protected Attributes | |
QgsDiagram * | mDiagram |
Reference to the object that does the real diagram rendering. More... | |
bool | mShowAttributeLegend |
Whether to show an attribute legend for the diagrams. More... | |
bool | mShowSizeLegend |
Whether to show a size legend for the diagrams. More... | |
QScopedPointer< QgsMarkerSymbolV2 > | mSizeLegendSymbol |
Marker symbol to use in size legends. More... | |
Evaluates and returns the diagram settings relating to a diagram for a specific feature.
Definition at line 425 of file qgsdiagramrendererv2.h.
QgsDiagramRendererV2::QgsDiagramRendererV2 | ( | ) |
Definition at line 388 of file qgsdiagramrendererv2.cpp.
|
virtual |
Definition at line 396 of file qgsdiagramrendererv2.cpp.
|
protected |
Definition at line 407 of file qgsdiagramrendererv2.cpp.
|
protected |
Definition at line 503 of file qgsdiagramrendererv2.cpp.
|
protected |
Definition at line 534 of file qgsdiagramrendererv2.cpp.
|
inline |
Returns true if renderer will show legend items for diagram attributes.
Definition at line 474 of file qgsdiagramrendererv2.h.
|
pure virtual |
Returns new instance that is equivalent to this one.
Implemented in QgsLinearlyInterpolatedDiagramRenderer, and QgsSingleCategoryDiagramRenderer.
|
protected |
Converts size from mm to map units.
Definition at line 478 of file qgsdiagramrendererv2.cpp.
|
inline |
Definition at line 455 of file qgsdiagramrendererv2.h.
Returns attribute indices needed for diagram rendering.
Implemented in QgsLinearlyInterpolatedDiagramRenderer, and QgsSingleCategoryDiagramRenderer.
|
pure virtual |
Returns list with all diagram settings in the renderer.
Implemented in QgsLinearlyInterpolatedDiagramRenderer, and QgsSingleCategoryDiagramRenderer.
|
protectedpure virtual |
Returns diagram settings for a feature (or false if the diagram for the feature is not to be rendered).
Used internally within renderDiagram()
feature | the feature |
c | render context |
s | out: diagram settings for the feature |
Implemented in QgsLinearlyInterpolatedDiagramRenderer, and QgsSingleCategoryDiagramRenderer.
|
protectedpure virtual |
Returns size of the diagram (in painter units) or an invalid size in case of error.
Implemented in QgsLinearlyInterpolatedDiagramRenderer, and QgsSingleCategoryDiagramRenderer.
|
staticprotected |
Returns the paint device dpi (or -1 in case of error.
Definition at line 490 of file qgsdiagramrendererv2.cpp.
|
virtual |
Returns list of legend nodes for the diagram.
Reimplemented in QgsLinearlyInterpolatedDiagramRenderer, and QgsSingleCategoryDiagramRenderer.
Definition at line 718 of file qgsdiagramrendererv2.cpp.
|
protected |
Definition at line 415 of file qgsdiagramrendererv2.cpp.
|
pure virtual |
Implemented in QgsLinearlyInterpolatedDiagramRenderer, and QgsSingleCategoryDiagramRenderer.
|
virtual |
Returns the set of any fields required for diagram rendering.
context | expression context the diagrams will be drawn using |
fields | layer fields |
Reimplemented in QgsLinearlyInterpolatedDiagramRenderer.
Definition at line 458 of file qgsdiagramrendererv2.cpp.
void QgsDiagramRendererV2::renderDiagram | ( | const QgsFeature & | feature, |
QgsRenderContext & | c, | ||
QPointF | pos | ||
) | const |
Definition at line 424 of file qgsdiagramrendererv2.cpp.
|
pure virtual |
Implemented in QgsLinearlyInterpolatedDiagramRenderer, and QgsSingleCategoryDiagramRenderer.
|
inline |
Sets whether the renderer will show legend items for diagram attributes.
enabled | set to true to show diagram attribute legend |
Definition at line 482 of file qgsdiagramrendererv2.h.
void QgsDiagramRendererV2::setDiagram | ( | QgsDiagram * | d | ) |
Definition at line 401 of file qgsdiagramrendererv2.cpp.
|
inline |
Sets whether the renderer will show legend items for diagram sizes.
enabled | set to true to show diagram size legend |
Definition at line 499 of file qgsdiagramrendererv2.h.
|
inline |
Sets the marker symbol used for rendering the diagram size legend.
symbol | marker symbol, ownership is transferred to the renderer. |
Definition at line 514 of file qgsdiagramrendererv2.h.
|
inline |
Returns true if renderer will show legend items for diagram sizes.
Definition at line 490 of file qgsdiagramrendererv2.h.
|
inline |
Returns the marker symbol used for rendering the diagram size legend.
Definition at line 506 of file qgsdiagramrendererv2.h.
|
virtual |
Returns size of the diagram for a feature in map units.
Returns an invalid QSizeF in case of error
Definition at line 440 of file qgsdiagramrendererv2.cpp.
|
pure virtual |
Implemented in QgsLinearlyInterpolatedDiagramRenderer, and QgsSingleCategoryDiagramRenderer.
|
protected |
Reference to the object that does the real diagram rendering.
Definition at line 541 of file qgsdiagramrendererv2.h.
|
protected |
Whether to show an attribute legend for the diagrams.
Definition at line 544 of file qgsdiagramrendererv2.h.
|
protected |
Whether to show a size legend for the diagrams.
Definition at line 547 of file qgsdiagramrendererv2.h.
|
protected |
Marker symbol to use in size legends.
Definition at line 550 of file qgsdiagramrendererv2.h.