Qwt User's Guide: QwtPlotMarker Class Reference

Qwt User's Guide 6.2.0

Public Types | Public Member Functions | Protected Member Functions | List of all members
QwtPlotMarker Class Reference

A class for drawing markers. More...

`#include <qwt_plot_marker.h>`

Inheritance diagram for QwtPlotMarker:

## Public Types
enum | LineStyle { NoLine , HLine , VLine , Cross }
Public Types inherited from QwtPlotItem
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...
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...
typedef QFlags< ItemAttribute > | ItemAttributes
typedef QFlags< ItemInterest > | ItemInterests
typedef QFlags< RenderHint > | RenderHints

## Public Member Functions
| QwtPlotMarker ()
| Sets alignment to Qt::AlignCenter, and style to QwtPlotMarker::NoLine.
| QwtPlotMarker (const QString &title)
| Sets alignment to Qt::AlignCenter, and style to QwtPlotMarker::NoLine.
| QwtPlotMarker (const QwtText &title)
| Sets alignment to Qt::AlignCenter, and style to QwtPlotMarker::NoLine.
virtual | ~QwtPlotMarker ()
| Destructor.
virtual int | rtti () const override
double | xValue () const
| Return x Value.
double | yValue () const
| Return y Value.
QPointF | value () const
| Return Value.
void | setXValue (double)
| Set X Value.
void | setYValue (double)
| Set Y Value.
void | setValue (double, double)
| Set Value.
void | setValue (const QPointF &)
| Set Value.
void | setLineStyle (LineStyle)
| Set the line style. More...
LineStyle | lineStyle () const
void | setLinePen (const QColor &, qreal width=0.0, Qt::PenStyle=Qt::SolidLine)
void | setLinePen (const QPen &)
const QPen & | linePen () const
void | setSymbol (const QwtSymbol *)
| Assign a symbol. More...
const QwtSymbol * | symbol () const
void | setLabel (const QwtText &)
| Set the label. More...
QwtText | label () const
void | setLabelAlignment (Qt::Alignment)
| Set the alignment of the label. More...
Qt::Alignment | labelAlignment () const
void | setLabelOrientation (Qt::Orientation)
| Set the orientation of the label. More...
Qt::Orientation | labelOrientation () const
void | setSpacing (int)
| Set the spacing. More...
int | spacing () const
virtual void | draw (QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &) const override
virtual QRectF | boundingRect () const override
virtual QwtGraphic | legendIcon (int index, const QSizeF &) const override
Public Member Functions inherited from QwtPlotItem
| QwtPlotItem ()
| QwtPlotItem (const QString &title)
| QwtPlotItem (const QwtText &title)
virtual | ~QwtPlotItem ()
| Destroy the 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...
QwtPlot * | plot () const
| Return attached plot.
void | setTitle (const QString &title)
void | setTitle (const QwtText &title)
const QwtText & | title () const
void | setItemAttribute (ItemAttribute, bool on=true)
bool | testItemAttribute (ItemAttribute) const
void | setItemInterest (ItemInterest, bool on=true)
bool | testItemInterest (ItemInterest) const
void | setRenderHint (RenderHint, bool on=true)
bool | testRenderHint (RenderHint) const
void | setRenderThreadCount (uint numThreads)
uint | renderThreadCount () const
void | setLegendIconSize (const QSize &)
QSize | legendIconSize () const
double | z () const
void | setZ (double z)
| Set the z value. More...
void | show ()
| Show the item.
void | hide ()
| Hide the item.
virtual void | setVisible (bool)
bool | isVisible () const
void | setAxes (QwtAxisId xAxis, QwtAxisId yAxis)
void | setXAxis (QwtAxisId)
QwtAxisId | xAxis () const
| Return xAxis.
void | setYAxis (QwtAxisId)
QwtAxisId | yAxis () const
| Return yAxis.
virtual void | itemChanged ()
virtual void | legendChanged ()
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...
virtual void | updateScaleDiv (const QwtScaleDiv &, const QwtScaleDiv &)
| Update the item to changes of the axes scale division. More...
virtual void | updateLegend (const QwtPlotItem *, const QList< QwtLegendData > &)
| Update the item to changes of the legend info. More...
QRectF | scaleRect (const QwtScaleMap &, const QwtScaleMap &) const
| Calculate the bounding scale rectangle of 2 maps. More...
QRectF | paintRect (const QwtScaleMap &, const QwtScaleMap &) const
| Calculate the bounding paint rectangle of 2 maps. More...
virtual QList< QwtLegendData > | legendData () const
| Return all information, that is needed to represent the item on the legend. More...

## Protected Member Functions
virtual void | drawLines (QPainter *, const QRectF &, const QPointF &) const
virtual void | drawSymbol (QPainter *, const QRectF &, const QPointF &) const
virtual void | drawLabel (QPainter *, const QRectF &, const QPointF &) const
Protected Member Functions inherited from QwtPlotItem
QwtGraphic | defaultIcon (const QBrush &, const QSizeF &) const
| Return a default icon from a brush. More...

## Detailed Description

A class for drawing markers.

A marker can be a horizontal line, a vertical line, a symbol, a label or any combination of them, which can be drawn around a center point inside a bounding rectangle.

The setSymbol() member assigns a symbol to the marker. The symbol is drawn at the specified point.

With setLabel(), a label can be assigned to the marker. The setLabelAlignment() member specifies where the label is drawn. All the Align*-constants in Qt::AlignmentFlags (see Qt documentation) are valid. The interpretation of the alignment depends on the marker's line style. The alignment refers to the center point of the marker, which means, for example, that the label would be printed left above the center point if the alignment was set to Qt::AlignLeft | Qt::AlignTop.

Note
  QwtPlotTextLabel is intended to align a text label according to the geometry of canvas ( unrelated to plot coordinates )

Definition at line 45 of file qwt_plot_marker.h.

## Member Enumeration Documentation

## ◆ LineStyle

enum QwtPlotMarker::LineStyle

Line styles.

See also
  setLineStyle(), lineStyle()

Enumerator
NoLine | No line.
HLine | A horizontal line.
VLine | A vertical line.
Cross | A crosshair.

Definition at line 53 of file qwt_plot_marker.h.

## Member Function Documentation

## ◆ boundingRect()

QRectF QwtPlotMarker::boundingRect | ( |  | ) | const
| overridevirtual

Returns
  An invalid bounding rect: QRectF(1.0, 1.0, -2.0, -2.0)

Note
  A width or height < 0.0 is ignored by the autoscaler

Reimplemented from QwtPlotItem.

Definition at line 572 of file qwt_plot_marker.cpp.

## ◆ draw()

void QwtPlotMarker::draw | ( | QPainter * | painter,
|  | const QwtScaleMap & | xMap,
|  | const QwtScaleMap & | yMap,
|  | const QRectF & | canvasRect
| ) |  | const
| overridevirtual

Draw the marker

Parameters

  painter | Painter
  xMap | x Scale Map
  yMap | y Scale Map
  canvasRect | Contents rectangle of the canvas in painter coordinates

Implements QwtPlotItem.

Definition at line 142 of file qwt_plot_marker.cpp.

## ◆ drawLabel()

void QwtPlotMarker::drawLabel | ( | QPainter * | painter,
|  | const QRectF & | canvasRect,
|  | const QPointF & | pos
| ) |  | const
| protectedvirtual

Align and draw the text label of the marker

Parameters

  painter | Painter
  canvasRect | Contents rectangle of the canvas in painter coordinates
  pos | Position of the marker, translated into widget coordinates

See also
  drawLabel(), drawSymbol()

Definition at line 232 of file qwt_plot_marker.cpp.

## ◆ drawLines()

void QwtPlotMarker::drawLines | ( | QPainter * | painter,
|  | const QRectF & | canvasRect,
|  | const QPointF & | pos
| ) |  | const
| protectedvirtual

Draw the lines marker

Parameters

  painter | Painter
  canvasRect | Contents rectangle of the canvas in painter coordinates
  pos | Position of the marker, translated into widget coordinates

See also
  drawLabel(), drawSymbol()

Definition at line 163 of file qwt_plot_marker.cpp.

## ◆ drawSymbol()

void QwtPlotMarker::drawSymbol | ( | QPainter * | painter,
|  | const QRectF & | canvasRect,
|  | const QPointF & | pos
| ) |  | const
| protectedvirtual

Draw the symbol of the marker

Parameters

  painter | Painter
  canvasRect | Contents rectangle of the canvas in painter coordinates
  pos | Position of the marker, translated into widget coordinates

See also
  drawLabel(), QwtSymbol::drawSymbol()

Definition at line 203 of file qwt_plot_marker.cpp.

## ◆ label()

QwtText QwtPlotMarker::label | ( |  | ) | const

Returns
  the label

See also
  setLabel()

Definition at line 433 of file qwt_plot_marker.cpp.

## ◆ labelAlignment()

Qt::Alignment QwtPlotMarker::labelAlignment | ( |  | ) | const

Returns
  the label alignment

See also
  setLabelAlignment(), setLabelOrientation()

Definition at line 465 of file qwt_plot_marker.cpp.

## ◆ labelOrientation()

Qt::Orientation QwtPlotMarker::labelOrientation | ( |  | ) | const

Returns
  the label orientation

See also
  setLabelOrientation(), labelAlignment()

Definition at line 493 of file qwt_plot_marker.cpp.

## ◆ legendIcon()

QwtGraphic QwtPlotMarker::legendIcon | ( | int | index,
|  | const QSizeF & | size
| ) |  | const
| overridevirtual

Returns
  Icon representing the marker on the legend

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 598 of file qwt_plot_marker.cpp.

## ◆ linePen()

const QPen & QwtPlotMarker::linePen | ( |  | ) | const

Returns
  the line pen

See also
  setLinePen()

Definition at line 567 of file qwt_plot_marker.cpp.

## ◆ lineStyle()

QwtPlotMarker::LineStyle QwtPlotMarker::lineStyle | ( |  | ) | const

Returns
  the line style

See also
  setLineStyle()

Definition at line 381 of file qwt_plot_marker.cpp.

## ◆ rtti()

int QwtPlotMarker::rtti | ( |  | ) | const
| overridevirtual

Returns
  QwtPlotItem::Rtti_PlotMarker

Reimplemented from QwtPlotItem.

Definition at line 82 of file qwt_plot_marker.cpp.

## ◆ setLabel()

void QwtPlotMarker::setLabel | ( | const QwtText & | label | ) |

Set the label.

Parameters

  label | Label text

See also
  label()

Definition at line 420 of file qwt_plot_marker.cpp.

## ◆ setLabelAlignment()

void QwtPlotMarker::setLabelAlignment | ( | Qt::Alignment | align | ) |

Set the alignment of the label.

In case of QwtPlotMarker::HLine the alignment is relative to the y position of the marker, but the horizontal flags correspond to the canvas rectangle. In case of QwtPlotMarker::VLine the alignment is relative to the x position of the marker, but the vertical flags correspond to the canvas rectangle.

In all other styles the alignment is relative to the marker's position.

Parameters

  align | Alignment.

See also
  labelAlignment(), labelOrientation()

Definition at line 452 of file qwt_plot_marker.cpp.

## ◆ setLabelOrientation()

void QwtPlotMarker::setLabelOrientation | ( | Qt::Orientation | orientation | ) |

Set the orientation of the label.

When orientation is Qt::Vertical the label is rotated by 90.0 degrees ( from bottom to top ).

Parameters

  orientation | Orientation of the label

See also
  labelOrientation(), setLabelAlignment()

Definition at line 480 of file qwt_plot_marker.cpp.

## ◆ setLinePen() [1/2]

void QwtPlotMarker::setLinePen | ( | const QColor & | color,
|  | qreal | width = `0.0`,
|  | Qt::PenStyle | style = `Qt::SolidLine`
| ) |  |

Build and assign a line 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 541 of file qwt_plot_marker.cpp.

## ◆ setLinePen() [2/2]

void QwtPlotMarker::setLinePen | ( | const QPen & | pen | ) |

Specify a pen for the line.

Parameters

  pen | New pen

See also
  linePen()

Definition at line 552 of file qwt_plot_marker.cpp.

## ◆ setLineStyle()

void QwtPlotMarker::setLineStyle | ( | LineStyle | style | ) |

Set the line style.

Parameters

  style | Line style.

See also
  lineStyle()

Definition at line 366 of file qwt_plot_marker.cpp.

## ◆ setSpacing()

void QwtPlotMarker::setSpacing | ( | int | spacing | ) |

Set the spacing.

When the label is not centered on the marker position, the spacing is the distance between the position and the label.

Parameters

  spacing | Spacing

See also
  spacing(), setLabelAlignment()

Definition at line 507 of file qwt_plot_marker.cpp.

## ◆ setSymbol()

void QwtPlotMarker::setSymbol | ( | const QwtSymbol * | symbol | ) |

Assign a symbol.

Parameters

  symbol | New symbol

See also
  symbol()

Definition at line 391 of file qwt_plot_marker.cpp.

## ◆ spacing()

int QwtPlotMarker::spacing | ( |  | ) | const

Returns
  the spacing

See also
  setSpacing()

Definition at line 523 of file qwt_plot_marker.cpp.

## ◆ symbol()

const QwtSymbol * QwtPlotMarker::symbol | ( |  | ) | const

Returns
  the symbol

See also
  setSymbol(), QwtSymbol

Definition at line 410 of file qwt_plot_marker.cpp.