diff options
author | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2023-03-02 12:51:25 +0100 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2023-03-03 07:06:35 +0000 |
commit | ee213bd37f4c614eefb1ec0e3557cd48483977ec (patch) | |
tree | ce47b2eb93aea5fb2535e5bca116bef8cdf64666 /examples/datavisualization/graphgallery/scatterdatamodifier.cpp | |
parent | b83349e79ea8df8621349c98e576a591739c7816 (diff) |
graphgallery example: Streamline the code a bit
- Populate the data rows using reserve()/append() instead
of resize() / assign.
- Use prefix increment
- Use QStringView when splitting the data file lines
Task-number: QTBUG-110698
Change-Id: I70fed07a9850e2636e6085b9a9190f1e5a062a67
Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
(cherry picked from commit ed80c940b659455e2bd98700157f5fc78a17b41c)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Diffstat (limited to 'examples/datavisualization/graphgallery/scatterdatamodifier.cpp')
-rw-r--r-- | examples/datavisualization/graphgallery/scatterdatamodifier.cpp | 39 |
1 files changed, 17 insertions, 22 deletions
diff --git a/examples/datavisualization/graphgallery/scatterdatamodifier.cpp b/examples/datavisualization/graphgallery/scatterdatamodifier.cpp index f018c81b..575515a4 100644 --- a/examples/datavisualization/graphgallery/scatterdatamodifier.cpp +++ b/examples/datavisualization/graphgallery/scatterdatamodifier.cpp @@ -71,24 +71,21 @@ void ScatterDataModifier::addData() //! [4] QScatterDataArray *dataArray = new QScatterDataArray; - dataArray->resize(m_itemCount); - QScatterDataItem *ptrToDataArray = &dataArray->first(); + dataArray->reserve(m_itemCount); //! [4] #ifdef RANDOM_SCATTER - for (int i = 0; i < m_itemCount; i++) { - ptrToDataArray->setPosition(randVector()); - ptrToDataArray++; - } + for (int i = 0; i < m_itemCount; ++i) + dataArray->append(QScatterDataItem(randVector())); #else //! [5] - float limit = qSqrt(m_itemCount) / 2.0f; - for (int i = -limit; i < limit; i++) { - for (int j = -limit; j < limit; j++) { - ptrToDataArray->setPosition(QVector3D(float(i) + 0.5f, - qCos(qDegreesToRadians(float(i * j) / m_curveDivider)), - float(j) + 0.5f)); - ptrToDataArray++; + const float limit = qSqrt(m_itemCount) / 2.0f; + for (int i = -limit; i < limit; ++i) { + for (int j = -limit; j < limit; ++j) { + const float x = float(i) + 0.5f; + const float y = qCos(qDegreesToRadians(float(i * j) / m_curveDivider)); + const float z = float(j) + 0.5f; + dataArray->append(QScatterDataItem({x, y, z})); } } //! [5] @@ -148,12 +145,12 @@ void ScatterDataModifier::changeShadowQuality(int quality) void ScatterDataModifier::setBackgroundEnabled(int enabled) { - m_graph->activeTheme()->setBackgroundEnabled((bool)enabled); + m_graph->activeTheme()->setBackgroundEnabled(enabled == Qt::Checked); } void ScatterDataModifier::setGridEnabled(int enabled) { - m_graph->activeTheme()->setGridEnabled((bool)enabled); + m_graph->activeTheme()->setGridEnabled(enabled == Qt::Checked); } void ScatterDataModifier::toggleItemCount() @@ -186,11 +183,9 @@ void ScatterDataModifier::toggleRanges() QVector3D ScatterDataModifier::randVector() { - return QVector3D( - (float)(QRandomGenerator::global()->bounded(100)) / 2.0f - - (float)(QRandomGenerator::global()->bounded(100)) / 2.0f, - (float)(QRandomGenerator::global()->bounded(100)) / 100.0f - - (float)(QRandomGenerator::global()->bounded(100)) / 100.0f, - (float)(QRandomGenerator::global()->bounded(100)) / 2.0f - - (float)(QRandomGenerator::global()->bounded(100)) / 2.0f); + auto *generator = QRandomGenerator::global(); + const auto x = float(generator->bounded(100)) / 2.0f - float(generator->bounded(100)) / 2.0f; + const auto y = float(generator->bounded(100)) / 100.0f - float(generator->bounded(100)) / 100.0f; + const auto z = float(generator->bounded(100)) / 2.0f - float(generator->bounded(100)) / 2.0f; + return {x, y, z}; } |