Rechercher une page de manuel
QwtPlotCurve
Langue: en
Version: 378076 (fedora - 01/12/10)
Section: 3 (Bibliothèques de fonctions)
Sommaire
- NAME
- SYNOPSIS
- Detailed Description
- Member Enumeration Documentation
- Constructor & Destructor Documentation
- Member Function Documentation
- double QwtPlotCurve::baseline () constReturn the value of the baseline
- QwtDoubleRect QwtPlotCurve::boundingRect () const [virtual]Returns the bounding rectangle of the curve data. If there is no bounding rect, like for empty data the rectangle is invalid.
- const QBrush & QwtPlotCurve::brush () const
- void QwtPlotCurve::closePolyline (const QwtScaleMap & xMap, const QwtScaleMap & yMap, QwtPolygon & pa) const [protected]
- int QwtPlotCurve::closestPoint (const QPoint & pos, double * dist = NULL) constFind the closest curve point for a specific position
- QwtCurveFitter * QwtPlotCurve::curveFitter () constGet the curve fitter. If curve fitting is disabled NULL is returned.
- QwtPlotCurve::CurveType QwtPlotCurve::curveType () constReturn the curve type
- const QwtData & QwtPlotCurve::data () const [inline]Returns:
- QwtData & QwtPlotCurve::data () [inline]Returns:
- int QwtPlotCurve::dataSize () constReturn the size of the data arrays
- void QwtPlotCurve::draw (int from, int to) const
- void QwtPlotCurve::draw (QPainter * painter, const QwtScaleMap & xMap, const QwtScaleMap & yMap, int from, int to) const [virtual]
- void QwtPlotCurve::draw (QPainter * painter, const QwtScaleMap & xMap, const QwtScaleMap & yMap, const QRect & canvasRect) const [virtual]
- void QwtPlotCurve::drawCurve (QPainter * painter, int style, const QwtScaleMap & xMap, const QwtScaleMap & yMap, int from, int to) const [protected, virtual]
- void QwtPlotCurve::drawDots (QPainter * painter, const QwtScaleMap & xMap, const QwtScaleMap & yMap, int from, int to) const [protected]Draw dots
- void QwtPlotCurve::drawLines (QPainter * painter, const QwtScaleMap & xMap, const QwtScaleMap & yMap, int from, int to) const [protected]
- void QwtPlotCurve::drawSteps (QPainter * painter, const QwtScaleMap & xMap, const QwtScaleMap & yMap, int from, int to) const [protected]Draw step function
- void QwtPlotCurve::drawSticks (QPainter * painter, const QwtScaleMap & xMap, const QwtScaleMap & yMap, int from, int to) const [protected]Draw sticks
- void QwtPlotCurve::drawSymbols (QPainter * painter, const QwtSymbol & symbol, const QwtScaleMap & xMap, const QwtScaleMap & yMap, int from, int to) const [protected, virtual]
- void QwtPlotCurve::fillCurve (QPainter * painter, const QwtScaleMap & xMap, const QwtScaleMap & yMap, QwtPolygon & pa) const [protected]Fill the area between the curve and the baseline with the curve brush
- void QwtPlotCurve::init () [protected]
- double QwtPlotCurve::maxXValue () const [inline]
- double QwtPlotCurve::maxYValue () const [inline]
- double QwtPlotCurve::minXValue () const [inline]
- double QwtPlotCurve::minYValue () const [inline]
- const QPen & QwtPlotCurve::pen () const
- int QwtPlotCurve::rtti () const [virtual]Returns:
- void QwtPlotCurve::setBaseline (double reference)
- void QwtPlotCurve::setBrush (const QBrush & brush)
- void QwtPlotCurve::setCurveAttribute (CurveAttribute attribute, bool on = true)Specify an attribute for drawing the curve
- void QwtPlotCurve::setCurveFitter (QwtCurveFitter * curveFitter)Assign a curve fitter setCurveFitter(NULL) disables curve fitting.
- void QwtPlotCurve::setCurveType (CurveType curveType)Assign the curve type
- void QwtPlotCurve::setData (const QwtData & data)Initialize data with a pointer to QwtData.
- void QwtPlotCurve::setData (const QPolygonF & data)Initialize data with an array of points (explicitly shared).
- 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 )
- 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.
- void QwtPlotCurve::setPaintAttribute (PaintAttribute attribute, bool on = true)Specify an attribute how to draw the curve
- void QwtPlotCurve::setPen (const QPen & pen)Assign a pen
- void QwtPlotCurve::setRawData (const double * xData, const double * yData, int size)
- void QwtPlotCurve::setStyle (CurveStyle style)Set the curve's drawing style
- void QwtPlotCurve::setSymbol (const QwtSymbol & symbol)
- QwtPlotCurve::CurveStyle QwtPlotCurve::style () constReturn the current style
- const QwtSymbol & QwtPlotCurve::symbol () const
- bool QwtPlotCurve::testCurveAttribute (CurveAttribute attribute) constReturns:
- bool QwtPlotCurve::testPaintAttribute (PaintAttribute attribute) const
- void QwtPlotCurve::updateLegend (QwtLegend * legend) const [virtual]
- double QwtPlotCurve::x (int i) const [inline]Parameters:
- double QwtPlotCurve::y (int i) const [inline]Parameters:
- Author
NAME
QwtPlotCurve -A plot item, that represents a series of points.
SYNOPSIS
#include <qwt_plot_curve.h>
Inherits QwtPlotItem.
Public Types
enum CurveType { Yfx, Xfy }
enum CurveStyle { NoCurve, Lines, Sticks, Steps, Dots, UserCurve = 100 }
enum CurveAttribute { Inverted = 1, Fitted = 2 }
enum PaintAttribute { PaintFiltered = 1, ClipPolygons = 2 }
Public Member Functions
QwtPlotCurve ()
QwtPlotCurve (const QwtText &title)
QwtPlotCurve (const QString &title)
virtual ~QwtPlotCurve ()
virtual int rtti () const
void setCurveType (CurveType)
CurveType curveType () const
void setPaintAttribute (PaintAttribute, bool on=true)
bool testPaintAttribute (PaintAttribute) const
void setRawData (const double *x, const double *y, int size)
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)
int closestPoint (const QPoint &pos, double *dist=NULL) const
QwtData & data ()
const QwtData & data () const
int dataSize () const
double x (int i) const
double y (int i) const
virtual QwtDoubleRect boundingRect () 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 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
virtual void updateLegend (QwtLegend *) const
Protected Member Functions
void init ()
virtual void drawCurve (QPainter *p, int style, 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 drawLines (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
void drawDots (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 fillCurve (QPainter *, const QwtScaleMap &, const QwtScaleMap &, QwtPolygon &) const
void closePolyline (const QwtScaleMap &, const QwtScaleMap &, QwtPolygon &) 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.RS 4
- a) Assign curve properties
- When a curve is created, it is configured to draw black solid lines with in 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 QwtData object offering a bridge to the real storage of the points ( like QAbstractItemModel ). There are several convenience classes derived from QwtData, that also store the points inside ( like QStandardItemModel ). QwtPlotCurve also offers a couple of variations of setData(), that build QwtData objects from arrays internally.
- c) Attach the curve to a plot
- See QwtPlotItem::attach()
Example:.RS 4 see examples/bode
See also:
- QwtPlot, QwtData, QwtSymbol, QwtScaleMap
Member Enumeration Documentation
enum QwtPlotCurve::CurveAttributeAttribute for drawing the curve
- *
- Fitted ( in combination with the Lines QwtPlotCurve::CurveStyle only )
A QwtCurveFitter tries to interpolate/smooth the curve, before it is painted. Note that curve fitting requires temorary memory for calculating coefficients and additional points. If painting in Fitted mode is slow it might be better to fit the points, before they are passed to QwtPlotCurve. - *
- Inverted
For Steps only. Draws a step function from the right to the left.
See also:
- setCurveAttribute(), testCurveAttribute(), curveFitter()
enum QwtPlotCurve::CurveStyleCurve styles.
- *
- 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(Yfx) or horizontal(Xfy) sticks 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 '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 NoStyle style and a symbol painting a point. - *
- UserCurve
Styles >= UserCurve are reserved for derived classes of QwtPlotCurve that overload drawCurve() with additional application specific curve types.
See also:
- setStyle(), style()
enum QwtPlotCurve::CurveTypeCurve type.
- *
- Yfx
Draws y as a function of x (the default). The baseline is interpreted as a horizontal line with y = baseline(). - *
- Xfy
Draws x as a function of y. The baseline is interpreted as a vertical line with x = baseline().
The baseline is used for aligning the sticks, or filling the curve with a brush.
See also:
- setCurveType(), curveType(), baseline() brush()
enum QwtPlotCurve::PaintAttributeAttributes to modify the drawing algorithm.
- *
- PaintFiltered
Tries to reduce the data that has to be painted, by sorting out duplicates, or paintings outside the visible area. Might have a notable impact on curves with many close points. Only a couple of very basic filtering algos are implemented. - *
- 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 ( especially on Windows ).
The default is, that no paint attributes are enabled.
See also:
- setPaintAttribute(), testPaintAttribute()
Constructor & Destructor Documentation
QwtPlotCurve::QwtPlotCurve () [explicit]
Constructor.
QwtPlotCurve::QwtPlotCurve (const QwtText & title) [explicit]Constructor
Parameters:
- title Title of the curve
QwtPlotCurve::QwtPlotCurve (const QString & title) [explicit]Constructor
Parameters:
- title Title of the curve
QwtPlotCurve::~QwtPlotCurve () [virtual]
Destructor.
Member Function Documentation
double QwtPlotCurve::baseline () constReturn the value of the baseline
See also:
- setBaseline()
QwtDoubleRect QwtPlotCurve::boundingRect () const [virtual]Returns the bounding rectangle of the curve data. If there is no bounding rect, like for empty data the rectangle is invalid.
See also:
- QwtData::boundingRect(), QwtDoubleRect::isValid()
Reimplemented from QwtPlotItem.
const QBrush & QwtPlotCurve::brush () const
Return the brush used to fill the area between lines and the baseline. See also:
- setBrush(), setBaseline(), baseline()
void QwtPlotCurve::closePolyline (const QwtScaleMap & xMap, const QwtScaleMap & yMap, QwtPolygon & pa) const [protected]
Complete a polygon to be a closed polygon including the area between the original polygon and the baseline. Parameters:
- xMap X map
yMap Y map
pa Polygon to be completed
int QwtPlotCurve::closestPoint (const QPoint & pos, double * dist = NULL) constFind 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 () constGet the curve fitter. If curve fitting is disabled NULL is returned.
Returns:
- Curve fitter
QwtPlotCurve::CurveType QwtPlotCurve::curveType () constReturn the curve type
See also:
- CurveType, setCurveType()
const QwtData & QwtPlotCurve::data () const [inline]Returns:
- the the curve data
QwtData & QwtPlotCurve::data () [inline]Returns:
- the the curve data
int QwtPlotCurve::dataSize () constReturn the size of the data arrays
See also:
- setData()
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.
Parameters:
- 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()
void QwtPlotCurve::draw (QPainter * painter, const QwtScaleMap & xMap, const QwtScaleMap & yMap, int from, int to) 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.
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(),
void QwtPlotCurve::draw (QPainter * painter, const QwtScaleMap & xMap, const QwtScaleMap & yMap, const QRect & canvasRect) const [virtual]
Draw the complete curve. Parameters:
- painter Painter
xMap Maps x-values into pixel coordinates.
yMap Maps y-values into pixel coordinates.
See also:
- drawCurve(), drawSymbols()
Implements QwtPlotItem.
void QwtPlotCurve::drawCurve (QPainter * painter, int style, const QwtScaleMap & xMap, const QwtScaleMap & yMap, int from, int to) 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
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, int from, int to) const [protected]Draw dots
Parameters:
- 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
See also:
- draw(), drawCurve(), drawSticks(), drawLines(), drawSteps()
void QwtPlotCurve::drawLines (QPainter * painter, const QwtScaleMap & xMap, const QwtScaleMap & yMap, int from, int to) 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
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::drawSteps (QPainter * painter, const QwtScaleMap & xMap, const QwtScaleMap & yMap, int from, int to) const [protected]Draw step function
The direction of the steps depends on Inverted attribute.
Parameters:
- 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
See also:
- CurveAttribute, setCurveAttribute(), draw(), drawCurve(), drawDots(), drawLines(), drawSticks()
void QwtPlotCurve::drawSticks (QPainter * painter, const QwtScaleMap & xMap, const QwtScaleMap & yMap, int from, int to) const [protected]Draw sticks
Parameters:
- 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
See also:
- draw(), drawCurve(), drawDots(), drawLines(), drawSteps()
void QwtPlotCurve::drawSymbols (QPainter * painter, const QwtSymbol & symbol, const QwtScaleMap & xMap, const QwtScaleMap & yMap, int from, int to) const [protected, virtual]
Draw symbols. Parameters:
- 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
See also:
- setSymbol(), draw(), drawCurve()
void QwtPlotCurve::fillCurve (QPainter * painter, const QwtScaleMap & xMap, const QwtScaleMap & yMap, QwtPolygon & pa) const [protected]Fill the area between the curve and the baseline with the curve brush
Parameters:
- painter Painter
xMap x map
yMap y map
pa Polygon
See also:
- setBrush(), setBaseline(), setCurveType()
void QwtPlotCurve::init () [protected]
Initialize data 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
Return the 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 (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().
Parameters:
- reference baseline
See also:
- baseline(), setBrush(), setStyle(), setCurveType()
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 (CurveAttribute attribute, bool on = true)Specify an attribute for drawing the curve
Parameters:
- attribute Curve attribute
on On/Off
/sa CurveAttribute, testCurveAttribute(), setCurveFitter()
void QwtPlotCurve::setCurveFitter (QwtCurveFitter * curveFitter)Assign a curve fitter setCurveFitter(NULL) disables curve fitting.
Parameters:
- curveFitter Curve fitter
void QwtPlotCurve::setCurveType (CurveType curveType)Assign the curve type
Parameters:
- curveType Yfx or Xfy
See also:
- CurveType, curveType()
void QwtPlotCurve::setData (const QwtData & data)Initialize data with a pointer to QwtData.
Parameters:
- data Data
See also:
- QwtData::copy()
void QwtPlotCurve::setData (const QPolygonF & data)Initialize data with an array of points (explicitly shared).
Parameters:
- data Data
Note:
- Internally the data is stored in a QwtPolygonFData object
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 )
Parameters:
- xData x data
yData y data
Note:
- Internally the data is stored in a QwtArrayData object
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.
Parameters:
- xData Pointer to x values
yData Pointer to y values
size Size of xData and yData
Note:
- Internally the data is stored in a QwtArrayData object
void QwtPlotCurve::setPaintAttribute (PaintAttribute attribute, bool on = true)Specify an attribute how to draw the curve
Parameters:
- 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.
Parameters:
- pen New pen
See also:
- pen(), brush(), QwtPainter::scaledPen()
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.
Parameters:
- xData pointer to x data
yData pointer to y data
size size of x and y
Note:
- Internally the data is stored in a QwtCPointerData object
void QwtPlotCurve::setStyle (CurveStyle style)Set the curve's drawing style
Parameters:
- style Curve style
See also:
- CurveStyle, style()
void QwtPlotCurve::setSymbol (const QwtSymbol & symbol)
Assign a symbol. Parameters:
- symbol Symbol
See also:
- symbol()
QwtPlotCurve::CurveStyle QwtPlotCurve::style () constReturn the current style
See also:
- CurveStyle, setStyle()
const QwtSymbol & QwtPlotCurve::symbol () const
Return the current symbol. See also:
- setSymbol()
bool QwtPlotCurve::testCurveAttribute (CurveAttribute attribute) constReturns:
- true, if attribute is enabled
See also:
- CurveAttribute, setCurveAttribute()
bool QwtPlotCurve::testPaintAttribute (PaintAttribute attribute) const
Return the current paint attributes. See also:
- PaintAttribute, setPaintAttribute()
void QwtPlotCurve::updateLegend (QwtLegend * legend) const [virtual]
Update the widget that represents the curve on the legend.
Reimplemented from QwtPlotItem.
double QwtPlotCurve::x (int i) const [inline]Parameters:
- i index
Returns:
- x-value at position i
double QwtPlotCurve::y (int i) const [inline]Parameters:
- i index
Returns:
- y-value at position i
Author
Generated automatically by Doxygen for Qwt User's Guide from the source code.
Contenus ©2006-2024 Benjamin Poulain
Design ©2006-2024 Maxime Vantorre