Qwt User's Guide
5.2.3
|
#include <qwt_plot_curve.h>
Public Types | |
enum | CurveAttribute { Inverted = 1, Fitted = 2 } |
enum | CurveStyle { NoCurve, Lines, Sticks, Steps, Dots, UserCurve = 100 } |
enum | CurveType { Yfx, Xfy } |
enum | PaintAttribute { PaintFiltered = 1, ClipPolygons = 2 } |
![]() | |
enum | ItemAttribute { Legend = 1, AutoScale = 2 } |
enum | RenderHint { RenderAntialiased = 1 } |
enum | RttiValues { Rtti_PlotItem = 0, Rtti_PlotGrid, Rtti_PlotScale, Rtti_PlotMarker, Rtti_PlotCurve, Rtti_PlotHistogram, Rtti_PlotSpectrogram, Rtti_PlotSVG, Rtti_PlotUserItem = 1000 } |
Public Member Functions | |
QwtPlotCurve () | |
QwtPlotCurve (const QwtText &title) | |
QwtPlotCurve (const QString &title) | |
virtual | ~QwtPlotCurve () |
double | baseline () const |
virtual QwtDoubleRect | boundingRect () const |
const QBrush & | brush () const |
int | closestPoint (const QPoint &pos, double *dist=NULL) const |
QwtCurveFitter * | curveFitter () const |
CurveType | curveType () const |
QwtData & | data () |
const QwtData & | data () const |
int | dataSize () const |
virtual void | draw (QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRect &) const |
virtual void | draw (QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, int from, int to) const |
void | draw (int from, int to) const |
double | maxXValue () const |
double | maxYValue () const |
double | minXValue () const |
double | minYValue () const |
const QPen & | pen () const |
virtual int | rtti () const |
void | setBaseline (double ref) |
void | setBrush (const QBrush &) |
void | setCurveAttribute (CurveAttribute, bool on=true) |
void | setCurveFitter (QwtCurveFitter *) |
void | setCurveType (CurveType) |
void | setData (const double *xData, const double *yData, int size) |
void | setData (const QwtArray< double > &xData, const QwtArray< double > &yData) |
void | setData (const QPolygonF &data) |
void | setData (const QwtData &data) |
void | setPaintAttribute (PaintAttribute, bool on=true) |
void | setPen (const QPen &) |
void | setRawData (const double *x, const double *y, int size) |
void | setStyle (CurveStyle style) |
void | setSymbol (const QwtSymbol &s) |
CurveStyle | style () const |
const QwtSymbol & | symbol () const |
bool | testCurveAttribute (CurveAttribute) const |
bool | testPaintAttribute (PaintAttribute) const |
virtual void | updateLegend (QwtLegend *) const |
double | x (int i) const |
double | y (int i) const |
![]() | |
QwtPlotItem (const QwtText &title=QwtText()) | |
virtual | ~QwtPlotItem () |
void | attach (QwtPlot *plot) |
void | detach () |
void | hide () |
QwtDoubleRect | invTransform (const QwtScaleMap &, const QwtScaleMap &, const QRect &) const |
bool | isVisible () const |
virtual void | itemChanged () |
virtual QWidget * | legendItem () const |
QRect | paintRect (const QwtScaleMap &, const QwtScaleMap &) const |
QwtPlot * | plot () const |
QwtDoubleRect | scaleRect (const QwtScaleMap &, const QwtScaleMap &) const |
void | setAxis (int xAxis, int yAxis) |
void | setItemAttribute (ItemAttribute, bool on=true) |
void | setRenderHint (RenderHint, bool on=true) |
void | setTitle (const QString &title) |
void | setTitle (const QwtText &title) |
virtual void | setVisible (bool) |
void | setXAxis (int axis) |
void | setYAxis (int axis) |
void | setZ (double z) |
void | show () |
bool | testItemAttribute (ItemAttribute) const |
bool | testRenderHint (RenderHint) const |
const QwtText & | title () const |
QRect | transform (const QwtScaleMap &, const QwtScaleMap &, const QwtDoubleRect &) const |
virtual void | updateScaleDiv (const QwtScaleDiv &, const QwtScaleDiv &) |
int | xAxis () const |
int | yAxis () const |
double | z () const |
![]() | |
QwtLegendItemManager () | |
virtual | ~QwtLegendItemManager () |
Protected Member Functions | |
void | closePolyline (const QwtScaleMap &, const QwtScaleMap &, QwtPolygon &) const |
virtual void | drawCurve (QPainter *p, int style, const QwtScaleMap &xMap, const QwtScaleMap &yMap, int from, int to) const |
void | drawDots (QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, int from, int to) const |
void | drawLines (QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, int from, int to) const |
void | drawSteps (QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, int from, int to) const |
void | drawSticks (QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, int from, int to) const |
virtual void | drawSymbols (QPainter *p, const QwtSymbol &, const QwtScaleMap &xMap, const QwtScaleMap &yMap, int from, int to) const |
void | fillCurve (QPainter *, const QwtScaleMap &, const QwtScaleMap &, QwtPolygon &) const |
void | init () |
A plot item, that represents a series of points.
A curve is the representation of a series of points in the x-y plane. It supports different display styles, interpolation ( f.e. spline ) and symbols.
Attribute for drawing the curve
Inverted
For Steps only. Draws a step function from the right to the left.
Curve styles.
Curve type.
The baseline is used for aligning the sticks, or filling the curve with a brush.
Attributes to modify the drawing algorithm.
The default is, that no paint attributes are enabled.
|
explicit |
Constructor
title | Title of the curve |
|
explicit |
Constructor
title | Title of the curve |
double QwtPlotCurve::baseline | ( | ) | const |
Return the value of the baseline
|
virtual |
Returns the bounding rectangle of the curve data. If there is no bounding rect, like for empty data the rectangle is invalid.
Reimplemented from QwtPlotItem.
const QBrush & QwtPlotCurve::brush | ( | ) | const |
Return the brush used to fill the area between lines and the baseline.
|
protected |
Complete a polygon to be a closed polygon including the area between the original polygon and the baseline.
xMap | X map |
yMap | Y map |
pa | Polygon to be completed |
int QwtPlotCurve::closestPoint | ( | const QPoint & | pos, |
double * | dist = NULL |
||
) | const |
Find the closest curve point for a specific position
pos | Position, where to look for the closest curve point |
dist | If dist != NULL, closestPoint() returns the distance between the position and the clostest curve point |
QwtCurveFitter * QwtPlotCurve::curveFitter | ( | ) | const |
Get the curve fitter. If curve fitting is disabled NULL is returned.
QwtPlotCurve::CurveType QwtPlotCurve::curveType | ( | ) | const |
Return the curve type
|
inline |
|
inline |
int QwtPlotCurve::dataSize | ( | ) | const |
Return the size of the data arrays
|
virtual |
Draw the complete curve.
painter | Painter |
xMap | Maps x-values into pixel coordinates. |
yMap | Maps y-values into pixel coordinates. |
Implements QwtPlotItem.
|
virtual |
Draw an interval of the curve.
painter | Painter |
xMap | maps x-values into pixel coordinates. |
yMap | maps y-values into pixel coordinates. |
from | index of the first point to be painted |
to | index of the last point to be painted. If to < 0 the curve will be painted to its last point. |
void QwtPlotCurve::draw | ( | int | from, |
int | to | ||
) | const |
Draw a set of points of a curve.
When observing an measurement while it is running, new points have to be added to an existing curve. drawCurve can be used to display them avoiding a complete redraw of the canvas.
Setting plot()->canvas()->setAttribute(Qt::WA_PaintOutsidePaintEvent, true); will result in faster painting, if the paint engine of the canvas widget supports this feature.
from | Index of the first point to be painted |
to | Index of the last point to be painted. If to < 0 the curve will be painted to its last point. |
|
protectedvirtual |
Draw the line part (without symbols) of a curve interval.
painter | Painter |
style | curve style, see QwtPlotCurve::CurveStyle |
xMap | x map |
yMap | y map |
from | index of the first point to be painted |
to | index of the last point to be painted |
|
protected |
Draw dots
painter | Painter |
xMap | x map |
yMap | y map |
from | index of the first point to be painted |
to | index of the last point to be painted |
|
protected |
Draw lines.
If the CurveAttribute Fitted is enabled a QwtCurveFitter tries to interpolate/smooth the curve, before it is painted.
painter | Painter |
xMap | x map |
yMap | y map |
from | index of the first point to be painted |
to | index of the last point to be painted |
|
protected |
Draw step function
The direction of the steps depends on Inverted attribute.
painter | Painter |
xMap | x map |
yMap | y map |
from | index of the first point to be painted |
to | index of the last point to be painted |
|
protected |
Draw sticks
painter | Painter |
xMap | x map |
yMap | y map |
from | index of the first point to be painted |
to | index of the last point to be painted |
|
protectedvirtual |
Draw symbols.
painter | Painter |
symbol | Curve symbol |
xMap | x map |
yMap | y map |
from | index of the first point to be painted |
to | index of the last point to be painted |
|
protected |
Fill the area between the curve and the baseline with the curve brush
painter | Painter |
xMap | x map |
yMap | y map |
pa | Polygon |
const QPen & QwtPlotCurve::pen | ( | ) | const |
|
virtual |
Reimplemented from QwtPlotItem.
void QwtPlotCurve::setBaseline | ( | double | reference | ) |
Set the value of the baseline.
The baseline is needed for filling the curve with a brush or the Sticks drawing style. The default value is 0.0. The interpretation of the baseline depends on the CurveType. With QwtPlotCurve::Yfx, the baseline is interpreted as a horizontal line at y = baseline(), with QwtPlotCurve::Yfy, it is interpreted as a vertical line at x = baseline().
reference | baseline |
void QwtPlotCurve::setBrush | ( | const QBrush & | brush | ) |
Assign a brush.
In case of brush.style() != QBrush::NoBrush and style() != QwtPlotCurve::Sticks the area between the curve and the baseline will be filled.
In case !brush.color().isValid() the area will be filled by pen.color(). The fill algorithm simply connects the first and the last curve point to the baseline. So the curve data has to be sorted (ascending or descending).
brush | New brush |
void QwtPlotCurve::setCurveAttribute | ( | CurveAttribute | attribute, |
bool | on = true |
||
) |
Specify an attribute for drawing the curve
attribute | Curve attribute |
on | On/Off |
/sa CurveAttribute, testCurveAttribute(), setCurveFitter()
void QwtPlotCurve::setCurveFitter | ( | QwtCurveFitter * | curveFitter | ) |
Assign a curve fitter setCurveFitter(NULL) disables curve fitting.
curveFitter | Curve fitter |
void QwtPlotCurve::setCurveType | ( | CurveType | curveType | ) |
void QwtPlotCurve::setData | ( | const double * | xData, |
const double * | yData, | ||
int | size | ||
) |
Set data by copying x- and y-values from specified memory blocks. Contrary to setCurveRawData(), this function makes a 'deep copy' of the data.
xData | Pointer to x values |
yData | Pointer to y values |
size | Size of xData and yData |
void QwtPlotCurve::setData | ( | const QwtArray< double > & | xData, |
const QwtArray< double > & | yData | ||
) |
Initialize data with x- and y-arrays (explicitly shared) ( Builds an QwtArrayData object internally )
xData | x data |
yData | y data |
void QwtPlotCurve::setData | ( | const QPolygonF & | data | ) |
Initialize data with an array of points (explicitly shared).
data | Data |
void QwtPlotCurve::setData | ( | const QwtData & | data | ) |
void QwtPlotCurve::setPaintAttribute | ( | PaintAttribute | attribute, |
bool | on = true |
||
) |
Specify an attribute how to draw the curve
attribute | Paint attribute |
on | On/Off /sa PaintAttribute, testPaintAttribute() |
void QwtPlotCurve::setPen | ( | const QPen & | pen | ) |
Assign a pen
The width of non cosmetic pens is scaled according to the resolution of the paint device.
pen | New pen |
void QwtPlotCurve::setRawData | ( | const double * | xData, |
const double * | yData, | ||
int | size | ||
) |
Initialize the data by pointing to memory blocks which are not managed by QwtPlotCurve.
setRawData is provided for efficiency. It is important to keep the pointers during the lifetime of the underlying QwtCPointerData class.
xData | pointer to x data |
yData | pointer to y data |
size | size of x and y |
void QwtPlotCurve::setStyle | ( | CurveStyle | style | ) |
void QwtPlotCurve::setSymbol | ( | const QwtSymbol & | symbol | ) |
QwtPlotCurve::CurveStyle QwtPlotCurve::style | ( | ) | const |
Return the current style
const QwtSymbol & QwtPlotCurve::symbol | ( | ) | const |
Return the current symbol.
bool QwtPlotCurve::testCurveAttribute | ( | CurveAttribute | attribute | ) | const |
bool QwtPlotCurve::testPaintAttribute | ( | PaintAttribute | attribute | ) | const |
Return the current paint attributes.
|
inline |
i | index |
|
inline |
i | index |