28#ifndef QWT_PLOT_CURVE_H
29#define QWT_PLOT_CURVE_H
31#include "qwt_global.h"
32#include "qwt_plot_seriesitem.h"
149 Q_DECLARE_FLAGS(CurveAttributes, CurveAttribute)
163 LegendNoAttribute = 0x00,
169 LegendShowLine = 0x01,
174 LegendShowSymbol = 0x02,
180 LegendShowBrush = 0x04
183 Q_DECLARE_FLAGS(LegendAttributes, LegendAttribute)
212 MinimizeMemory = 0x04,
245 FilterPointsAggressive = 0x10,
260 FilterPointsPixel = 0x20,
276 FilterPointsLTTB = 0x40,
279 Q_DECLARE_FLAGS(PaintAttributes, PaintAttribute)
282 explicit QwtPlotCurve(
const QString& title = QString());
291 virtual int rtti()
const override;
297 void setPaintAttribute(PaintAttribute,
bool on =
true);
300 bool testPaintAttribute(PaintAttribute)
const;
303 void setLegendAttribute(LegendAttribute,
bool on =
true);
306 bool testLegendAttribute(LegendAttribute)
const;
309 void setLegendAttributes(LegendAttributes);
312 LegendAttributes legendAttributes()
const;
315 void setRawSamples(
const double* xData,
const double* yData,
int size);
318 void setRawSamples(
const float* xData,
const float* yData,
int size);
321 void setRawSamples(
const double* yData,
int size);
324 void setRawSamples(
const float* yData,
int size);
327 void setSamples(
const double* xData,
const double* yData,
int size);
330 void setSamples(
const float* xData,
const float* yData,
int size);
333 void setSamples(
const double* yData,
int size);
336 void setSamples(
const float* yData,
int size);
366 virtual int closestPoint(
const QPointF& pos,
double* dist =
nullptr)
const;
369 double minXValue()
const;
372 double maxXValue()
const;
375 double minYValue()
const;
378 double maxYValue()
const;
381 void setCurveAttribute(CurveAttribute,
bool on =
true);
384 bool testCurveAttribute(CurveAttribute)
const;
387 void setPen(
const QColor&, qreal width = 0.0, Qt::PenStyle = Qt::SolidLine);
390 void setPen(
const QPen&);
393 const QPen& pen()
const;
396 void setBrush(
const QBrush&);
399 const QBrush& brush()
const;
402 void setBaseline(
double);
405 double baseline()
const;
408 void setStyle(CurveStyle style);
411 CurveStyle style()
const;
429 const QRectF& canvasRect,
431 int to)
const override;
441 virtual void drawCurve(QPainter*,
445 const QRectF& canvasRect,
450 virtual void drawSymbols(QPainter*,
454 const QRectF& canvasRect,
460 drawLines(QPainter*,
const QwtScaleMap& xMap,
const QwtScaleMap& yMap,
const QRectF& canvasRect,
int from,
int to)
const;
464 drawSticks(QPainter*,
const QwtScaleMap& xMap,
const QwtScaleMap& yMap,
const QRectF& canvasRect,
int from,
int to)
const;
468 drawDots(QPainter*,
const QwtScaleMap& xMap,
const QwtScaleMap& yMap,
const QRectF& canvasRect,
int from,
int to)
const;
472 drawSteps(QPainter*,
const QwtScaleMap& xMap,
const QwtScaleMap& yMap,
const QRectF& canvasRect,
int from,
int to)
const;
475 virtual void fillCurve(QPainter*,
const QwtScaleMap&,
const QwtScaleMap&,
const QRectF& canvasRect, QPolygonF&)
const;
508Q_DECLARE_OPERATORS_FOR_FLAGS(QwtPlotCurve::PaintAttributes)
509Q_DECLARE_OPERATORS_FOR_FLAGS(QwtPlotCurve::LegendAttributes)
510Q_DECLARE_OPERATORS_FOR_FLAGS(QwtPlotCurve::CurveAttributes)
Abstract base class for curve fitting algorithms
Definition qwt_curve_fitter.h:39
A paint device for scalable graphics
Definition qwt_graphic.h:85
A plot item, that represents a series of points
Definition qwt_plot_curve.h:75
CurveStyle
Curve styles
Definition qwt_plot_curve.h:82
@ Steps
Definition qwt_plot_curve.h:106
@ Sticks
Definition qwt_plot_curve.h:99
@ Lines
Definition qwt_plot_curve.h:93
@ Dots
Definition qwt_plot_curve.h:114
double minXValue() const
boundingRect().left()
Definition qwt_plot_curve.h:485
CurveAttribute
Attribute for drawing the curve
Definition qwt_plot_curve.h:129
double maxXValue() const
boundingRect().right()
Definition qwt_plot_curve.h:491
LegendAttribute
Attributes how to represent the curve on the legend
Definition qwt_plot_curve.h:158
double minYValue() const
boundingRect().top()
Definition qwt_plot_curve.h:497
PaintAttribute
Attributes to modify the drawing algorithm
Definition qwt_plot_curve.h:191
double maxYValue() const
boundingRect().bottom()
Definition qwt_plot_curve.h:503
virtual QwtGraphic legendIcon(int index, const QSizeF &) const
Return a legend icon
Definition qwt_plot_item.cpp:420
virtual int rtti() const
Runtime type information
Definition qwt_plot_item.cpp:155
virtual void attach(QwtPlot *plot)
Attach the item to a plot
Definition qwt_plot_item.cpp:118
Base class for plot items representing a series of samples
Definition qwt_plot_seriesitem.h:44
virtual QRectF boundingRect() const override
Get the bounding rectangle
Definition qwt_plot_seriesitem.cpp:114
virtual void drawSeries(QPainter *painter, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const =0
Draw a subset of the samples
A 2-D plotting widget
Definition qwt_plot.h:99
A scale map
Definition qwt_scale_map.h:44
Abstract interface for iterating over samples
Definition qwt_series_data.h:88
Class storing a QwtSeriesData object
Definition qwt_series_store.h:91
A class for drawing symbols
Definition qwt_symbol.h:51
A class representing a text
Definition qwt_text.h:70