diff options
author | Rhys Weatherley <rhys.weatherley@nokia.com> | 2009-08-21 04:43:15 (GMT) |
---|---|---|
committer | Rhys Weatherley <rhys.weatherley@nokia.com> | 2009-08-21 04:43:15 (GMT) |
commit | bc9ced591a81293a155800cb28771f3bac17a9d2 (patch) | |
tree | d616a685f1de2ccb045a6d275a07d6fd8b2fb732 /src/gui/math3d/qquaternion.cpp | |
parent | 303915f67c2e797d8c9697466266e1f5c1bf45c6 (diff) | |
download | Qt-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.cpp | 9 |
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) |