Qwt User's Guide  6.0.2
Public Types | Public Member Functions | Protected Member Functions
QwtPlotIntervalCurve Class Reference

#include <qwt_plot_intervalcurve.h>

Inheritance diagram for QwtPlotIntervalCurve:
Inheritance graph
[legend]

List of all members.

Public Types

enum  CurveStyle {
  NoCurve,
  Tube,
  UserCurve = 100
}
enum  PaintAttribute {
  ClipPolygons = 0x01,
  ClipSymbol = 0x02
}
typedef QFlags< PaintAttributePaintAttributes

Public Member Functions

 QwtPlotIntervalCurve (const QString &title=QString::null)
 QwtPlotIntervalCurve (const QwtText &title)
virtual ~QwtPlotIntervalCurve ()
virtual QRectF boundingRect () const
const QBrush & brush () const
virtual void drawLegendIdentifier (QPainter *, const QRectF &) const
virtual void drawSeries (QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const
const QPen & pen () const
virtual int rtti () const
void setBrush (const QBrush &)
void setPaintAttribute (PaintAttribute, bool on=true)
void setPen (const QPen &)
void setSamples (const QVector< QwtIntervalSample > &)
void setStyle (CurveStyle style)
void setSymbol (const QwtIntervalSymbol *)
CurveStyle style () const
const QwtIntervalSymbolsymbol () const
bool testPaintAttribute (PaintAttribute) const
- Public Member Functions inherited from QwtPlotSeriesItem< QwtIntervalSample >
 QwtPlotSeriesItem (const QString &title=QString::null)
 QwtPlotSeriesItem (const QwtText &title)
virtual ~QwtPlotSeriesItem ()
QwtSeriesData
< QwtIntervalSample > * 
data ()
const QwtSeriesData
< QwtIntervalSample > * 
data () const
size_t dataSize () const
QwtIntervalSample sample (int index) const
void setData (QwtSeriesData< QwtIntervalSample > *)
virtual void updateScaleDiv (const QwtScaleDiv &, const QwtScaleDiv &)
- Public Member Functions inherited from QwtPlotAbstractSeriesItem
 QwtPlotAbstractSeriesItem (const QString &title=QString::null)
 QwtPlotAbstractSeriesItem (const QwtText &title)
virtual ~QwtPlotAbstractSeriesItem ()
virtual void draw (QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &) const
Qt::Orientation orientation () const
void setOrientation (Qt::Orientation)
- Public Member Functions inherited from QwtPlotItem
 QwtPlotItem (const QwtText &title=QwtText())
virtual ~QwtPlotItem ()
void attach (QwtPlot *plot)
void detach ()
void hide ()
bool isVisible () const
virtual void itemChanged ()
virtual QWidget * legendItem () const
QRectF paintRect (const QwtScaleMap &, const QwtScaleMap &) const
QwtPlotplot () const
QRectF scaleRect (const QwtScaleMap &, const QwtScaleMap &) const
void setAxes (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 QwtTexttitle () const
virtual void updateLegend (QwtLegend *) const
int xAxis () const
int yAxis () const
double z () const
- Public Member Functions inherited from QwtLegendItemManager
 QwtLegendItemManager ()
virtual ~QwtLegendItemManager ()

Protected Member Functions

virtual void drawSymbols (QPainter *, const QwtIntervalSymbol &, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const
virtual void drawTube (QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const
void init ()

Additional Inherited Members

- Protected Attributes inherited from QwtPlotSeriesItem< QwtIntervalSample >
QwtSeriesData
< QwtIntervalSample > * 
d_series

Detailed Description

QwtPlotIntervalCurve represents a series of samples, where each value is associated with an interval ( $[y1,y2] = f(x)$ ).

The representation depends on the style() and an optional symbol() that is displayed for each interval. QwtPlotIntervalCurve might be used to disply error bars or the area between 2 curves.


Member Enumeration Documentation

Curve styles. The default setting is QwtPlotIntervalCurve::Tube.

See also:
setStyle(), style()
Enumerator:
NoCurve 

Don't draw a curve. Note: This doesn't affect the symbols.

Tube 

Build 2 curves from the upper and lower limits of the intervals and draw them with the pen(). The area between the curves is filled with the brush().

UserCurve 

Styles >= QwtPlotIntervalCurve::UserCurve are reserved for derived classes that overload drawSeries() with additional application specific curve types.

Attributes to modify the drawing algorithm.

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.

ClipSymbol 

Check if a symbol is on the plot canvas before painting it.


Constructor & Destructor Documentation

QwtPlotIntervalCurve::QwtPlotIntervalCurve ( const QString &  title = QString::null)
explicit

Constructor

Parameters:
titleTitle of the curve
QwtPlotIntervalCurve::QwtPlotIntervalCurve ( const QwtText title)
explicit

Constructor

Parameters:
titleTitle of the curve

Member Function Documentation

QRectF QwtPlotIntervalCurve::boundingRect ( ) const
virtual
Returns:
Bounding rectangle of all samples. For an empty series the rectangle is invalid.

Reimplemented from QwtPlotSeriesItem< QwtIntervalSample >.

const QBrush & QwtPlotIntervalCurve::brush ( ) const
Returns:
Brush used to fill the area in Tube style()
See also:
setBrush(), setStyle(), CurveStyle
void QwtPlotIntervalCurve::drawLegendIdentifier ( QPainter *  painter,
const QRectF &  rect 
) const
virtual

Draw the identifier for the legend.

In case of Tube style() a plain rectangle filled with the brush() is painted. If a symbol is assigned it is painted centered into rect.

Parameters:
painterPainter
rectBounding rectangle for the identifier

Reimplemented from QwtLegendItemManager.

void QwtPlotIntervalCurve::drawSeries ( QPainter *  painter,
const QwtScaleMap xMap,
const QwtScaleMap yMap,
const QRectF &  canvasRect,
int  from,
int  to 
) const
virtual

Draw a subset of the samples

Parameters:
painterPainter
xMapMaps x-values into pixel coordinates.
yMapMaps y-values into pixel coordinates.
canvasRectContents rect of the canvas
fromIndex of the first sample to be painted
toIndex of the last sample to be painted. If to < 0 the series will be painted to its last sample.
See also:
drawTube(), drawSymbols()

Implements QwtPlotAbstractSeriesItem.

void QwtPlotIntervalCurve::drawSymbols ( QPainter *  painter,
const QwtIntervalSymbol symbol,
const QwtScaleMap xMap,
const QwtScaleMap yMap,
const QRectF &  canvasRect,
int  from,
int  to 
) const
protectedvirtual

Draw symbols for a subset of the samples

Parameters:
painterPainter
symbolInterval symbol
xMapx map
yMapy map
canvasRectContents rect of the canvas
fromIndex of the first sample to be painted
toIndex of the last sample to be painted
See also:
setSymbol(), drawSeries(), drawTube()
void QwtPlotIntervalCurve::drawTube ( QPainter *  painter,
const QwtScaleMap xMap,
const QwtScaleMap yMap,
const QRectF &  canvasRect,
int  from,
int  to 
) const
protectedvirtual

Draw a tube

Builds 2 curves from the upper and lower limits of the intervals and draws them with the pen(). The area between the curves is filled with the brush().

Parameters:
painterPainter
xMapMaps x-values into pixel coordinates.
yMapMaps y-values into pixel coordinates.
canvasRectContents rect of the canvas
fromIndex of the first sample to be painted
toIndex of the last sample to be painted. If to < 0 the series will be painted to its last sample.
See also:
drawSeries(), drawSymbols()
const QPen & QwtPlotIntervalCurve::pen ( ) const

Return the pen used to draw the lines.

See also:
setPen(), brush()
int QwtPlotIntervalCurve::rtti ( ) const
virtual
Returns:
QwtPlotItem::Rtti_PlotIntervalCurve

Reimplemented from QwtPlotItem.

void QwtPlotIntervalCurve::setBrush ( const QBrush &  brush)

Assign a brush.

The brush is used to fill the area in Tube style().

Parameters:
brushBrush
See also:
brush(), pen(), setStyle(), CurveStyle
void QwtPlotIntervalCurve::setPaintAttribute ( PaintAttribute  attribute,
bool  on = true 
)

Specify an attribute how to draw the curve

Parameters:
attributePaint attribute
onOn/Off
See also:
testPaintAttribute()
void QwtPlotIntervalCurve::setPen ( const QPen &  pen)

Assign a pen.

Parameters:
penNew pen
See also:
pen(), brush()
void QwtPlotIntervalCurve::setSamples ( const QVector< QwtIntervalSample > &  samples)

Initialize data with an array of samples.

Parameters:
samplesVector of samples
void QwtPlotIntervalCurve::setStyle ( CurveStyle  style)

Set the curve's drawing style

Parameters:
styleCurve style
See also:
CurveStyle, style()
void QwtPlotIntervalCurve::setSymbol ( const QwtIntervalSymbol symbol)

Assign a symbol.

Parameters:
symbolSymbol
See also:
symbol()
QwtPlotIntervalCurve::CurveStyle QwtPlotIntervalCurve::style ( ) const

Return the current style.

See also:
setStyle()
const QwtIntervalSymbol * QwtPlotIntervalCurve::symbol ( ) const
Returns:
Current symbol or NULL, when no symbol has been assigned
See also:
setSymbol()
bool QwtPlotIntervalCurve::testPaintAttribute ( PaintAttribute  attribute) const

Return the current paint attributes.

See also:
PaintAttribute, setPaintAttribute()