diff options
author | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2014-02-07 15:30:53 +0200 |
---|---|---|
committer | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2014-02-10 08:25:28 +0200 |
commit | 61c84e2d9c46de40d22f6fafbdd23d4015025516 (patch) | |
tree | 13c04fa5a90e75d5730babd6ab1cefef54b54417 /src/datavisualization/data/qabstract3dseries.h | |
parent | ffc2e2039f58de256a98da395b5d0e87d5a176fc (diff) |
Mostly revert the rotations refactor
Quaternions are actually easier to use in most use cases.
Added some convenience functionality for QML to enable using
axis/angle combinations, too.
Change-Id: I61c76e0967b4808aa9adaf43dfe6f4596c9ce353
Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
Diffstat (limited to 'src/datavisualization/data/qabstract3dseries.h')
-rw-r--r-- | src/datavisualization/data/qabstract3dseries.h | 15 |
1 files changed, 6 insertions, 9 deletions
diff --git a/src/datavisualization/data/qabstract3dseries.h b/src/datavisualization/data/qabstract3dseries.h index b0396126..a8cee7c9 100644 --- a/src/datavisualization/data/qabstract3dseries.h +++ b/src/datavisualization/data/qabstract3dseries.h @@ -23,7 +23,7 @@ #include <QObject> #include <QScopedPointer> #include <QLinearGradient> -#include <QVector3D> +#include <QQuaternion> QT_BEGIN_NAMESPACE_DATAVISUALIZATION @@ -39,8 +39,7 @@ class QT_DATAVISUALIZATION_EXPORT QAbstract3DSeries : public QObject Q_PROPERTY(bool visible READ isVisible WRITE setVisible NOTIFY visibilityChanged) Q_PROPERTY(Mesh mesh READ mesh WRITE setMesh NOTIFY meshChanged) Q_PROPERTY(bool meshSmooth READ isMeshSmooth WRITE setMeshSmooth NOTIFY meshSmoothChanged) - Q_PROPERTY(QVector3D meshRotationAxis READ meshRotationAxis WRITE setMeshRotationAxis NOTIFY meshRotationAxisChanged) - Q_PROPERTY(float meshRotationAngle READ meshRotationAngle WRITE setMeshRotationAngle NOTIFY meshRotationAngleChanged) + Q_PROPERTY(QQuaternion meshRotation READ meshRotation WRITE setMeshRotation NOTIFY meshRotationChanged) Q_PROPERTY(QString userDefinedMesh READ userDefinedMesh WRITE setUserDefinedMesh NOTIFY userDefinedMeshChanged) Q_PROPERTY(QtDataVisualization::Q3DTheme::ColorStyle colorStyle READ colorStyle WRITE setColorStyle NOTIFY colorStyleChanged) Q_PROPERTY(QColor baseColor READ baseColor WRITE setBaseColor NOTIFY baseColorChanged) @@ -94,10 +93,9 @@ public: void setMeshSmooth(bool enable); bool isMeshSmooth() const; - void setMeshRotationAxis(const QVector3D &axis); - QVector3D meshRotationAxis() const; - void setMeshRotationAngle(float angle); - float meshRotationAngle() const; + void setMeshRotation(const QQuaternion &rotation); + QQuaternion meshRotation() const; + Q_INVOKABLE void setMeshAxisAndAngle(const QVector3D &axis, float angle); void setUserDefinedMesh(const QString &fileName); QString userDefinedMesh() const; @@ -125,8 +123,7 @@ signals: void visibilityChanged(bool visible); void meshChanged(Mesh mesh); void meshSmoothChanged(bool enabled); - void meshRotationAxisChanged(QVector3D axis); - void meshRotationAngleChanged(float angle); + void meshRotationChanged(QQuaternion rotation); void userDefinedMeshChanged(QString fileName); void colorStyleChanged(Q3DTheme::ColorStyle style); void baseColorChanged(QColor color); |