QwtPlotMarker - A class for drawing markers.
Contents
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 )
Member Enumeration Documentation
enumQwtPlotMarker::LineStyle
Line styles.
Seealso:setLineStyle(), lineStyle()EnumeratorNoLine No line.
HLine A horizontal line.
VLine A vertical line.
Cross A crosshair.
Member Function Documentation
QRectFQwtPlotMarker::boundingRect()const[virtual]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.
voidQwtPlotMarker::draw(QPainter*painter,constQwtScaleMap&xMap,constQwtScaleMap&yMap,constQRectF&canvasRect)const[virtual]
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.
voidQwtPlotMarker::drawLabel(QPainter*painter,constQRectF&canvasRect,constQPointF&pos)const[protected],[virtual]
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
Seealso:drawLabel(), QwtSymbol::drawSymbol()voidQwtPlotMarker::drawLines(QPainter*painter,constQRectF&canvasRect,constQPointF&pos)const[protected],[virtual]
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
Seealso:drawLabel(), QwtSymbol::drawSymbol()QwtTextQwtPlotMarker::label()constReturns:
the label
Seealso:setLabel()Qt::AlignmentQwtPlotMarker::labelAlignment()constReturns:
the label alignment
Seealso:setLabelAlignment(), setLabelOrientation()Qt::OrientationQwtPlotMarker::labelOrientation()constReturns:
the label orientation
Seealso:setLabelOrientation(), labelAlignment()QwtGraphicQwtPlotMarker::legendIcon(intindex,constQSizeF&size)const[virtual]Returns:
Icon representing the marker on the legend
Parameters:index Index of the legend entry ( usually there is only one )
size Icon size
Seealso:setLegendIconSize(), legendData()
Reimplemented from QwtPlotItem.
constQPen&QwtPlotMarker::linePen()constReturns:
the line pen
Seealso:setLinePen()QwtPlotMarker::LineStyleQwtPlotMarker::lineStyle()constReturns:
the line style
Seealso:setLineStyle()intQwtPlotMarker::rtti()const[virtual]Returns:QwtPlotItem::Rtti_PlotMarker
Reimplemented from QwtPlotItem.
voidQwtPlotMarker::setLabel(constQwtText&label)
Set the label.
Parameters:label Label text
Seealso:label()voidQwtPlotMarker::setLabelAlignment(Qt::Alignmentalign)
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.
Seealso:labelAlignment(), labelOrientation()voidQwtPlotMarker::setLabelOrientation(Qt::Orientationorientation)
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
Seealso:labelOrientation(), setLabelAlignment()voidQwtPlotMarker::setLinePen(constQColor&color,qrealwidth=0.0,Qt::PenStylestyle=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
Seealso:
pen(), brush()
voidQwtPlotMarker::setLinePen(constQPen&pen)
Specify a pen for the line.
Parameters:pen New pen
Seealso:linePen()voidQwtPlotMarker::setLineStyle(LineStylestyle)
Set the line style.
Parameters:style Line style.
Seealso:lineStyle()voidQwtPlotMarker::setSpacing(intspacing)
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
Seealso:spacing(), setLabelAlignment()voidQwtPlotMarker::setSymbol(constQwtSymbol*symbol)
Assign a symbol.
Parameters:symbol New symbol
Seealso:symbol()intQwtPlotMarker::spacing()constReturns:
the spacing
Seealso:setSpacing()constQwtSymbol*QwtPlotMarker::symbol()constReturns:
the symbol
Seealso:setSymbol(), QwtSymbolName
QwtPlotMarker - A class for drawing markers.
Synopsis
#include <qwt_plot_marker.h>
Inherits QwtPlotItem.
PublicTypes
enum LineStyle { NoLine, HLine, VLine, Cross }
PublicMemberFunctionsQwtPlotMarker (const QString &title=QString())
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
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.
LineStylelineStyle () 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.
const QwtSymbol * symbol () const
void setLabel (const QwtText &)
Set the label.
QwtTextlabel () const
void setLabelAlignment (Qt::Alignment)
Set the alignment of the label.
Qt::Alignment labelAlignment () const
void setLabelOrientation (Qt::Orientation)
Set the orientation of the label.
Qt::Orientation labelOrientation () const
void setSpacing (int)
Set the spacing.
int spacing () const
virtual void draw (QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &) const
virtual QRectF boundingRect () const
virtual QwtGraphiclegendIcon (int index, const QSizeF &) const
ProtectedMemberFunctions
virtual void drawLines (QPainter *, const QRectF &, const QPointF &) const
virtual void drawLabel (QPainter *, const QRectF &, const QPointF &) const
