summaryrefslogtreecommitdiffstats
path: root/src/datavisualization/data
diff options
context:
space:
mode:
authorMika Salmela <mika.salmela@digia.com>2014-01-13 14:51:10 +0200
committerMika Salmela <mika.salmela@digia.com>2014-01-13 15:25:18 +0200
commit06dd7be52f2bcd23b9a622a17d3d0e8963a7dd17 (patch)
treeb825dfcfd969288a9642a737bcc7e39081718437 /src/datavisualization/data
parent828a2579530ea8c9bc3a0c5ef2cc11da2c247417 (diff)
Direction for scatter items
Task-number: QTRD-2654 Change-Id: Ib21e6d75fa43de45387ad6225973aa8a11ffc0c9 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Diffstat (limited to 'src/datavisualization/data')
-rw-r--r--src/datavisualization/data/abstractrenderitem_p.h1
-rw-r--r--src/datavisualization/data/qabstract3dseries.cpp2
-rw-r--r--src/datavisualization/data/qabstract3dseries.h1
-rw-r--r--src/datavisualization/data/qscatterdataitem.h4
-rw-r--r--src/datavisualization/data/scatterrenderitem_p.h10
5 files changed, 18 insertions, 0 deletions
diff --git a/src/datavisualization/data/abstractrenderitem_p.h b/src/datavisualization/data/abstractrenderitem_p.h
index 5f623c41..ca71c0b0 100644
--- a/src/datavisualization/data/abstractrenderitem_p.h
+++ b/src/datavisualization/data/abstractrenderitem_p.h
@@ -35,6 +35,7 @@
#include <QOpenGLFunctions>
#include <QString>
#include <QVector3D>
+#include <QQuaternion>
QT_DATAVISUALIZATION_BEGIN_NAMESPACE
diff --git a/src/datavisualization/data/qabstract3dseries.cpp b/src/datavisualization/data/qabstract3dseries.cpp
index 2c869574..81a2f1b8 100644
--- a/src/datavisualization/data/qabstract3dseries.cpp
+++ b/src/datavisualization/data/qabstract3dseries.cpp
@@ -198,6 +198,8 @@ QT_DATAVISUALIZATION_BEGIN_NAMESPACE
* Sphere.
* \value MeshMinimal
* The minimal 3D mesh: a triangular pyramid. Usable only with Q3DScatter.
+ * \value MeshArrow
+ * Arrow pointing upwards.
* \value MeshPoint
* 2D point. Usable only with Q3DScatter.
* \b Note: Shadows and color gradients do not affect this style.
diff --git a/src/datavisualization/data/qabstract3dseries.h b/src/datavisualization/data/qabstract3dseries.h
index ebe73510..b03b574d 100644
--- a/src/datavisualization/data/qabstract3dseries.h
+++ b/src/datavisualization/data/qabstract3dseries.h
@@ -67,6 +67,7 @@ public:
MeshBevelCube,
MeshSphere,
MeshMinimal,
+ MeshArrow,
MeshPoint
};
diff --git a/src/datavisualization/data/qscatterdataitem.h b/src/datavisualization/data/qscatterdataitem.h
index 7992864c..f139abd4 100644
--- a/src/datavisualization/data/qscatterdataitem.h
+++ b/src/datavisualization/data/qscatterdataitem.h
@@ -21,6 +21,7 @@
#include <QtDataVisualization/qdatavisualizationenums.h>
#include <QVector3D>
+#include <QQuaternion>
QT_DATAVISUALIZATION_BEGIN_NAMESPACE
@@ -38,6 +39,8 @@ public:
inline void setPosition(const QVector3D &position) { m_position = position; }
inline QVector3D position() const { return m_position; }
+ inline void setRotation(const QQuaternion &rotation) { m_rotation = rotation; }
+ inline QQuaternion rotation() const { return m_rotation; }
inline void setX(float value) { m_position.setX(value); }
inline void setY(float value) { m_position.setY(value); }
inline void setZ(float value) { m_position.setZ(value); }
@@ -52,6 +55,7 @@ protected:
private:
QVector3D m_position;
+ QQuaternion m_rotation;
};
QT_DATAVISUALIZATION_END_NAMESPACE
diff --git a/src/datavisualization/data/scatterrenderitem_p.h b/src/datavisualization/data/scatterrenderitem_p.h
index 5a97c1e9..047caeb6 100644
--- a/src/datavisualization/data/scatterrenderitem_p.h
+++ b/src/datavisualization/data/scatterrenderitem_p.h
@@ -45,6 +45,9 @@ public:
inline const QVector3D &position() const { return m_position; }
inline void setPosition(const QVector3D &pos);
+ inline QQuaternion rotation() const { return m_rotation; }
+ inline void setRotation(const QQuaternion &rotation);
+
inline bool isVisible() const { return m_visible; }
inline void setVisible(bool visible) { m_visible = visible; }
@@ -54,6 +57,7 @@ public:
protected:
QVector3D m_position;
+ QQuaternion m_rotation;
bool m_visible;
//float m_size; // TODO in case we need a fourth variable that adjusts scatter item size
@@ -70,6 +74,12 @@ void ScatterRenderItem::setPosition(const QVector3D &pos)
}
}
+void ScatterRenderItem::setRotation(const QQuaternion &rotation)
+{
+ if (m_rotation != rotation)
+ m_rotation = rotation;
+}
+
typedef QVector<ScatterRenderItem> ScatterRenderItemArray;
QT_DATAVISUALIZATION_END_NAMESPACE