summaryrefslogtreecommitdiffstats
path: root/src/gui/math3d/qquaternion.cpp
diff options
context:
space:
mode:
authorRhys Weatherley <rhys.weatherley@nokia.com>2009-08-21 04:43:15 (GMT)
committerRhys Weatherley <rhys.weatherley@nokia.com>2009-08-21 04:43:15 (GMT)
commitbc9ced591a81293a155800cb28771f3bac17a9d2 (patch)
treed616a685f1de2ccb045a6d275a07d6fd8b2fb732 /src/gui/math3d/qquaternion.cpp
parent303915f67c2e797d8c9697466266e1f5c1bf45c6 (diff)
downloadQt-bc9ced591a81293a155800cb28771f3bac17a9d2.zip
Qt-bc9ced591a81293a155800cb28771f3bac17a9d2.tar.gz
Qt-bc9ced591a81293a155800cb28771f3bac17a9d2.tar.bz2
Add implicit conversions from math3d classes to QVariant
Existing QVariant-capable classes in QtGui like QColor, QPixmap, etc have "operator QVariant()". This change adds the same operators for QVector2D, QVector3D, QVector4D, QQuaternion, and QMatrix4x4. Reviewed-by: Justin McPherson
Diffstat (limited to 'src/gui/math3d/qquaternion.cpp')
-rw-r--r--src/gui/math3d/qquaternion.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/gui/math3d/qquaternion.cpp b/src/gui/math3d/qquaternion.cpp
index b2c598f..f279388 100644
--- a/src/gui/math3d/qquaternion.cpp
+++ b/src/gui/math3d/qquaternion.cpp
@@ -41,6 +41,7 @@
#include "qquaternion.h"
#include <QtCore/qmath.h>
+#include <QtCore/qvariant.h>
#include <QtCore/qdebug.h>
QT_BEGIN_NAMESPACE
@@ -560,6 +561,14 @@ QQuaternion QQuaternion::nlerp
return (q1 * (1.0f - t) + q2b * t).normalized();
}
+/*!
+ Returns the quaternion as a QVariant.
+*/
+QQuaternion::operator QVariant() const
+{
+ return QVariant(QVariant::Quaternion, this);
+}
+
#ifndef QT_NO_DEBUG_STREAM
QDebug operator<<(QDebug dbg, const QQuaternion &q)