A plot item, which displays any graphical shape, that can be defined by a QPainterPath. More...
#include <qwt_plot_shapeitem.h>
Classes | |
class | PrivateData |
Public Types | |
enum | LegendMode { LegendShape, LegendColor } |
Mode how to display the item on the legend. More... | |
enum | PaintAttribute { ClipPolygons = 0x01 } |
Public Types inherited from QwtPlotItem | |
enum | ItemAttribute { Legend = 0x01, AutoScale = 0x02, Margins = 0x04 } |
Plot Item Attributes. More... | |
enum | ItemInterest { ScaleInterest = 0x01, LegendInterest = 0x02 } |
Plot Item Interests. More... | |
enum | RenderHint { RenderAntialiased = 0x1 } |
Render hints. More... | |
enum | RttiValues { Rtti_PlotItem = 0, Rtti_PlotGrid, Rtti_PlotScale, Rtti_PlotLegend, Rtti_PlotMarker, Rtti_PlotCurve, Rtti_PlotSpectroCurve, Rtti_PlotIntervalCurve, Rtti_PlotHistogram, Rtti_PlotSpectrogram, Rtti_PlotGraphic, Rtti_PlotTradingCurve, Rtti_PlotBarChart, Rtti_PlotMultiBarChart, Rtti_PlotShape, Rtti_PlotTextLabel, Rtti_PlotZone, Rtti_PlotVectorField, Rtti_PlotUserItem = 1000 } |
Runtime type information. More... | |
Public Member Functions | |
virtual QRectF | boundingRect () const QWT_OVERRIDE |
Bounding rectangle of the shape. More... | |
QBrush | brush () const |
virtual void | draw (QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect) const QWT_OVERRIDE |
virtual QwtGraphic | legendIcon (int index, const QSizeF &) const QWT_OVERRIDE |
LegendMode | legendMode () const |
QPen | pen () const |
QwtPlotShapeItem (const QString &title=QString()) | |
Constructor. More... | |
QwtPlotShapeItem (const QwtText &title) | |
Constructor. More... | |
double | renderTolerance () const |
virtual int | rtti () const QWT_OVERRIDE |
void | setBrush (const QBrush &) |
void | setLegendMode (LegendMode) |
void | setPaintAttribute (PaintAttribute, bool on=true) |
void | setPen (const QColor &, qreal width=0.0, Qt::PenStyle=Qt::SolidLine) |
void | setPen (const QPen &) |
Assign a pen. More... | |
void | setPolygon (const QPolygonF &) |
Set a path built from a polygon. More... | |
void | setRect (const QRectF &) |
Set a path built from a rectangle. More... | |
void | setRenderTolerance (double) |
Set the tolerance for the weeding optimization. More... | |
void | setShape (const QPainterPath &) |
Set the shape to be displayed. More... | |
QPainterPath | shape () const |
bool | testPaintAttribute (PaintAttribute) const |
virtual | ~QwtPlotShapeItem () |
Destructor. More... | |
Public Member Functions inherited from QwtPlotItem | |
void | attach (QwtPlot *plot) |
Attach the item to a plot. More... | |
void | detach () |
This method detaches a QwtPlotItem from any QwtPlot it has been associated with. More... | |
virtual void | getCanvasMarginHint (const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, double &left, double &top, double &right, double &bottom) const |
Calculate a hint for the canvas margin. More... | |
void | hide () |
Hide the item. More... | |
bool | isVisible () const |
virtual void | itemChanged () |
virtual void | legendChanged () |
virtual QList< QwtLegendData > | legendData () const |
Return all information, that is needed to represent the item on the legend. More... | |
QSize | legendIconSize () const |
QRectF | paintRect (const QwtScaleMap &, const QwtScaleMap &) const |
Calculate the bounding paint rectangle of 2 maps. More... | |
QwtPlot * | plot () const |
Return attached plot. More... | |
QwtPlotItem () | |
QwtPlotItem (const QString &title) | |
QwtPlotItem (const QwtText &title) | |
uint | renderThreadCount () const |
QRectF | scaleRect (const QwtScaleMap &, const QwtScaleMap &) const |
Calculate the bounding scale rectangle of 2 maps. More... | |
void | setAxes (QwtAxisId xAxis, QwtAxisId yAxis) |
void | setItemAttribute (ItemAttribute, bool on=true) |
void | setItemInterest (ItemInterest, bool on=true) |
void | setLegendIconSize (const QSize &) |
void | setRenderHint (RenderHint, bool on=true) |
void | setRenderThreadCount (uint numThreads) |
void | setTitle (const QString &title) |
void | setTitle (const QwtText &title) |
virtual void | setVisible (bool) |
void | setXAxis (QwtAxisId) |
void | setYAxis (QwtAxisId) |
void | setZ (double z) |
Set the z value. More... | |
void | show () |
Show the item. More... | |
bool | testItemAttribute (ItemAttribute) const |
bool | testItemInterest (ItemInterest) const |
bool | testRenderHint (RenderHint) const |
const QwtText & | title () const |
virtual void | updateLegend (const QwtPlotItem *, const QList< QwtLegendData > &) |
Update the item to changes of the legend info. More... | |
virtual void | updateScaleDiv (const QwtScaleDiv &, const QwtScaleDiv &) |
Update the item to changes of the axes scale division. More... | |
QwtAxisId | xAxis () const |
Return xAxis. More... | |
QwtAxisId | yAxis () const |
Return yAxis. More... | |
double | z () const |
virtual | ~QwtPlotItem () |
Destroy the QwtPlotItem. More... | |
Private Member Functions | |
void | init () |
Private Attributes | |
PrivateData * | m_data |
Additional Inherited Members | |
Protected Member Functions inherited from QwtPlotItem | |
QwtGraphic | defaultIcon (const QBrush &, const QSizeF &) const |
Return a default icon from a brush. More... | |
A plot item, which displays any graphical shape, that can be defined by a QPainterPath.
A QPainterPath is a shape composed from intersecting and uniting regions, rectangles, ellipses or irregular areas defined by lines, and curves. QwtPlotShapeItem displays a shape with a pen and brush.
QwtPlotShapeItem offers a couple of optimizations like clipping or weeding. These algorithms need to convert the painter path into polygons that might be less performant for paths built from curves and ellipses.
More complex shapes, that can't be expressed by a QPainterPath can be displayed using QwtPlotGraphicItem.
Definition at line 38 of file qwt_plot_shapeitem.h.
Mode how to display the item on the legend.
Enumerator | |
---|---|
LegendShape | Display a scaled down version of the shape. |
LegendColor | Display a filled rectangle. |
Definition at line 64 of file qwt_plot_shapeitem.h.
Attributes to modify the drawing algorithm. The default disables all attributes
Definition at line 47 of file qwt_plot_shapeitem.h.
|
explicit |
Constructor.
Sets the following item attributes:
title | Title |
Definition at line 112 of file qwt_plot_shapeitem.cpp.
|
explicit |
Constructor.
Sets the following item attributes:
title | Title |
Definition at line 127 of file qwt_plot_shapeitem.cpp.
|
virtual |
Destructor.
Definition at line 134 of file qwt_plot_shapeitem.cpp.
|
virtual |
Bounding rectangle of the shape.
Reimplemented from QwtPlotItem.
Definition at line 205 of file qwt_plot_shapeitem.cpp.
QBrush QwtPlotShapeItem::brush | ( | ) | const |
Definition at line 336 of file qwt_plot_shapeitem.cpp.
|
virtual |
Draw the shape item
painter | Painter |
xMap | X-Scale Map |
yMap | Y-Scale Map |
canvasRect | Contents rect of the plot canvas |
Implements QwtPlotItem.
Definition at line 385 of file qwt_plot_shapeitem.cpp.
|
private |
Definition at line 139 of file qwt_plot_shapeitem.cpp.
|
virtual |
index | Index of the legend entry ( usually there is only one ) |
size | Icon size |
Reimplemented from QwtPlotItem.
Definition at line 463 of file qwt_plot_shapeitem.cpp.
QwtPlotShapeItem::LegendMode QwtPlotShapeItem::legendMode | ( | ) | const |
Definition at line 199 of file qwt_plot_shapeitem.cpp.
QPen QwtPlotShapeItem::pen | ( | ) | const |
Definition at line 310 of file qwt_plot_shapeitem.cpp.
double QwtPlotShapeItem::renderTolerance | ( | ) | const |
Definition at line 372 of file qwt_plot_shapeitem.cpp.
|
virtual |
Reimplemented from QwtPlotItem.
Definition at line 151 of file qwt_plot_shapeitem.cpp.
void QwtPlotShapeItem::setBrush | ( | const QBrush & | brush | ) |
Assign a brush.
The brush is used to fill the path
brush | Brush |
Definition at line 323 of file qwt_plot_shapeitem.cpp.
void QwtPlotShapeItem::setLegendMode | ( | LegendMode | mode | ) |
Set the mode how to represent the item on the legend
mode | Mode |
Definition at line 186 of file qwt_plot_shapeitem.cpp.
void QwtPlotShapeItem::setPaintAttribute | ( | PaintAttribute | attribute, |
bool | on = true |
||
) |
Specify an attribute how to draw the shape
attribute | Paint attribute |
on | On/Off |
Definition at line 163 of file qwt_plot_shapeitem.cpp.
void QwtPlotShapeItem::setPen | ( | const QColor & | color, |
qreal | width = 0.0 , |
||
Qt::PenStyle | style = Qt::SolidLine |
||
) |
Build and assign a pen
In Qt5 the default pen width is 1.0 ( 0.0 in Qt4 ) what makes it non cosmetic ( see QPen::isCosmetic() ). This method has been introduced to hide this incompatibility.
color | Pen color |
width | Pen width |
style | Pen style |
Definition at line 284 of file qwt_plot_shapeitem.cpp.
void QwtPlotShapeItem::setPen | ( | const QPen & | pen | ) |
Assign a pen.
The pen is used to draw the outline of the shape
pen | Pen |
Definition at line 297 of file qwt_plot_shapeitem.cpp.
void QwtPlotShapeItem::setPolygon | ( | const QPolygonF & | polygon | ) |
Set a path built from a polygon.
polygon | Polygon |
Definition at line 230 of file qwt_plot_shapeitem.cpp.
void QwtPlotShapeItem::setRect | ( | const QRectF & | rect | ) |
Set a path built from a rectangle.
rect | Rectangle |
Definition at line 216 of file qwt_plot_shapeitem.cpp.
void QwtPlotShapeItem::setRenderTolerance | ( | double | tolerance | ) |
Set the tolerance for the weeding optimization.
After translating the shape into target device coordinate ( usually widget geometries ) the painter path can be simplified by a point weeding algorithm ( Douglas-Peucker ).
For shapes built from curves and ellipses weeding might have the opposite effect because they have to be expanded to polygons.
tolerance | Accepted error when reducing the number of points A value <= 0.0 disables weeding. |
Definition at line 357 of file qwt_plot_shapeitem.cpp.
void QwtPlotShapeItem::setShape | ( | const QPainterPath & | shape | ) |
Set the shape to be displayed.
shape | Shape |
Definition at line 244 of file qwt_plot_shapeitem.cpp.
QPainterPath QwtPlotShapeItem::shape | ( | ) | const |
Definition at line 266 of file qwt_plot_shapeitem.cpp.
bool QwtPlotShapeItem::testPaintAttribute | ( | PaintAttribute | attribute | ) | const |
Definition at line 175 of file qwt_plot_shapeitem.cpp.
|
private |
Definition at line 114 of file qwt_plot_shapeitem.h.