summaryrefslogtreecommitdiffstats
path: root/examples/scatterchart
diff options
context:
space:
mode:
authorTomi Korpipää <tomi.korpipaa@digia.com>2013-08-12 13:40:21 +0300
committerTomi Korpipää <tomi.korpipaa@digia.com>2013-08-12 13:40:56 +0300
commitd67c87ec3deb99d52eaa71d1272d72ae77da6216 (patch)
treef810fac0d72c8e0c2c62eeecfc90d547cf552682 /examples/scatterchart
parentc9902fd0189ab2df12ef199933187828c597d56c (diff)
Scatter example updates
Change-Id: I0d108829ad582ed9277bf90b4a5e891ebb742658 Change-Id: I0d108829ad582ed9277bf90b4a5e891ebb742658 Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
Diffstat (limited to 'examples/scatterchart')
-rw-r--r--examples/scatterchart/scatterchart.cpp22
1 files changed, 17 insertions, 5 deletions
diff --git a/examples/scatterchart/scatterchart.cpp b/examples/scatterchart/scatterchart.cpp
index 9dc2c97a..c5330e88 100644
--- a/examples/scatterchart/scatterchart.cpp
+++ b/examples/scatterchart/scatterchart.cpp
@@ -41,9 +41,11 @@
#include "scatterchart.h"
#include <QtDataVis3D/qscatterdataproxy.h>
#include <QtDataVis3D/qvalueaxis.h>
-
+#include <qmath.h>
using namespace QtDataVis3D;
+//#define RANDOM_SCATTER
+
const int numberOfItems = 10000;
ScatterDataModifier::ScatterDataModifier(Q3DScatter *scatter)
@@ -51,8 +53,9 @@ ScatterDataModifier::ScatterDataModifier(Q3DScatter *scatter)
m_fontSize(30.0f)
{
m_chart->setFontSize(m_fontSize);
-
- m_chart->setTheme(ThemeBlueIcy);
+ m_chart->setBarType(Spheres, true);
+ m_chart->setTheme(ThemeBrownSand);
+ m_chart->setShadowQuality(ShadowHigh);
QScatterDataProxy *proxy = new QScatterDataProxy;
m_chart->setDataProxy(proxy);
@@ -79,21 +82,30 @@ void ScatterDataModifier::addData()
dataArray->resize(numberOfItems);
QScatterDataItem *ptrToDataArray = &dataArray->first();
+#if RANDOM_SCATTER
for (int i = 0; i < numberOfItems; i++) {
- //qDebug() << i << ptrToDataArray;
ptrToDataArray->setPosition(
QVector3D((qreal)(rand() % 100) / 100.0 - (qreal)(rand() % 100) / 100.0,
(qreal)(rand() % 100) / 100.0 - (qreal)(rand() % 100) / 100.0,
(qreal)(rand() % 100) / 100.0 - (qreal)(rand() % 100) / 100.0));
ptrToDataArray++;
}
+#else
+ float limit = qSqrt(numberOfItems) / 2.0f;
+ for (float i = -limit; i < limit; i++) {
+ for (float j = -limit; j < limit; j++) {
+ ptrToDataArray->setPosition(QVector3D(i, qCos(qDegreesToRadians((i * j) / 7.5)), j));
+ ptrToDataArray++;
+ }
+ }
+#endif
static_cast<QScatterDataProxy *>(m_chart->dataProxy())->resetArray(dataArray);
}
void ScatterDataModifier::changeStyle()
{
- static int model = 3;
+ static int model = 0;
switch (model) {
case 0:
m_chart->setBarType(Dots, false);