summaryrefslogtreecommitdiffstats
path: root/src/gui/math3d/qquaternion.cpp
diff options
context:
space:
mode:
authorKonstantin Ritt <ritt.ks@gmail.com>2015-02-19 14:26:57 +0400
committerKonstantin Ritt <ritt.ks@gmail.com>2015-02-26 11:02:47 +0000
commite628c80dc38f00efd5a7821a8be61eadcf838b62 (patch)
tree1585f680ead83818a99727ab2c307d1684aaa9b4 /src/gui/math3d/qquaternion.cpp
parent1872857ca72658cd58c0c39b31da493f794be6ca (diff)
[QQuaternion] Add operator* that rotates a vector with a quaternion
Same as quaternion.rotatedVector(vec). Expression like `vec = quat * vec` quite common in the 3D world. Change-Id: I0edd5a5f80537bd149f03f682b3de15c54463e23 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'src/gui/math3d/qquaternion.cpp')
-rw-r--r--src/gui/math3d/qquaternion.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/gui/math3d/qquaternion.cpp b/src/gui/math3d/qquaternion.cpp
index 2fb192dab4..6e9d17d1e1 100644
--- a/src/gui/math3d/qquaternion.cpp
+++ b/src/gui/math3d/qquaternion.cpp
@@ -748,6 +748,18 @@ QQuaternion QQuaternion::fromRotationMatrix(const QMatrix3x3 &rot3x3)
\sa QQuaternion::operator/=()
*/
+#ifndef QT_NO_VECTOR3D
+
+/*!
+ \fn QVector3D operator*(const QQuaternion &quaternion, const QVector3D &vec)
+ \since 5.5
+ \relates QQuaternion
+
+ Rotates a vector \a vec with a quaternion \a quaternion to produce a new vector in 3D space.
+*/
+
+#endif
+
/*!
\fn bool qFuzzyCompare(const QQuaternion& q1, const QQuaternion& q2)
\relates QQuaternion