timedomainplot.h 877 B

12345678910111213141516171819202122232425262728293031323334
  1. #ifndef TIMEDOMAINPLOT_H
  2. #define TIMEDOMAINPLOT_H
  3. #include "thirdparty/qcustomplot/qcustomplot.h"
  4. #include <QRect>
  5. #include <QQuickPaintedItem>
  6. class TimeDomainPlot: public QQuickPaintedItem
  7. {
  8. public:
  9. explicit TimeDomainPlot(QQuickItem* parent = nullptr);
  10. ~TimeDomainPlot();
  11. const static int DATA_SIZE;
  12. const static double XAXIS_RANGE_START;
  13. const static double XAXIS_RANGE_END;
  14. virtual void paint(QPainter *painter);
  15. void setVoltageGraphData(const QVector<double> &keys, const QVector<double> &values);
  16. void setCurrentGraphData(const QVector<double> &keys, const QVector<double> &values);
  17. void setVoltageRange(double min, double max);
  18. void setCurrentRange(double min, double max);
  19. void replot();
  20. private:
  21. QCustomPlot *_customPlot;
  22. QCPGraph* _voltageGraph;
  23. QCPGraph* _currentGraph;
  24. };
  25. #endif // TIMEDOMAINPLOT_H