##// END OF EJS Templates
Made Qml Oscilloscope example little more sensible...
Made Qml Oscilloscope example little more sensible Removed spline and animations as the point of the example is to demonstrate high refresh rate use case. Also now default to useOpenGL. Change-Id: Iaf43bd8789893a9ed9bc409038e7d22d1bd7185d Reviewed-by: Titta Heikkala <titta.heikkala@theqtcompany.com>

File last commit:

r2776:bc1f6aa59d42
r2832:faab188cb2e7
Show More
wavechart.cpp
67 lines | 1.8 KiB | text/x-c | CppLexer
Michal Klocek
minor. add missing license files
r875 /****************************************************************************
**
Titta Heikkala
Copyright header changes...
r2776 ** Copyright (C) 2015 The Qt Company Ltd
Michal Klocek
minor. add missing license files
r875 ** All rights reserved.
Titta Heikkala
Copyright header changes...
r2776 ** For any questions to The Qt Company, please use contact form at http://qt.io
Michal Klocek
minor. add missing license files
r875 **
Titta Heikkala
Updated license headers...
r2740 ** This file is part of the Qt Charts module.
Michal Klocek
minor. add missing license files
r875 **
Titta Heikkala
Updated license headers...
r2740 ** Licensees holding valid commercial license for Qt may use this file in
** accordance with the Qt License Agreement provided with the Software
** or, alternatively, in accordance with the terms contained in a written
Titta Heikkala
Copyright header changes...
r2776 ** agreement between you and The Qt Company.
Michal Klocek
minor. add missing license files
r875 **
** If you have questions regarding the use of this file, please use
Titta Heikkala
Updated license headers...
r2740 ** contact form at http://qt.io
Michal Klocek
minor. add missing license files
r875 **
****************************************************************************/
Michal Klocek
Adds test/wavechart
r867 #include "wavechart.h"
#include <cmath>
Titta Heikkala
Qt Charts project file structure change...
r2712 QT_CHARTS_USE_NAMESPACE
Michal Klocek
Adds test/wavechart
r867
#define PI 3.14159265358979
static const int numPoints =100;
WaveChart::WaveChart(QChart* chart, QWidget* parent) :
QChartView(chart, parent),
m_series(new QLineSeries()),
m_wave(0),
m_step(2 * PI / numPoints)
{
QPen blue(Qt::blue);
blue.setWidth(3);
m_series->setPen(blue);
Marek Rosa
removed legend from wavechart and added axes to it
r1622 chart->legend()->setVisible(false);
Michal Klocek
Adds test/wavechart
r867 QTime now = QTime::currentTime();
qsrand((uint) now.msec());
int fluctuate = 100;
for (qreal x = 0; x <= 2 * PI; x += m_step) {
m_series->append(x, fabs(sin(x) * fluctuate));
}
chart->addSeries(m_series);
Marek Rosa
removed legend from wavechart and added axes to it
r1622 chart->createDefaultAxes();
Michal Klocek
Adds test/wavechart
r867
QObject::connect(&m_timer, SIGNAL(timeout()), this, SLOT(update()));
m_timer.setInterval(5000);
m_timer.start();
}
void WaveChart::update()
{
int fluctuate;
Michal Klocek
Fixes and improvments to series API...
r1057 const QList<QPointF>& points = m_series->points();
Michal Klocek
Adds test/wavechart
r867 for (qreal i = 0, x = 0; x <= 2 * PI; x += m_step, i++) {
fluctuate = qrand() % 100;
Michal Klocek
Fixes and improvments to series API...
r1057 m_series->replace(x,points[i].y(),x,fabs(sin(x) * fluctuate));
Michal Klocek
Adds test/wavechart
r867
}
}