##// END OF EJS Templates
Make ekgchart compile
Make ekgchart compile

File last commit:

r830:b345b831b8c1
r840:58901e478159
Show More
wavegenerator.h
80 lines | 2.0 KiB | text/x-c | CLexer
Jani Honkonen
Add/modify license headers
r830 /****************************************************************************
**
** Copyright (C) 2012 Digia Plc
** All rights reserved.
** For any questions to Digia, please use contact form at http://qt.digia.com
**
** This file is part of the Qt Commercial Charts Add-on.
**
** $QT_BEGIN_LICENSE$
** Licensees holding valid Qt Commercial licenses may use this file in
** accordance with the Qt Commercial License Agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and Digia.
**
** If you have questions regarding the use of this file, please use
** contact form at http://qt.digia.com
** $QT_END_LICENSE$
**
****************************************************************************/
Michal Klocek
minor. minssing hile
r134 #include <QTimer>
#include <QTime>
#include <QObject>
#include <cmath>
Michal Klocek
Rename QLineChartSeries to QLineSeries
r349 #include <qlineseries.h>
Michal Klocek
minor. minssing hile
r134
QTCOMMERCIALCHART_USE_NAMESPACE
#define PI 3.14159265358979
static const int numPoints =100;
class WaveGenerator: public QObject
{
Q_OBJECT
public:
Michal Klocek
Rename QLineChartSeries to QLineSeries
r349 WaveGenerator(QLineSeries* series1, QLineSeries* series2) :
Michal Klocek
minor. minssing hile
r134 m_series1(series1),
m_series2(series2),
m_wave(0),
m_step(2*PI/numPoints)
{
QTime now = QTime::currentTime();
qsrand((uint)now.msec());
int fluctuate = 100;
for (qreal x = 0; x <= 2*PI; x+=m_step) {
Jani Honkonen
rename functions add() -> append()
r796 series1->append(x, fabs(sin(x)*fluctuate));
series2->append(x, fabs(cos(x)*fluctuate));
Michal Klocek
minor. minssing hile
r134 }
QObject::connect(&m_timer,SIGNAL(timeout()),this,SLOT(update()));
m_timer.setInterval(5000);
m_timer.start();
};
public slots:
void update()
{
int fluctuate;
for (qreal i = 0, x = 0; x <= 2*PI; x+=m_step, i++) {
fluctuate = qrand() % 100;
Michal Klocek
Remove index from QLineChartSeries API
r348 m_series1->replace(x, fabs(sin(x)*fluctuate));
Michal Klocek
minor. minssing hile
r134 fluctuate = qrand() % 100;
Michal Klocek
Remove index from QLineChartSeries API
r348 m_series2->replace(x, fabs(cos(x)*fluctuate));
Michal Klocek
minor. minssing hile
r134 }
}
private:
Michal Klocek
Rename QLineChartSeries to QLineSeries
r349 QLineSeries* m_series1;
QLineSeries* m_series2;
Michal Klocek
minor. minssing hile
r134 int m_wave;
qreal m_step;
QTimer m_timer;
};