diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/barstest/chart.cpp | 72 | ||||
-rw-r--r-- | tests/barstest/chart.h | 7 | ||||
-rw-r--r-- | tests/multigraphs/data.cpp | 19 | ||||
-rw-r--r-- | tests/qmlcamera/qml/qmlcamera/Data.qml | 7 | ||||
-rw-r--r-- | tests/qmlcamera/qml/qmlcamera/main.qml | 3 | ||||
-rw-r--r-- | tests/scattertest/main.cpp | 2 | ||||
-rw-r--r-- | tests/scattertest/scatterchart.cpp | 64 | ||||
-rw-r--r-- | tests/spectrum/spectrumapp/main.cpp | 5 | ||||
-rw-r--r-- | tests/surfacetest/graphmodifier.cpp | 16 | ||||
-rw-r--r-- | tests/surfacetest/graphmodifier.h | 2 |
10 files changed, 123 insertions, 74 deletions
diff --git a/tests/barstest/chart.cpp b/tests/barstest/chart.cpp index 268c8faa..496a454d 100644 --- a/tests/barstest/chart.cpp +++ b/tests/barstest/chart.cpp @@ -50,8 +50,9 @@ GraphModifier::GraphModifier(Q3DBars *barchart) m_monthAxis(new Q3DCategoryAxis), m_genericRowAxis(new Q3DCategoryAxis), m_genericColumnAxis(new Q3DCategoryAxis), - m_temperatureData(new QBarDataProxy), - m_genericData(new QBarDataProxy), + m_temperatureData(new QBar3DSeries), + m_temperatureData2(new QBar3DSeries), + m_genericData(new QBar3DSeries), m_currentAxis(m_fixedRangeAxis), m_negativeValuesOn(false), m_useNullInputHandler(false), @@ -112,11 +113,9 @@ GraphModifier::GraphModifier(Q3DBars *barchart) m_chart->setShadowQuality(QDataVis::ShadowQualitySoftMedium); m_temperatureData->setItemLabelFormat(QStringLiteral("@valueTitle for @colLabel @rowLabel: @valueLabel")); + m_temperatureData2->setItemLabelFormat(QStringLiteral("** @valueTitle for @colLabel @rowLabel: @valueLabel **")); m_genericData->setItemLabelFormat(QStringLiteral("@valueTitle for (@rowIdx, @colIdx): @valueLabel")); - m_genericData->setColumnLabels(genericColumnLabels); - - m_chart->addDataProxy(m_temperatureData); - m_chart->addDataProxy(m_genericData); + m_genericData->dataProxy()->setColumnLabels(genericColumnLabels); m_chart->setFont(QFont("Times Roman", 20)); @@ -144,7 +143,9 @@ void GraphModifier::restart(bool dynamicData) m_static = !dynamicData; if (m_static) { - m_chart->setActiveDataProxy(m_temperatureData); + m_chart->addSeries(m_temperatureData); + m_chart->addSeries(m_temperatureData2); + m_chart->removeSeries(m_genericData); m_chart->setTitle(QStringLiteral("Average temperatures in Oulu, Finland (2006-2012)")); @@ -154,7 +155,9 @@ void GraphModifier::restart(bool dynamicData) m_chart->setSelectionMode(QDataVis::SelectionRow | QDataVis::SelectionSlice); } else { - m_chart->setActiveDataProxy(m_genericData); + m_chart->removeSeries(m_temperatureData); + m_chart->removeSeries(m_temperatureData2); + m_chart->addSeries(m_genericData); m_chart->setTitle(QStringLiteral("Generic data")); @@ -213,10 +216,11 @@ void GraphModifier::releaseAxes() void GraphModifier::releaseProxies() { - // Releases all proxies - results in default proxy. - // Proxies will get readded back when graph is switched as setDataProxy call is made. - m_chart->releaseDataProxy(m_temperatureData); - m_chart->releaseDataProxy(m_genericData); + // Releases all series + // Correct series will get readded back when graph is switched + m_chart->removeSeries(m_temperatureData); + m_chart->removeSeries(m_temperatureData2); + m_chart->removeSeries(m_genericData); } void GraphModifier::flipViews() @@ -260,7 +264,7 @@ void GraphModifier::createMassiveArray() dataArray->append(dataRow); } - m_chart->activeDataProxy()->resetArray(dataArray, genericRowLabels, genericColumnLabels); + m_chart->seriesList().at(0)->dataProxy()->resetArray(dataArray, genericRowLabels, genericColumnLabels); qDebug() << "Created Massive Array (" << arrayDimension << "), time:" << timer.elapsed(); } @@ -295,9 +299,23 @@ void GraphModifier::resetTemperatureData() dataSet->append(dataRow); } + QBarDataArray *dataSet2 = new QBarDataArray; + + dataSet2->reserve(m_years.size()); + for (int year = m_years.size() - 1; year >= 0; year--) { + dataRow = new QBarDataRow(m_months.size()); + // Create data items + for (int month = m_months.size() - 1; month >= 0 ; month--) { + // Add data to rows + (*dataRow)[month].setValue(temp[year][month]); + } + // Add row to set + dataSet2->append(dataRow); + } // Add data to chart (chart assumes ownership) - m_temperatureData->resetArray(dataSet, m_years, m_months); + m_temperatureData->dataProxy()->resetArray(dataSet, m_years, m_months); + m_temperatureData2->dataProxy()->resetArray(dataSet2, m_years, m_months); } @@ -318,7 +336,7 @@ void GraphModifier::addRow() // TODO Needs to be changed to account for data window offset once it is implemented. QString label = QStringLiteral("Add %1").arg(addCounter++); - m_chart->activeDataProxy()->addRow(dataRow, label); + m_chart->seriesList().at(0)->dataProxy()->addRow(dataRow, label); } void GraphModifier::addRows() @@ -328,13 +346,13 @@ void GraphModifier::addRows() for (int i = 0; i < m_rowCount; i++) { QBarDataRow *dataRow = new QBarDataRow(m_columnCount); for (int j = 0; j < m_columnCount; j++) - (*dataRow)[j].setValue(qreal(j + i + m_chart->activeDataProxy()->rowCount()) + m_minval); + (*dataRow)[j].setValue(qreal(j + i + m_chart->seriesList().at(0)->dataProxy()->rowCount()) + m_minval); dataArray.append(dataRow); labels.append(QStringLiteral("Add %1").arg(addCounter++)); } // TODO Needs to be changed to account for data window offset once it is implemented. - m_chart->activeDataProxy()->addRows(dataArray, labels); + m_chart->seriesList().at(0)->dataProxy()->addRows(dataArray, labels); } void GraphModifier::insertRow() @@ -347,7 +365,7 @@ void GraphModifier::insertRow() // TODO Needs to be changed to account for data window offset once it is implemented. int row = qMax(m_selectedBar.x(), 0); QString label = QStringLiteral("Insert %1").arg(insertCounter++); - m_chart->activeDataProxy()->insertRow(row, dataRow, label); + m_chart->seriesList().at(0)->dataProxy()->insertRow(row, dataRow, label); } void GraphModifier::insertRows() @@ -359,14 +377,14 @@ void GraphModifier::insertRows() for (int i = 0; i < m_rowCount; i++) { QBarDataRow *dataRow = new QBarDataRow(m_columnCount); for (int j = 0; j < m_columnCount; j++) - (*dataRow)[j].setValue(qreal(j + i + m_chart->activeDataProxy()->rowCount()) + m_minval); + (*dataRow)[j].setValue(qreal(j + i + m_chart->seriesList().at(0)->dataProxy()->rowCount()) + m_minval); dataArray.append(dataRow); labels.append(QStringLiteral("Insert %1").arg(insertCounter++)); } // TODO Needs to be changed to account for data window offset once it is implemented. int row = qMax(m_selectedBar.x(), 0); - m_chart->activeDataProxy()->insertRows(row, dataArray, labels); + m_chart->seriesList().at(0)->dataProxy()->insertRows(row, dataArray, labels); qDebug() << "Inserted" << m_rowCount << "rows, time:" << timer.elapsed(); } @@ -377,7 +395,7 @@ void GraphModifier::changeItem() int column = m_selectedBar.y(); if (row >= 0 && column >= 0) { QBarDataItem item(qreal(rand() % 100)); - m_chart->activeDataProxy()->setItem(row, column, item); + m_chart->seriesList().at(0)->dataProxy()->setItem(row, column, item); } } @@ -386,11 +404,11 @@ void GraphModifier::changeRow() // TODO Needs to be changed to account for data window offset once it is implemented. int row = m_selectedBar.x(); if (row >= 0) { - QBarDataRow *newRow = new QBarDataRow(m_chart->activeDataProxy()->rowAt(row)->size()); + QBarDataRow *newRow = new QBarDataRow(m_chart->seriesList().at(0)->dataProxy()->rowAt(row)->size()); for (int i = 0; i < newRow->size(); i++) (*newRow)[i].setValue(qreal(rand() % int(m_maxval)) + m_minval); QString label = QStringLiteral("Change %1").arg(changeCounter++); - m_chart->activeDataProxy()->setRow(row, newRow, label); + m_chart->seriesList().at(0)->dataProxy()->setRow(row, newRow, label); } } @@ -403,13 +421,13 @@ void GraphModifier::changeRows() QBarDataArray newArray; QStringList labels; for (int i = startRow; i <= row; i++ ) { - QBarDataRow *newRow = new QBarDataRow(m_chart->activeDataProxy()->rowAt(i)->size()); + QBarDataRow *newRow = new QBarDataRow(m_chart->seriesList().at(0)->dataProxy()->rowAt(i)->size()); for (int j = 0; j < newRow->size(); j++) (*newRow)[j].setValue(qreal(rand() % int(m_maxval)) + m_minval); newArray.append(newRow); labels.append(QStringLiteral("Change %1").arg(changeCounter++)); } - m_chart->activeDataProxy()->setRows(startRow, newArray, labels); + m_chart->seriesList().at(0)->dataProxy()->setRows(startRow, newArray, labels); } } @@ -418,7 +436,7 @@ void GraphModifier::removeRow() // TODO Needs to be changed to account for data window offset once it is implemented. int row = m_selectedBar.x(); if (row >= 0) - m_chart->activeDataProxy()->removeRows(row, 1); + m_chart->seriesList().at(0)->dataProxy()->removeRows(row, 1); } void GraphModifier::removeRows() @@ -427,7 +445,7 @@ void GraphModifier::removeRows() int row = m_selectedBar.x(); if (row >= 0) { int startRow = qMax(row - 2, 0); - m_chart->activeDataProxy()->removeRows(startRow, 3); + m_chart->seriesList().at(0)->dataProxy()->removeRows(startRow, 3); } } diff --git a/tests/barstest/chart.h b/tests/barstest/chart.h index 11af4949..a9d6119b 100644 --- a/tests/barstest/chart.h +++ b/tests/barstest/chart.h @@ -21,7 +21,7 @@ #include <QtDataVisualization/q3dbars.h> #include <QtDataVisualization/qabstract3dinputhandler.h> - +#include <QtDataVisualization/qbar3dseries.h> #include <QFont> #include <QDebug> #include <QStringList> @@ -110,8 +110,9 @@ private: Q3DCategoryAxis *m_monthAxis; Q3DCategoryAxis *m_genericRowAxis; Q3DCategoryAxis *m_genericColumnAxis; - QBarDataProxy *m_temperatureData; - QBarDataProxy *m_genericData; + QBar3DSeries *m_temperatureData; + QBar3DSeries *m_temperatureData2; + QBar3DSeries *m_genericData; Q3DValueAxis *m_currentAxis; bool m_negativeValuesOn; bool m_useNullInputHandler; diff --git a/tests/multigraphs/data.cpp b/tests/multigraphs/data.cpp index 31bc5391..a488a276 100644 --- a/tests/multigraphs/data.cpp +++ b/tests/multigraphs/data.cpp @@ -21,6 +21,9 @@ #include "data.h" #include <QtDataVisualization/Q3DValueAxis> #include <QtDataVisualization/Q3DCamera> +#include <QtDataVisualization/QBar3DSeries> +#include <QtDataVisualization/QScatter3DSeries> +#include <QtDataVisualization/QSurface3DSeries> #include <QScrollBar> #include <QSize> #include <QImage> @@ -53,8 +56,8 @@ Data::Data(Q3DSurface *surface, Q3DScatter *scatter, Q3DBars *bars, m_surface->setSurfaceGridEnabled(false); m_surface->setBackgroundVisible(false); m_surface->setSmoothSurfaceEnabled(false); - m_surface->setActiveDataProxy(new QHeightMapSurfaceDataProxy()); m_surface->scene()->activeCamera()->setCameraPosition(0.0, 90.0, 150); + m_surface->addSeries(new QSurface3DSeries(new QHeightMapSurfaceDataProxy())); // Initialize scatter m_scatter->setTheme(QDataVis::ThemeStoneMoss); @@ -63,6 +66,7 @@ Data::Data(Q3DSurface *surface, Q3DScatter *scatter, Q3DBars *bars, m_scatter->setObjectType(QDataVis::MeshStylePoints); m_scatter->setShadowQuality(QDataVis::ShadowQualitySoftLow); m_scatter->scene()->activeCamera()->setCameraPosition(0.0, 85.0, 150); + m_scatter->addSeries(new QScatter3DSeries); // Initialize bars m_bars->setTheme(QDataVis::ThemeQt); @@ -72,6 +76,7 @@ Data::Data(Q3DSurface *surface, Q3DScatter *scatter, Q3DBars *bars, m_bars->setShadowQuality(QDataVis::ShadowQualityLow); m_bars->setBarSpacing(QSizeF(0.0, 0.0)); m_bars->scene()->activeCamera()->setCameraPosition(0.0, 75.0, 150); + m_bars->addSeries(new QBar3DSeries); // Hide scroll bar m_statusArea->verticalScrollBar()->setVisible(false); @@ -108,15 +113,15 @@ void Data::updateData() if (m_mode != Surface) setData(depthMap); else - static_cast<QHeightMapSurfaceDataProxy *>(m_surface->activeDataProxy())->setHeightMap( + static_cast<QHeightMapSurfaceDataProxy *>(m_surface->seriesList().at(0)->dataProxy())->setHeightMap( depthMap); } void Data::clearData() { - m_bars->activeDataProxy()->resetArray(0); - m_scatter->activeDataProxy()->resetArray(0); - m_surface->activeDataProxy()->resetArray(0); + m_bars->seriesList().at(0)->dataProxy()->resetArray(0); + m_scatter->seriesList().at(0)->dataProxy()->resetArray(0); + m_surface->seriesList().at(0)->dataProxy()->resetArray(0); } void Data::setResolution(int selection) @@ -226,7 +231,7 @@ void Data::setData(const QImage &image) } QScatterDataArray *dataArray = new QScatterDataArray(m_scatterDataArray->mid(0, count)); - m_scatter->activeDataProxy()->resetArray(dataArray); + m_scatter->seriesList().at(0)->dataProxy()->resetArray(dataArray); } else { QBarDataArray *dataArray = m_barDataArray; for (int i = 0; i < imageHeight; i++, bitCount -= widthBits) { @@ -235,7 +240,7 @@ void Data::setData(const QImage &image) newRow[j] = qreal(bits[bitCount + (j * 4)]); } - m_bars->activeDataProxy()->resetArray(dataArray); + m_bars->seriesList().at(0)->dataProxy()->resetArray(dataArray); } } diff --git a/tests/qmlcamera/qml/qmlcamera/Data.qml b/tests/qmlcamera/qml/qmlcamera/Data.qml index 8b7057d5..2072aaed 100644 --- a/tests/qmlcamera/qml/qmlcamera/Data.qml +++ b/tests/qmlcamera/qml/qmlcamera/Data.qml @@ -23,6 +23,7 @@ Item { property alias mapping: valueMapping property alias model: dataModel property alias proxy: modelProxy + property alias series: barSeries BarDataMapping { id: valueMapping @@ -37,6 +38,12 @@ Item { itemModel: dataModel } + Bar3DSeries { + id: barSeries + dataProxy: modelProxy + itemLabelFormat: "@valueTitle for @colLabel, @rowLabel: @valueLabel" + } + ListModel { id: dataModel ListElement{ year: "2006"; month: "Jan"; expenses: "4"; income: "5" } diff --git a/tests/qmlcamera/qml/qmlcamera/main.qml b/tests/qmlcamera/qml/qmlcamera/main.qml index 4fff55e7..1f87d5eb 100644 --- a/tests/qmlcamera/qml/qmlcamera/main.qml +++ b/tests/qmlcamera/qml/qmlcamera/main.qml @@ -50,14 +50,13 @@ Item { font.pointSize: 35 theme: Bars3D.ThemeRetro labelStyle: Bars3D.LabelStyleFromTheme - dataProxy: chartData.proxy + seriesList: [chartData.series] barThickness: 0.5 barSpacing: Qt.size(0.5, 0.5) barSpacingRelative: false columnAxis: chartAxes.column valueAxis: chartAxes.expenses - itemLabelFormat: "@valueTitle for @colLabel, @rowLabel: @valueLabel" onSelectedBarChanged: { // Set camControlArea current row to selected bar diff --git a/tests/scattertest/main.cpp b/tests/scattertest/main.cpp index 8da3898c..2e8792ad 100644 --- a/tests/scattertest/main.cpp +++ b/tests/scattertest/main.cpp @@ -133,7 +133,7 @@ int main(int argc, char **argv) shadowQuality->addItem(QStringLiteral("Low Soft")); shadowQuality->addItem(QStringLiteral("Medium Soft")); shadowQuality->addItem(QStringLiteral("High Soft")); - shadowQuality->setCurrentIndex(3); + shadowQuality->setCurrentIndex(0); QFontComboBox *fontList = new QFontComboBox(widget); diff --git a/tests/scattertest/scatterchart.cpp b/tests/scattertest/scatterchart.cpp index ed188e68..fa59c204 100644 --- a/tests/scattertest/scatterchart.cpp +++ b/tests/scattertest/scatterchart.cpp @@ -18,6 +18,7 @@ #include "scatterchart.h" #include <QtDataVisualization/qscatterdataproxy.h> +#include <QtDataVisualization/qscatter3dseries.h> #include <QtDataVisualization/q3dvalueaxis.h> #include <QtDataVisualization/q3dscene.h> #include <QtDataVisualization/q3dcamera.h> @@ -38,15 +39,18 @@ ScatterDataModifier::ScatterDataModifier(Q3DScatter *scatter) m_chart->setFont(font); m_chart->setObjectType(QDataVis::MeshStyleSpheres, true); m_chart->setTheme(QDataVis::ThemeStoneMoss); - m_chart->setShadowQuality(QDataVis::ShadowQualityHigh); + m_chart->setShadowQuality(QDataVis::ShadowQualityNone); m_chart->scene()->activeCamera()->setCameraPreset(QDataVis::CameraPresetFront); m_chart->setAxisX(new Q3DValueAxis); m_chart->setAxisY(new Q3DValueAxis); m_chart->setAxisZ(new Q3DValueAxis); + QScatter3DSeries *series = new QScatter3DSeries; + QScatter3DSeries *series2 = new QScatter3DSeries; - QScatterDataProxy *proxy = new QScatterDataProxy; - proxy->setItemLabelFormat("@xTitle: @xLabel @yTitle: @yLabel @zTitle: @zLabel"); - m_chart->setActiveDataProxy(proxy); + m_chart->addSeries(series); + m_chart->addSeries(series2); + series->setItemLabelFormat("@xTitle: @xLabel @yTitle: @yLabel @zTitle: @zLabel"); + series->setItemLabelFormat("** @xTitle: @xLabel @yTitle: @yLabel @zTitle: @zLabel **"); m_chart->setSelectionMode(QDataVis::SelectionItem); @@ -70,17 +74,22 @@ void ScatterDataModifier::addData() m_chart->axisY()->setTitle("Y"); m_chart->axisZ()->setTitle("Z"); m_chart->axisX()->setRange(-50.0, 50.0); - m_chart->axisY()->setRange(-1.0, 1.0); + m_chart->axisY()->setRange(-1.0, 1.2); m_chart->axisZ()->setRange(-50.0, 50.0); QScatterDataArray *dataArray = new QScatterDataArray; dataArray->resize(numberOfItems); QScatterDataItem *ptrToDataArray = &dataArray->first(); + QScatterDataArray *dataArray2 = new QScatterDataArray; + dataArray2->resize(numberOfItems); + QScatterDataItem *ptrToDataArray2 = &dataArray2->first(); #ifdef RANDOM_SCATTER for (int i = 0; i < numberOfItems; i++) { ptrToDataArray->setPosition(randVector()); ptrToDataArray++; + ptrToDataArray2->setPosition(randVector()); + ptrToDataArray2++; } #else float limit = qSqrt(numberOfItems) / 2.0f; @@ -88,11 +97,14 @@ void ScatterDataModifier::addData() for (float j = -limit; j < limit; j++) { ptrToDataArray->setPosition(QVector3D(i, qCos(qDegreesToRadians((i * j) / 7.5)), j)); ptrToDataArray++; + ptrToDataArray2->setPosition(QVector3D(i, qCos(qDegreesToRadians((i * j) / 7.5)) + 0.2, j)); + ptrToDataArray2++; } } #endif - static_cast<QScatterDataProxy *>(m_chart->activeDataProxy())->resetArray(dataArray); + m_chart->seriesList().at(0)->dataProxy()->resetArray(dataArray); + m_chart->seriesList().at(1)->dataProxy()->resetArray(dataArray2); } void ScatterDataModifier::changeStyle() @@ -174,7 +186,7 @@ void ScatterDataModifier::shadowQualityUpdatedByVisual(QDataVis::ShadowQuality s void ScatterDataModifier::clear() { - m_chart->activeDataProxy()->resetArray(0); + m_chart->seriesList().at(0)->dataProxy()->resetArray(0); qDebug() << m_loopCounter << "Cleared array"; } @@ -198,8 +210,8 @@ void ScatterDataModifier::resetAxes() 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(); + int addIndex = m_chart->seriesList().at(0)->dataProxy()->addItem(item); + qDebug() << m_loopCounter << "added one to index:" << addIndex << "array size:" << m_chart->seriesList().at(0)->dataProxy()->array()->size(); } void ScatterDataModifier::addBunch() @@ -207,15 +219,15 @@ 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(); + int addIndex = m_chart->seriesList().at(0)->dataProxy()->addItems(items); + qDebug() << m_loopCounter << "added bunch to index:" << addIndex << "array size:" << m_chart->seriesList().at(0)->dataProxy()->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(); + m_chart->seriesList().at(0)->dataProxy()->insertItem(0, item); + qDebug() << m_loopCounter << "Inserted one, array size:" << m_chart->seriesList().at(0)->dataProxy()->array()->size(); } void ScatterDataModifier::insertBunch() @@ -223,43 +235,43 @@ 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(); + m_chart->seriesList().at(0)->dataProxy()->insertItems(0, items); + qDebug() << m_loopCounter << "Inserted bunch, array size:" << m_chart->seriesList().at(0)->dataProxy()->array()->size(); } void ScatterDataModifier::changeOne() { - if (m_selectedItem >= 0 && m_chart->activeDataProxy()->array()->size()) { + if (m_selectedItem >= 0 && m_chart->seriesList().at(0)->dataProxy()->array()->size()) { QScatterDataItem item(randVector()); - m_chart->activeDataProxy()->setItem(m_selectedItem, item); - qDebug() << m_loopCounter << "Changed one, array size:" << m_chart->activeDataProxy()->array()->size(); + m_chart->seriesList().at(0)->dataProxy()->setItem(m_selectedItem, item); + qDebug() << m_loopCounter << "Changed one, array size:" << m_chart->seriesList().at(0)->dataProxy()->array()->size(); } } void ScatterDataModifier::changeBunch() { - if (m_chart->activeDataProxy()->array()->size()) { - int amount = qMin(m_chart->activeDataProxy()->array()->size(), 100); + if (m_chart->seriesList().at(0)->dataProxy()->array()->size()) { + int amount = qMin(m_chart->seriesList().at(0)->dataProxy()->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(); + m_chart->seriesList().at(0)->dataProxy()->setItems(0, items); + qDebug() << m_loopCounter << "Changed bunch, array size:" << m_chart->seriesList().at(0)->dataProxy()->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(); + m_chart->seriesList().at(0)->dataProxy()->removeItems(m_selectedItem, 1); + qDebug() << m_loopCounter << "Removed one, array size:" << m_chart->seriesList().at(0)->dataProxy()->array()->size(); } } void ScatterDataModifier::removeBunch() { - m_chart->activeDataProxy()->removeItems(0, 100); - qDebug() << m_loopCounter << "Removed bunch, array size:" << m_chart->activeDataProxy()->array()->size(); + m_chart->seriesList().at(0)->dataProxy()->removeItems(0, 100); + qDebug() << m_loopCounter << "Removed bunch, array size:" << m_chart->seriesList().at(0)->dataProxy()->array()->size(); } void ScatterDataModifier::timeout() diff --git a/tests/spectrum/spectrumapp/main.cpp b/tests/spectrum/spectrumapp/main.cpp index 5c756753..e9913706 100644 --- a/tests/spectrum/spectrumapp/main.cpp +++ b/tests/spectrum/spectrumapp/main.cpp @@ -25,6 +25,7 @@ #include <QtDataVisualization/q3dcategoryaxis.h> #include <QtDataVisualization/q3dscene.h> #include <QtDataVisualization/q3dcamera.h> +#include <QtDataVisualization/qbar3dseries.h> #include <QGuiApplication> #include <QAudio> @@ -106,7 +107,7 @@ MainApp::MainApp(Q3DBars *window) QObject::connect(m_restartTimer, &QTimer::timeout, this, &MainApp::restart); QBarDataProxy *proxy = new QBarDataProxy; - m_chart->setActiveDataProxy(proxy); + m_chart->addSeries(new QBar3DSeries(proxy)); } MainApp::~MainApp() @@ -143,7 +144,7 @@ void MainApp::spectrumChanged(qint64 position, qint64 length, const FrequencySpe (*data)[barIndex(e.frequency)].setValue(qMax(data->at(barIndex(e.frequency)).value(), qreal(e.amplitude))); } } - static_cast<QBarDataProxy *>(m_chart->activeDataProxy())->insertRow(0, data); + m_chart->seriesList().at(0)->dataProxy()->insertRow(0, data); } void MainApp::stateChanged(QAudio::Mode mode, QAudio::State state) diff --git a/tests/surfacetest/graphmodifier.cpp b/tests/surfacetest/graphmodifier.cpp index f5c39f98..4365e055 100644 --- a/tests/surfacetest/graphmodifier.cpp +++ b/tests/surfacetest/graphmodifier.cpp @@ -19,6 +19,7 @@ #include "graphmodifier.h" #include <QtDataVisualization/Q3DValueAxis> #include <QtDataVisualization/QSurfaceDataProxy> +#include <QtDataVisualization/QSurface3DSeries> #include <qmath.h> #include <QLinearGradient> @@ -46,13 +47,15 @@ GraphModifier::GraphModifier(Q3DSurface *graph) m_rangeZ(16.0), m_minX(-8.0), m_minZ(-8.0), - m_planeArray(0) + m_planeArray(0), + m_theSeries(new QSurface3DSeries) { m_graph->setAxisX(new Q3DValueAxis); m_graph->setAxisY(new Q3DValueAxis); m_graph->setAxisZ(new Q3DValueAxis); m_graph->axisX()->setRange(m_minX, m_minX + m_rangeX); m_graph->axisZ()->setRange(m_minZ, m_minZ + m_rangeZ); + m_graph->addSeries(m_theSeries); changeStyle(); connect(&m_timer, &QTimer::timeout, this, &GraphModifier::timeout); @@ -79,7 +82,7 @@ void GraphModifier::toggleSurfaceGrid(bool enable) void GraphModifier::toggleSurface(bool enable) { qDebug() << "GraphModifier::toggleSurface" << enable; - m_graph->setSurfaceVisible(enable); + m_theSeries->setVisible(enable); } void GraphModifier::toggleSqrtSin(bool enable) @@ -316,8 +319,9 @@ void GraphModifier::changeStyle() void GraphModifier::selectButtonClicked() { - int row = rand() % m_graph->activeDataProxy()->rowCount(); - int col = rand() % m_graph->activeDataProxy()->columnCount(); + QSurfaceDataProxy *proxy = m_theSeries->dataProxy(); + int row = rand() % proxy->rowCount(); + int col = rand() % proxy->columnCount(); m_graph->setSelectedPoint(QPoint(row, col)); } @@ -357,7 +361,7 @@ void GraphModifier::timeout() } // Reset same array to make it redraw - m_graph->activeDataProxy()->resetArray(m_planeArray); + m_theSeries->dataProxy()->resetArray(m_planeArray); } void GraphModifier::resetArrayAndSliders(QSurfaceDataArray *array, qreal minZ, qreal maxZ, qreal minX, qreal maxX) @@ -367,7 +371,7 @@ void GraphModifier::resetArrayAndSliders(QSurfaceDataArray *array, qreal minZ, q m_axisRangeSliderX->setValue(maxX - minX); m_axisRangeSliderZ->setValue(maxZ - minZ); - m_graph->activeDataProxy()->resetArray(array); + m_theSeries->dataProxy()->resetArray(array); } void GraphModifier::changeShadowQuality(int quality) diff --git a/tests/surfacetest/graphmodifier.h b/tests/surfacetest/graphmodifier.h index 853c698a..b0f9b3da 100644 --- a/tests/surfacetest/graphmodifier.h +++ b/tests/surfacetest/graphmodifier.h @@ -21,6 +21,7 @@ #include <QtDataVisualization/Q3DSurface> #include <QtDataVisualization/QSurfaceDataProxy> +#include <QtDataVisualization/QSurface3DSeries> #include <QSlider> #include <QTimer> #include <QLabel> @@ -97,6 +98,7 @@ private: QTimer m_timer; QSurfaceDataArray *m_planeArray; QLabel *m_selectionInfoLabel; + QSurface3DSeries *m_theSeries; }; #endif |