diff options
Diffstat (limited to 'examples/scatterchart/scatterchart.cpp')
-rw-r--r-- | examples/scatterchart/scatterchart.cpp | 154 |
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); |