From 49da199b10a87d0698e9f6ac3f8eafdc3c05bdc2 Mon Sep 17 00:00:00 2001 From: Miikka Heikkinen Date: Thu, 12 Dec 2019 15:46:22 +0200 Subject: [PATCH] Fix rotation resulting in NaN angle sometimes Change-Id: I88f866c6649f7ec25bc96a7393d0930685e5382b Fixes: QDS-1341 Reviewed-by: Mahmoud Badri Reviewed-by: Thomas Hartmann --- .../qml/qmlpuppet/qml2puppet/editor3d/mousearea3d.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/share/qtcreator/qml/qmlpuppet/qml2puppet/editor3d/mousearea3d.cpp b/share/qtcreator/qml/qmlpuppet/qml2puppet/editor3d/mousearea3d.cpp index 4c855576341..a0f54d1cc0f 100644 --- a/share/qtcreator/qml/qmlpuppet/qml2puppet/editor3d/mousearea3d.cpp +++ b/share/qtcreator/qml/qmlpuppet/qml2puppet/editor3d/mousearea3d.cpp @@ -358,6 +358,11 @@ qreal QmlDesigner::Internal::MouseArea3D::getNewRotationAngle( QQuick3DNode *node, const QVector3D &pressPos, const QVector3D ¤tPos, const QVector3D &nodePos, qreal prevAngle, bool trackBall) { + const QVector3D dragVector = currentPos - pressPos; + + if (dragVector.length() < 0.001f) + return prevAngle; + // Get camera to node direction in node orientation QVector3D cameraToNodeDir = getCameraToNodeDir(node); if (trackBall) {