summaryrefslogtreecommitdiffstats
path: root/examples/datavisualization/rotations/scatterdatamodifier.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'examples/datavisualization/rotations/scatterdatamodifier.cpp')
-rw-r--r--examples/datavisualization/rotations/scatterdatamodifier.cpp21
1 files changed, 10 insertions, 11 deletions
diff --git a/examples/datavisualization/rotations/scatterdatamodifier.cpp b/examples/datavisualization/rotations/scatterdatamodifier.cpp
index c4b439b1..d2c2c52d 100644
--- a/examples/datavisualization/rotations/scatterdatamodifier.cpp
+++ b/examples/datavisualization/rotations/scatterdatamodifier.cpp
@@ -23,6 +23,7 @@
#include <QtDataVisualization/q3dcamera.h>
#include <QtDataVisualization/qscatter3dseries.h>
#include <QtDataVisualization/q3dtheme.h>
+#include <QtDataVisualization/QCustom3DItem>
#include <QtCore/qmath.h>
using namespace QtDataVisualization;
@@ -40,7 +41,7 @@ ScatterDataModifier::ScatterDataModifier(Q3DScatter *scatter)
m_fieldLines(12),
m_arrowsPerLine(16),
m_magneticField(new QScatter3DSeries),
- m_sun(new QScatter3DSeries),
+ m_sun(new QCustom3DItem),
m_magneticFieldArray(0),
m_angleOffset(0.0f),
m_angleStep(doublePi / m_arrowsPerLine / animationFrames)
@@ -62,17 +63,15 @@ ScatterDataModifier::ScatterDataModifier(Q3DScatter *scatter)
m_magneticField->setColorStyle(Q3DTheme::ColorStyleRangeGradient);
//! [4]
- // For 'sun' we use a custom large sphere.
- m_sun->setItemSize(0.2f);
- m_sun->setName(QStringLiteral("Sun"));
- m_sun->setItemLabelFormat(QStringLiteral("@seriesName"));
- m_sun->setMesh(QAbstract3DSeries::MeshUserDefined);
- m_sun->setUserDefinedMesh(QStringLiteral(":/mesh/largesphere.obj"));
- m_sun->setBaseColor(QColor(0xff, 0xBB, 0x00));
- m_sun->dataProxy()->addItem(QScatterDataItem(QVector3D()));
+ // For 'sun' we use a custom large sphere
+ m_sun->setScaling(QVector3D(0.07f, 0.07f, 0.07f));
+ m_sun->setMeshFile(QStringLiteral(":/mesh/largesphere.obj"));
+ QImage sunColor = QImage(2, 2, QImage::Format_RGB32);
+ sunColor.fill(QColor(0xff, 0xbb, 0x00));
+ m_sun->setTextureImage(sunColor);
m_graph->addSeries(m_magneticField);
- m_graph->addSeries(m_sun);
+ m_graph->addCustomItem(m_sun);
// Configure the axes according to the data
m_graph->axisX()->setRange(-horizontalRange, horizontalRange);
@@ -171,7 +170,7 @@ void ScatterDataModifier::triggerRotation()
void ScatterDataModifier::toggleSun()
{
- m_sun->setVisible(!m_graph->seriesList().at(1)->isVisible());
+ m_sun->setVisible(!m_sun->isVisible());
}
void ScatterDataModifier::toggleRotation()