summaryrefslogtreecommitdiffstats
path: root/examples/scatterchart/scatterchart.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'examples/scatterchart/scatterchart.cpp')
-rw-r--r--examples/scatterchart/scatterchart.cpp154
1 files changed, 2 insertions, 152 deletions
diff --git a/examples/scatterchart/scatterchart.cpp b/examples/scatterchart/scatterchart.cpp
index aab230f2..bcb10e92 100644
--- a/examples/scatterchart/scatterchart.cpp
+++ b/examples/scatterchart/scatterchart.cpp
@@ -22,14 +22,13 @@
#include <qmath.h>
using namespace QtDataVis3D;
-//#define RANDOM_SCATTER
+//#define RANDOM_SCATTER // Uncomment this to switch to random scatter
const int numberOfItems = 10000;
ScatterDataModifier::ScatterDataModifier(Q3DScatter *scatter)
: m_chart(scatter),
- m_fontSize(30.0f),
- m_selectedItem(-1)
+ m_fontSize(40.0f)
{
QFont font = m_chart->font();
font.setPointSize(m_fontSize);
@@ -45,8 +44,6 @@ ScatterDataModifier::ScatterDataModifier(Q3DScatter *scatter)
QScatterDataProxy *proxy = new QScatterDataProxy;
proxy->setItemLabelFormat("@xTitle: @xLabel @yTitle: @yLabel @zTitle: @zLabel");
m_chart->setActiveDataProxy(proxy);
-
- connect(&m_timer, &QTimer::timeout, this, &ScatterDataModifier::timeout);
}
ScatterDataModifier::~ScatterDataModifier()
@@ -150,14 +147,6 @@ void ScatterDataModifier::changeFont(const QFont &font)
m_chart->setFont(newFont);
}
-void ScatterDataModifier::changeFontSize(int fontsize)
-{
- m_fontSize = fontsize;
- QFont font = m_chart->font();
- font.setPointSize(m_fontSize);
- m_chart->setFont(font);
-}
-
void ScatterDataModifier::shadowQualityUpdatedByVisual(QDataVis::ShadowQuality sq)
{
int quality = int(sq);
@@ -165,145 +154,6 @@ void ScatterDataModifier::shadowQualityUpdatedByVisual(QDataVis::ShadowQuality s
emit shadowQualityChanged(quality);
}
-void ScatterDataModifier::clear()
-{
- m_chart->activeDataProxy()->resetArray(0);
- qDebug() << m_loopCounter << "Cleared array";
-}
-
-void ScatterDataModifier::addOne()
-{
- QScatterDataItem item(randVector());
- int addIndex = m_chart->activeDataProxy()->addItem(item);
- qDebug() << m_loopCounter << "added one to index:" << addIndex << "array size:" << m_chart->activeDataProxy()->array()->size();
-}
-
-void ScatterDataModifier::addBunch()
-{
- QScatterDataArray items(100);
- for (int i = 0; i < items.size(); i++)
- items[i].setPosition(randVector());
- int addIndex = m_chart->activeDataProxy()->addItems(items);
- qDebug() << m_loopCounter << "added bunch to index:" << addIndex << "array size:" << m_chart->activeDataProxy()->array()->size();
-}
-
-void ScatterDataModifier::insertOne()
-{
- QScatterDataItem item(randVector());
- m_chart->activeDataProxy()->insertItem(0, item);
- qDebug() << m_loopCounter << "Inserted one, array size:" << m_chart->activeDataProxy()->array()->size();
-}
-
-void ScatterDataModifier::insertBunch()
-{
- QScatterDataArray items(100);
- for (int i = 0; i < items.size(); i++)
- items[i].setPosition(randVector());
- m_chart->activeDataProxy()->insertItems(0, items);
- qDebug() << m_loopCounter << "Inserted bunch, array size:" << m_chart->activeDataProxy()->array()->size();
-}
-
-void ScatterDataModifier::changeOne()
-{
- if (m_selectedItem >= 0 && m_chart->activeDataProxy()->array()->size()) {
- QScatterDataItem item(randVector());
- m_chart->activeDataProxy()->setItem(m_selectedItem, item);
- qDebug() << m_loopCounter << "Changed one, array size:" << m_chart->activeDataProxy()->array()->size();
- }
-}
-
-void ScatterDataModifier::changeBunch()
-{
- if (m_chart->activeDataProxy()->array()->size()) {
- int amount = qMin(m_chart->activeDataProxy()->array()->size(), 100);
- QScatterDataArray items(amount);
- for (int i = 0; i < items.size(); i++)
- items[i].setPosition(randVector());
- m_chart->activeDataProxy()->setItems(0, items);
- qDebug() << m_loopCounter << "Changed bunch, array size:" << m_chart->activeDataProxy()->array()->size();
- }
-}
-
-void ScatterDataModifier::removeOne()
-{
- if (m_selectedItem >= 0) {
- m_chart->activeDataProxy()->removeItems(m_selectedItem, 1);
- qDebug() << m_loopCounter << "Removed one, array size:" << m_chart->activeDataProxy()->array()->size();
- }
-}
-
-void ScatterDataModifier::removeBunch()
-{
- m_chart->activeDataProxy()->removeItems(0, 100);
- qDebug() << m_loopCounter << "Removed bunch, array size:" << m_chart->activeDataProxy()->array()->size();
-}
-
-void ScatterDataModifier::timeout()
-{
- int doWhat = rand() % 8;
- if (!(rand() % 100))
- doWhat = -1;
-
- switch (doWhat) {
- case 0:
- addOne();
- break;
- case 1:
- addBunch();
- break;
- case 2:
- insertOne();
- break;
- case 3:
- insertBunch();
- break;
- case 4:
- changeOne();
- break;
- case 5:
- changeBunch();
- break;
- case 6:
- removeOne();
- break;
- case 7:
- removeBunch();
- break;
- default:
- clear();
- break;
- }
-
- m_loopCounter++;
-}
-
-void ScatterDataModifier::startStopTimer()
-{
- if (m_timer.isActive()) {
- m_timer.stop();
- } else {
- clear();
- m_loopCounter = 0;
- m_timer.start(0);
- }
-}
-
-void ScatterDataModifier::selectItem()
-{
- int targetItem(3);
- int noSelection(-1);
- if (m_selectedItem != targetItem)
- m_chart->setSelectedItemIndex(targetItem);
- else
- m_chart->setSelectedItemIndex(noSelection);
-}
-
-void ScatterDataModifier::handleSelectionChange(int index)
-{
- m_selectedItem = index;
- qDebug() << "Selected item index:" << index;
-}
-
void ScatterDataModifier::changeShadowQuality(int quality)
{
QDataVis::ShadowQuality sq = QDataVis::ShadowQuality(quality);