Provided by: libqwt-doc_6.0.0-1.2_all 

NAME
QwtPlotCurve - A plot item, that represents a series of points.
SYNOPSIS
#include <qwt_plot_curve.h> Inherits QwtPlotSeriesItem< QPointF >. Public Types enum CurveStyle { NoCurve = -1, Lines, Sticks, Steps, Dots, UserCurve = 100 } enum CurveAttribute { Inverted = 0x01, Fitted = 0x02 } enum LegendAttribute { LegendNoAttribute = 0x00, LegendShowLine = 0x01, LegendShowSymbol = 0x02, LegendShowBrush = 0x04 } enum PaintAttribute { ClipPolygons = 0x01, CacheSymbols = 0x02 } typedef QFlags< CurveAttribute > CurveAttributes typedef QFlags< LegendAttribute > LegendAttributes typedef QFlags< PaintAttribute > PaintAttributes Public Member Functions QwtPlotCurve (const QString &title=QString::null) QwtPlotCurve (const QwtText &title) virtual ~QwtPlotCurve () virtual int rtti () const void setPaintAttribute (PaintAttribute, bool on=true) bool testPaintAttribute (PaintAttribute) const void setLegendAttribute (LegendAttribute, bool on=true) bool testLegendAttribute (LegendAttribute) const void setRawSamples (const double *xData, const double *yData, int size) void setSamples (const double *xData, const double *yData, int size) void setSamples (const QVector< double > &xData, const QVector< double > &yData) void setSamples (const QVector< QPointF > &) int closestPoint (const QPoint &pos, double *dist=NULL) const double minXValue () const double maxXValue () const double minYValue () const double maxYValue () const void setCurveAttribute (CurveAttribute, bool on=true) bool testCurveAttribute (CurveAttribute) const void setPen (const QPen &) const QPen & pen () const void setBrush (const QBrush &) const QBrush & brush () const void setBaseline (double ref) double baseline () const void setStyle (CurveStyle style) CurveStyle style () const void setSymbol (const QwtSymbol *s) const QwtSymbol * symbol () const void setCurveFitter (QwtCurveFitter *) QwtCurveFitter * curveFitter () const virtual void drawSeries (QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const virtual void updateLegend (QwtLegend *) const virtual void drawLegendIdentifier (QPainter *, const QRectF &) const Protected Member Functions void init () virtual void drawCurve (QPainter *p, int style, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const virtual void drawSymbols (QPainter *p, const QwtSymbol &, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const void drawLines (QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const void drawSticks (QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const void drawDots (QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const void drawSteps (QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const virtual void fillCurve (QPainter *, const QwtScaleMap &, const QwtScaleMap &, const QRectF &canvasRect, QPolygonF &) const void closePolyline (QPainter *, const QwtScaleMap &, const QwtScaleMap &, QPolygonF &) const
Detailed Description
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. Usage a) Assign curve properties When a curve is created, it is configured to draw black solid lines with in QwtPlotCurve::Lines style and no symbols. You can change this by calling setPen(), setStyle() and setSymbol(). b) Connect/Assign data. QwtPlotCurve gets its points using a QwtSeriesData object offering a bridge to the real storage of the points ( like QAbstractItemModel ). There are several convenience classes derived from QwtSeriesData, that also store the points inside ( like QStandardItemModel ). QwtPlotCurve also offers a couple of variations of setSamples(), that build QwtSeriesData objects from arrays internally. c) Attach the curve to a plot See QwtPlotItem::attach() Example: see examples/bode See also: QwtPointSeriesData, QwtSymbol, QwtScaleMap
Member Typedef Documentation
typedef QFlags<CurveAttribute> QwtPlotCurve::CurveAttributes Curve attributes. typedef QFlags<LegendAttribute> QwtPlotCurve::LegendAttributes Legend attributes. typedef QFlags<PaintAttribute> QwtPlotCurve::PaintAttributes Paint attributes.
Member Enumeration Documentation
enum QwtPlotCurve::CurveAttribute Attribute for drawing the curve See also: setCurveAttribute(), testCurveAttribute(), curveFitter() Enumerator: Inverted For QwtPlotCurve::Steps only. Draws a step function from the right to the left. Fitted Only in combination with QwtPlotCurve::Lines A QwtCurveFitter tries to interpolate/smooth the curve, before it is painted. Note: Curve fitting requires temorary memory for calculating coefficients and additional points. If painting in QwtPlotCurve::Fitted mode is slow it might be better to fit the points, before they are passed to QwtPlotCurve. enum QwtPlotCurve::CurveStyle Curve styles. See also: setStyle(), style() Enumerator: NoCurve Don't draw a curve. Note: This doesn't affect the symbols. Lines Connect the points with straight lines. The lines might be interpolated depending on the 'Fitted' attribute. Curve fitting can be configured using setCurveFitter(). Sticks Draw vertical or horizontal sticks ( depending on the orientation() ) from a baseline which is defined by setBaseline(). Steps Connect the points with a step function. The step function is drawn from the left to the right or vice versa, depending on the QwtPlotCurve::Inverted attribute. Dots Draw dots at the locations of the data points. Note: This is different from a dotted line (see setPen()), and faster as a curve in QwtPlotCurve::NoStyle style and a symbol painting a point. UserCurve Styles >= QwtPlotCurve::UserCurve are reserved for derived classes of QwtPlotCurve that overload drawCurve() with additional application specific curve types. enum QwtPlotCurve::LegendAttribute Attributes how to represent the curve on the legend See also: setLegendAttribute(), testLegendAttribute(), drawLegendIdentifier() Enumerator: LegendNoAttribute QwtPlotCurve tries to find a color representing the curve and paints a rectangle with it. LegendShowLine If the style() is not QwtPlotCurve::NoCurve a line is painted with the curve pen(). LegendShowSymbol If the curve has a valid symbol it is painted. LegendShowBrush If the curve has a brush a rectangle filled with the curve brush() is painted. enum QwtPlotCurve::PaintAttribute Attributes to modify the drawing algorithm. The default setting enables ClipPolygons 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 CacheSymbols Paint the symbol to a QPixmap and paint the pixmap instead rendering the symbol for each point. The flag has no effect, when the curve is not painted to the canvas ( f.e when exporting the plot to a PDF document ).
Constructor & Destructor Documentation
QwtPlotCurve::QwtPlotCurve (const QString &title = QString::null) [explicit] Constructor Parameters: title Title of the curve QwtPlotCurve::QwtPlotCurve (const QwtText &title) [explicit] Constructor Parameters: title Title of the curve QwtPlotCurve::~QwtPlotCurve () [virtual] Destructor.
Member Function Documentation
double QwtPlotCurve::baseline () const Returns: Value of the baseline See also: setBaseline() const QBrush & QwtPlotCurve::brush () const Returns: Brush used to fill the area between lines and the baseline See also: setBrush(), setBaseline(), baseline() void QwtPlotCurve::closePolyline (QPainter *painter, const QwtScaleMap &xMap, const QwtScaleMap &yMap, QPolygonF &polygon) const [protected] Complete a polygon to be a closed polygon including the area between the original polygon and the baseline. Parameters: painter Painter xMap X map yMap Y map polygon Polygon to be completed int QwtPlotCurve::closestPoint (const QPoint &pos, double *dist = NULL) const Find the closest curve point for a specific position Parameters: 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 Returns: Index of the closest curve point, or -1 if none can be found ( f.e when the curve has no points ) Note: closestPoint() implements a dumb algorithm, that iterates over all points QwtCurveFitter * QwtPlotCurve::curveFitter () const Get the curve fitter. If curve fitting is disabled NULL is returned. Returns: Curve fitter See also: setCurveFitter(), Fitted void QwtPlotCurve::drawCurve (QPainter *painter, intstyle, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, intfrom, intto) const [protected, virtual] Draw the line part (without symbols) of a curve interval. Parameters: painter Painter style curve style, see QwtPlotCurve::CurveStyle xMap x map yMap y map canvasRect Contents rect of the canvas from index of the first point to be painted to index of the last point to be painted See also: draw(), drawDots(), drawLines(), drawSteps(), drawSticks() void QwtPlotCurve::drawDots (QPainter *painter, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, intfrom, intto) const [protected] Draw dots Parameters: painter Painter xMap x map yMap y map canvasRect Contents rect of the canvas from index of the first point to be painted to index of the last point to be painted See also: draw(), drawCurve(), drawSticks(), drawLines(), drawSteps() void QwtPlotCurve::drawLegendIdentifier (QPainter *painter, const QRectF &rect) const [virtual] Draw the identifier representing the curve on the legend. Parameters: painter Painter rect Bounding rectangle for the identifier See also: setLegendAttribute(), QwtPlotItem::Legend Reimplemented from QwtLegendItemManager. void QwtPlotCurve::drawLines (QPainter *painter, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, intfrom, intto) const [protected] Draw lines. If the CurveAttribute Fitted is enabled a QwtCurveFitter tries to interpolate/smooth the curve, before it is painted. Parameters: painter Painter xMap x map yMap y map canvasRect Contents rect of the canvas from index of the first point to be painted to index of the last point to be painted See also: setCurveAttribute(), setCurveFitter(), draw(), drawLines(), drawDots(), drawSteps(), drawSticks() void QwtPlotCurve::drawSeries (QPainter *painter, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, intfrom, intto) const [virtual] Draw an interval of the curve Parameters: painter Painter xMap Maps x-values into pixel coordinates. yMap Maps y-values into pixel coordinates. canvasRect Contents rect of the canvas 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. See also: drawCurve(), drawSymbols(), Implements QwtPlotAbstractSeriesItem. void QwtPlotCurve::drawSteps (QPainter *painter, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, intfrom, intto) const [protected] Draw step function The direction of the steps depends on Inverted attribute. Parameters: painter Painter xMap x map yMap y map canvasRect Contents rect of the canvas from index of the first point to be painted to index of the last point to be painted See also: CurveAttribute, setCurveAttribute(), draw(), drawCurve(), drawDots(), drawLines(), drawSticks() void QwtPlotCurve::drawSticks (QPainter *painter, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, intfrom, intto) const [protected] Draw sticks Parameters: painter Painter xMap x map yMap y map canvasRect Contents rect of the canvas from index of the first point to be painted to index of the last point to be painted See also: draw(), drawCurve(), drawDots(), drawLines(), drawSteps() void QwtPlotCurve::drawSymbols (QPainter *painter, const QwtSymbol &symbol, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, intfrom, intto) const [protected, virtual] Draw symbols Parameters: painter Painter symbol Curve symbol xMap x map yMap y map canvasRect Contents rect of the canvas from Index of the first point to be painted to Index of the last point to be painted See also: setSymbol(), drawSeries(), drawCurve() void QwtPlotCurve::fillCurve (QPainter *painter, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, QPolygonF &polygon) const [protected, virtual] Fill the area between the curve and the baseline with the curve brush Parameters: painter Painter xMap x map yMap y map canvasRect Contents rect of the canvas polygon Polygon - will be modified ! See also: setBrush(), setBaseline(), setStyle() void QwtPlotCurve::init () [protected] Initialize internal members. double QwtPlotCurve::maxXValue () const [inline] boundingRect().right() double QwtPlotCurve::maxYValue () const [inline] boundingRect().bottom() double QwtPlotCurve::minXValue () const [inline] boundingRect().left() double QwtPlotCurve::minYValue () const [inline] boundingRect().top() const QPen & QwtPlotCurve::pen () const Returns: Pen used to draw the lines See also: setPen(), brush() int QwtPlotCurve::rtti () const [virtual] Returns: QwtPlotItem::Rtti_PlotCurve Reimplemented from QwtPlotItem. void QwtPlotCurve::setBaseline (doublevalue) Set the value of the baseline. The baseline is needed for filling the curve with a brush or the Sticks drawing style. 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(). The default value is 0.0. Parameters: value Value of the baseline See also: baseline(), setBrush(), setStyle(), setStyle() 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). Parameters: brush New brush See also: brush(), setBaseline(), baseline() void QwtPlotCurve::setCurveAttribute (CurveAttributeattribute, boolon = true) Specify an attribute for drawing the curve Parameters: attribute Curve attribute on On/Off /sa testCurveAttribute(), setCurveFitter() void QwtPlotCurve::setCurveFitter (QwtCurveFitter *curveFitter) Assign a curve fitter The curve fitter 'smooths' the curve points, when the Fitted CurveAttribute is set. setCurveFitter(NULL) also disables curve fitting. The curve fitter operates on the translated points ( = widget coordinates) to be functional for logarithmic scales. Obviously this is less performant for fitting algorithms, that reduce the number of points. For situations, where curve fitting is used to improve the performance of painting huge series of points it might be better to execute the fitter on the curve points once and to cache the result in the QwtSeriesData object. Parameters: curveFitter() Curve fitter See also: Fitted void QwtPlotCurve::setLegendAttribute (LegendAttributeattribute, boolon = true) Specify an attribute how to draw the legend identifier Parameters: attribute Attribute on On/Off /sa testLegendAttribute() void QwtPlotCurve::setPaintAttribute (PaintAttributeattribute, boolon = true) Specify an attribute how to draw the curve Parameters: attribute Paint attribute on On/Off See also: testPaintAttribute() void QwtPlotCurve::setPen (const QPen &pen) Assign a pen Parameters: pen New pen See also: pen(), brush() void QwtPlotCurve::setRawSamples (const double *xData, const double *yData, intsize) Initialize the data by pointing to memory blocks which are not managed by QwtPlotCurve. setRawSamples is provided for efficiency. It is important to keep the pointers during the lifetime of the underlying QwtCPointerData class. Parameters: xData pointer to x data yData pointer to y data size size of x and y See also: QwtCPointerData void QwtPlotCurve::setSamples (const QVector< QPointF > &samples) Initialize data with an array of points (explicitly shared). Parameters: samples Vector of points void QwtPlotCurve::setSamples (const QVector< double > &xData, const QVector< double > &yData) Initialize data with x- and y-arrays (explicitly shared) Parameters: xData x data yData y data See also: QwtPointArrayData void QwtPlotCurve::setSamples (const double *xData, const double *yData, intsize) Set data by copying x- and y-values from specified memory blocks. Contrary to setRawSamples(), this function makes a 'deep copy' of the data. Parameters: xData pointer to x values yData pointer to y values size size of xData and yData See also: QwtPointArrayData void QwtPlotCurve::setStyle (CurveStylestyle) Set the curve's drawing style Parameters: style Curve style See also: style() void QwtPlotCurve::setSymbol (const QwtSymbol *symbol) Assign a symbol Parameters: symbol Symbol See also: symbol() QwtPlotCurve::CurveStyle QwtPlotCurve::style () const Return the current style See also: setStyle() const QwtSymbol * QwtPlotCurve::symbol () const Returns: Current symbol or NULL, when no symbol has been assigned See also: setSymbol() bool QwtPlotCurve::testCurveAttribute (CurveAttributeattribute) const Returns: true, if attribute is enabled See also: setCurveAttribute() bool QwtPlotCurve::testLegendAttribute (LegendAttributeattribute) const Return the current paint attributes. See also: setLegendAttribute() bool QwtPlotCurve::testPaintAttribute (PaintAttributeattribute) const Return the current paint attributes. See also: setPaintAttribute() void QwtPlotCurve::updateLegend (QwtLegend *legend) const [virtual] Update the widget that represents the item on the legend. Parameters: legend Legend See also: drawLegendIdentifier(), legendItem(), QwtPlotItem::Legend Reimplemented from QwtPlotItem.
Author
Generated automatically by Doxygen for Qwt User's Guide from the source code.