QwtPlotShapeItem - Man Page

A plot item, which displays any graphical shape, that can be defined by a QPainterPath.

Synopsis

#include <qwt_plot_shapeitem.h>

Inherits QwtPlotItem.

Public Types

enum PaintAttribute { ClipPolygons = 0x01 }
enum LegendMode { LegendShape, LegendColor }
Mode how to display the item on the legend.
typedef QFlags< PaintAttribute > PaintAttributes

Public Member Functions

QwtPlotShapeItem (const QString &title=QString())
Constructor.
QwtPlotShapeItem (const QwtText &title)
Constructor.
virtual ~QwtPlotShapeItem ()
Destructor.
void setPaintAttribute (PaintAttribute, bool on=true)
bool testPaintAttribute (PaintAttribute) const
void setLegendMode (LegendMode)
LegendMode legendMode () const
void setRect (const QRectF &)
Set a path built from a rectangle.
void setPolygon (const QPolygonF &)
Set a path built from a polygon.
void setShape (const QPainterPath &)
Set the shape to be displayed.
QPainterPath shape () const
void setPen (const QColor &, qreal width=0.0, Qt::PenStyle=Qt::SolidLine)
void setPen (const QPen &)
Assign a pen.
QPen pen () const
void setBrush (const QBrush &)
QBrush brush () const
void setRenderTolerance (double)
Set the tolerance for the weeding optimization.
double renderTolerance () const
virtual QRectF boundingRect () const override
Bounding rectangle of the shape.
virtual void draw (QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect) const override
virtual QwtGraphic legendIcon (int index, const QSizeF &) const override
virtual int rtti () const override

Additional Inherited Members

Detailed Description

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.

See also

QwtPlotZone, QwtPlotGraphicItem

Definition at line 38 of file qwt_plot_shapeitem.h.

Member Typedef Documentation

typedef QFlags<PaintAttribute > QwtPlotShapeItem::PaintAttributes

An ORed combination of PaintAttribute values.

Definition at line 61 of file qwt_plot_shapeitem.h.

Member Enumeration Documentation

enum QwtPlotShapeItem::LegendMode

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.

enum QwtPlotShapeItem::PaintAttribute

Attributes to modify the drawing algorithm. The default disables all attributes

See also

setPaintAttribute(), testPaintAttribute()

Enumerator

ClipPolygons

Clip polygons before painting them. In situations, where points are far outside the visible area (f.e when zooming deep) this might be a substantial improvement for the painting performance

But polygon clipping will convert the painter path into polygons what might introduce a negative impact on the performance of paths composed from curves or ellipses.

Definition at line 47 of file qwt_plot_shapeitem.h.

Constructor & Destructor Documentation

QwtPlotShapeItem::QwtPlotShapeItem (const QString & title = QString()) [explicit]

Constructor. Sets the following item attributes:

  • QwtPlotItem::AutoScale: true
  • QwtPlotItem::Legend: false
Parameters

title Title

Definition at line 112 of file qwt_plot_shapeitem.cpp.

QwtPlotShapeItem::QwtPlotShapeItem (const QwtText & title) [explicit]

Constructor. Sets the following item attributes:

  • QwtPlotItem::AutoScale: true
  • QwtPlotItem::Legend: false
Parameters

title Title

Definition at line 127 of file qwt_plot_shapeitem.cpp.

Member Function Documentation

QBrush QwtPlotShapeItem::brush () const

Returns

Brush used to fill the shape

See also

setBrush(), pen()

Definition at line 336 of file qwt_plot_shapeitem.cpp.

void QwtPlotShapeItem::draw (QPainter * painter, const QwtScaleMap & xMap, const QwtScaleMap & yMap, const QRectF & canvasRect) const [override], [virtual]

Draw the shape item

Parameters

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.

QwtGraphic QwtPlotShapeItem::legendIcon (int index, const QSizeF & size) const [override], [virtual]

Returns

A rectangle filled with the color of the brush ( or the pen )

Parameters

index Index of the legend entry ( usually there is only one )
size Icon size

See also

setLegendIconSize(), legendData()

Reimplemented from QwtPlotItem.

Definition at line 463 of file qwt_plot_shapeitem.cpp.

QwtPlotShapeItem::LegendMode QwtPlotShapeItem::legendMode () const

Returns

Mode how to represent the item on the legend

See also

legendMode()

Definition at line 199 of file qwt_plot_shapeitem.cpp.

QPen QwtPlotShapeItem::pen () const

Returns

Pen used to draw the outline of the shape

See also

setPen(), brush()

Definition at line 310 of file qwt_plot_shapeitem.cpp.

double QwtPlotShapeItem::renderTolerance () const

Returns

Tolerance for the weeding optimization

See also

setRenderTolerance()

Definition at line 372 of file qwt_plot_shapeitem.cpp.

int QwtPlotShapeItem::rtti () const [override], [virtual]

Returns

QwtPlotItem::Rtti_PlotShape

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

Parameters

brush Brush

See also

brush(), pen()

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

Parameters

mode Mode

See also

legendMode()

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

Parameters

attribute Paint attribute
on On/Off

See also

testPaintAttribute()

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.

Parameters

color Pen color
width Pen width
style Pen style

See also

pen(), brush()

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

Parameters

pen Pen

See also

pen(), brush()

Definition at line 297 of file qwt_plot_shapeitem.cpp.

void QwtPlotShapeItem::setPolygon (const QPolygonF & polygon)

Set a path built from a polygon.

Parameters

polygon Polygon

See also

setShape(), setRect(), shape()

Definition at line 230 of file qwt_plot_shapeitem.cpp.

void QwtPlotShapeItem::setRect (const QRectF & rect)

Set a path built from a rectangle.

Parameters

rect Rectangle

See also

setShape(), setPolygon(), shape()

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.

Parameters

tolerance Accepted error when reducing the number of points A value <= 0.0 disables weeding.

See also

renderTolerance(), QwtWeedingCurveFitter

Definition at line 357 of file qwt_plot_shapeitem.cpp.

void QwtPlotShapeItem::setShape (const QPainterPath & shape)

Set the shape to be displayed.

Parameters

shape Shape

See also

setShape(), shape()

Definition at line 244 of file qwt_plot_shapeitem.cpp.

QPainterPath QwtPlotShapeItem::shape () const

Returns

Shape to be displayed

See also

setShape()

Definition at line 266 of file qwt_plot_shapeitem.cpp.

bool QwtPlotShapeItem::testPaintAttribute (PaintAttribute attribute) const

Returns

True, when attribute is enabled

See also

setPaintAttribute()

Definition at line 175 of file qwt_plot_shapeitem.cpp.

Author

Generated automatically by Doxygen for Qwt User's Guide from the source code.

Info

Sun Jul 18 2021 Version 6.2.0 Qwt User's Guide