QwtPlotIntervalCurve − QwtPlotIntervalCurve represents a series of samples, where each value is associated with an interval ( $[y1,y2] = f(x)$ ).
#include <qwt_plot_intervalcurve.h>
Inherits QwtPlotSeriesItem, and QwtSeriesStore< QwtIntervalSample >.
enum
CurveStyle { NoCurve, Tube,
UserCurve = 100 }
Curve styles. The default setting is
QwtPlotIntervalCurve::Tube.
enum PaintAttribute { ClipPolygons = 0x01,
ClipSymbol = 0x02, TubeAsLines = 0x10 }
typedef QFlags< PaintAttribute >
PaintAttributes
Public Types inherited from QwtPlotItem
enum RttiValues {
Rtti_PlotItem = 0, Rtti_PlotGrid,
Rtti_PlotScale, Rtti_PlotLegend,
Rtti_PlotMarker, Rtti_PlotCurve,
Rtti_PlotSpectroCurve, Rtti_PlotIntervalCurve,
Rtti_PlotHistogram, Rtti_PlotSpectrogram,
Rtti_PlotGraphic, Rtti_PlotTradingCurve,
Rtti_PlotBarChart, Rtti_PlotMultiBarChart,
Rtti_PlotShape, Rtti_PlotTextLabel,
Rtti_PlotZone, Rtti_PlotVectorField,
Rtti_PlotUserItem = 1000 }
Runtime type information.
enum ItemAttribute { Legend = 0x01,
AutoScale = 0x02, Margins = 0x04 }
Plot Item Attributes.
enum ItemInterest { ScaleInterest = 0x01,
LegendInterest = 0x02 }
Plot Item Interests.
enum RenderHint { RenderAntialiased = 0x1 }
Render hints.
typedef QFlags< ItemAttribute >
ItemAttributes
typedef QFlags< ItemInterest >
ItemInterests
typedef QFlags< RenderHint >
RenderHints
QwtPlotIntervalCurve
(const QString &title=QString())
QwtPlotIntervalCurve (const QwtText
&title)
virtual ˜QwtPlotIntervalCurve ()
Destructor.
virtual int rtti () const override
void setPaintAttribute (PaintAttribute, bool
on=true)
bool testPaintAttribute (PaintAttribute) const
void setSamples (const QVector<
QwtIntervalSample > &)
void setSamples (QwtSeriesData<
QwtIntervalSample > *)
void setPen (const QColor &, qreal width=0.0,
Qt::PenStyle=Qt::SolidLine)
void setPen (const QPen &)
Assign a pen.
const QPen & pen () const
void setBrush (const QBrush &)
const QBrush & brush () const
void setStyle (CurveStyle style)
CurveStyle style () const
void setSymbol (const QwtIntervalSymbol *)
const QwtIntervalSymbol * symbol () const
virtual void drawSeries (QPainter *, const
QwtScaleMap &xMap, const QwtScaleMap
&yMap, const QRectF &canvasRect, int from, int to)
const override
virtual QRectF boundingRect () const override
virtual QwtGraphic legendIcon (int index, const
QSizeF &) const override
Public Member Functions inherited from QwtPlotSeriesItem
QwtPlotSeriesItem (const
QString &title=QString())
QwtPlotSeriesItem (const QwtText
&title)
virtual ˜QwtPlotSeriesItem ()
Destructor.
void setOrientation (Qt::Orientation)
Qt::Orientation orientation () const
virtual void draw (QPainter *, const
QwtScaleMap &xMap, const QwtScaleMap
&yMap, const QRectF &canvasRect) const override
Draw the complete series.
virtual void updateScaleDiv (const QwtScaleDiv
&, const QwtScaleDiv &) override
Update the item to changes of the axes scale division.
Public Member Functions inherited from QwtPlotItem
QwtPlotItem ()
QwtPlotItem (const QString &title)
QwtPlotItem (const QwtText &title)
virtual ˜QwtPlotItem ()
Destroy the QwtPlotItem.
void attach (QwtPlot *plot)
Attach the item to a plot.
void detach ()
This method detaches a QwtPlotItem from any
QwtPlot it has been associated with.
QwtPlot * plot () const
Return attached plot.
void setTitle (const QString &title)
void setTitle (const QwtText
&title)
const QwtText & title () const
void setItemAttribute (ItemAttribute, bool
on=true)
bool testItemAttribute (ItemAttribute) const
void setItemInterest (ItemInterest, bool
on=true)
bool testItemInterest (ItemInterest) const
void setRenderHint (RenderHint, bool on=true)
bool testRenderHint (RenderHint) const
void setRenderThreadCount (uint numThreads)
uint renderThreadCount () const
void setLegendIconSize (const QSize &)
QSize legendIconSize () const
double z () const
void setZ (double z)
Set the z value.
void show ()
Show the item.
void hide ()
Hide the item.
virtual void setVisible (bool)
bool isVisible () const
void setAxes (QwtAxisId xAxis, QwtAxisId
yAxis)
void setXAxis (QwtAxisId)
QwtAxisId xAxis () const
Return xAxis.
void setYAxis (QwtAxisId)
QwtAxisId yAxis () const
Return yAxis.
virtual void itemChanged ()
virtual void legendChanged ()
virtual void getCanvasMarginHint (const
QwtScaleMap &xMap, const QwtScaleMap
&yMap, const QRectF &canvasRect, double &left,
double &top, double &right, double &bottom)
const
Calculate a hint for the canvas margin.
virtual void updateLegend (const QwtPlotItem
*, const QList< QwtLegendData > &)
Update the item to changes of the legend info.
QRectF scaleRect (const QwtScaleMap &,
const QwtScaleMap &) const
Calculate the bounding scale rectangle of 2 maps.
QRectF paintRect (const QwtScaleMap &,
const QwtScaleMap &) const
Calculate the bounding paint rectangle of 2 maps.
virtual QList< QwtLegendData >
legendData () const
Return all information, that is needed to represent the item
on the legend.
Public Member Functions inherited from QwtAbstractSeriesStore
virtual
˜QwtAbstractSeriesStore ()
Destructor.
Public Member Functions inherited from QwtSeriesStore< QwtIntervalSample >
QwtSeriesStore ()
Constructor The store contains no series.
˜QwtSeriesStore ()
Destructor.
void setData (QwtSeriesData<
QwtIntervalSample > *series)
QwtSeriesData< QwtIntervalSample > *
data ()
const QwtSeriesData< QwtIntervalSample >
* data () const
QwtIntervalSample sample (int index) const
virtual size_t dataSize () const override
virtual QRectF dataRect () const override
virtual void setRectOfInterest (const QRectF
&rect) override
QwtSeriesData< QwtIntervalSample > *
swapData (QwtSeriesData<
QwtIntervalSample > *series)
void
init ()
Initialize internal members.
virtual void drawTube (QPainter *, const
QwtScaleMap &xMap, const QwtScaleMap
&yMap, const QRectF &canvasRect, int from, int to)
const
virtual void drawSymbols (QPainter *, const
QwtIntervalSymbol &, const QwtScaleMap
&xMap, const QwtScaleMap &yMap, const QRectF
&canvasRect, int from, int to) const
Protected Member Functions inherited from QwtPlotSeriesItem
virtual void dataChanged
() override
dataChanged() indicates, that the series has been
changed.
Protected Member Functions inherited from QwtPlotItem
QwtGraphic defaultIcon
(const QBrush &, const QSizeF &) const
Return a default icon from a brush.
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 display error bars or the area between 2 curves.
Definition at line 27 of file qwt_plot_intervalcurve.h.
An ORed combination of PaintAttribute values.
Definition at line 98 of file qwt_plot_intervalcurve.h.
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.
Definition at line 38 of file qwt_plot_intervalcurve.h.
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.
TubeAsLines
Fill the tube with horizontal or vertical lines and unite overlapping border lines. This attribute is useful for large data sets, where consecutive samples are often mapped to the same coordinate.
Beside other minor visual differences the filling is always monochrome - using brush().color().
This algorithm is very fast and effective and can be used inside a replot cycle. In the worst case the number of lines to be rendered will be 5 times the ( width/height - depending on the orientation() ) of the plot canvas.
Note
Has only an effect, when drawing to a paint device in integer coordinates ( f.e. all widgets on screen ).
See also
QwtPlotCurve::FilterPointsAggressive
Definition at line 64 of file qwt_plot_intervalcurve.h.
Constructor
Parameters
title Title of the curve
Definition at line 524 of file qwt_plot_intervalcurve.cpp.
Constructor
Parameters
title Title of the curve
Definition at line 514 of file qwt_plot_intervalcurve.cpp.
Destructor.
Definition at line 531 of file qwt_plot_intervalcurve.cpp.
Returns
Bounding rectangle of all samples. For an empty series the rectangle is invalid.
Reimplemented from QwtPlotSeriesItem.
Definition at line 734 of file qwt_plot_intervalcurve.cpp.
Returns
Brush used to fill the area in Tube style()
See also
setBrush(), setStyle(), CurveStyle
Definition at line 725 of file qwt_plot_intervalcurve.cpp.
Draw a subset of the samples
Parameters
painter Painter
xMap Maps x-values into pixel coordinates.
yMap Maps y-values into pixel coordinates.
canvasRect Contents rectangle of the canvas
from Index of the first sample to be painted
to Index of the last sample to be painted. If to < 0
the series will be painted to its last sample.
See also
drawTube(), drawSymbols()
Implements QwtPlotSeriesItem.
Definition at line 756 of file qwt_plot_intervalcurve.cpp.
Draw symbols for a subset of the samples
Parameters
painter Painter
symbol Interval symbol
xMap x map
yMap y map
canvasRect Contents rectangle of the canvas
from Index of the first sample to be painted
to Index of the last sample to be painted
See also
setSymbol(), drawSeries(), drawTube()
Definition at line 829 of file qwt_plot_intervalcurve.cpp.
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
painter Painter
xMap Maps x-values into pixel coordinates.
yMap Maps y-values into pixel coordinates.
canvasRect Contents rectangle of the canvas
from Index of the first sample to be painted
to Index of the last sample to be painted. If to < 0
the series will be painted to its last sample.
See also
drawSeries(), drawSymbols()
Definition at line 797 of file qwt_plot_intervalcurve.cpp.
Initialize internal members.
Definition at line 537 of file qwt_plot_intervalcurve.cpp.
Returns
Icon for the legend
In case of Tube style() the icon is a plain rectangle filled with the brush(). If a symbol is assigned it is scaled to size.
Parameters
index Index of the
legend entry ( ignored as there is only one )
size Icon size
See also
QwtPlotItem::setLegendIconSize(), QwtPlotItem::legendData()
Reimplemented from QwtPlotItem.
Definition at line 896 of file qwt_plot_intervalcurve.cpp.
Returns
Pen used to draw the lines
See also
setPen(), brush()
Definition at line 697 of file qwt_plot_intervalcurve.cpp.
Returns
QwtPlotItem::Rtti_PlotIntervalCurve
Reimplemented from QwtPlotItem.
Definition at line 549 of file qwt_plot_intervalcurve.cpp.
Assign a brush.
The brush is used to fill the area in Tube style().
Parameters
brush Brush
See also
brush(), pen(), setStyle(), CurveStyle
Definition at line 710 of file qwt_plot_intervalcurve.cpp.
Specify an attribute how to draw the curve
Parameters
attribute Paint
attribute
on On/Off
See also
testPaintAttribute()
Definition at line 561 of file qwt_plot_intervalcurve.cpp.
Build and assign a 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
See also
pen(), brush()
Definition at line 672 of file qwt_plot_intervalcurve.cpp.
Assign a pen.
Parameters
pen New pen
See also
pen(), brush()
Definition at line 682 of file qwt_plot_intervalcurve.cpp.
Initialize data with an array of samples.
Parameters
samples Vector of samples
Definition at line 584 of file qwt_plot_intervalcurve.cpp.
Assign a series of samples
setSamples() is just a wrapper for setData() without any additional value - beside that it is easier to find for the developer.
Parameters
data Data
Warning
The item takes ownership of the data object, deleting it when its not used anymore.
Definition at line 600 of file qwt_plot_intervalcurve.cpp.
Set the curve’s drawing style
Parameters
style Curve style
See also
CurveStyle, style()
Definition at line 612 of file qwt_plot_intervalcurve.cpp.
Assign a symbol.
Parameters
symbol Symbol
See also
symbol()
Definition at line 638 of file qwt_plot_intervalcurve.cpp.
Returns
Style of the curve
See also
setStyle()
Definition at line 627 of file qwt_plot_intervalcurve.cpp.
Returns
Current symbol or NULL, when no symbol has been assigned
See also
setSymbol()
Definition at line 654 of file qwt_plot_intervalcurve.cpp.
Returns
True, when attribute is enabled
See also
PaintAttribute, setPaintAttribute()
Definition at line 574 of file qwt_plot_intervalcurve.cpp.
Generated automatically by Doxygen for Qwt User’s Guide from the source code.