diff options
author | Jere Tuliniemi <jere.tuliniemi@qt.io> | 2019-03-01 14:50:42 +0200 |
---|---|---|
committer | Jere Tuliniemi <jere.tuliniemi@qt.io> | 2019-03-04 13:09:54 +0000 |
commit | 50af71b41bd80b828d9c15005595698a272d41e1 (patch) | |
tree | 8f874a0a16464b9be17acc7e9bad1fc695f7b243 /src/Authoring/Studio/Render/Q3DSTranslation.h | |
parent | 3c2481ad777a0bcb8331d6ced44ebb976df039b6 (diff) |
Implement local/global manipulator toggle behavior
Manipulators now should be able to manipulate the object in global
space. Plane scaling works differently than in the old runtime in this
patch as the logic of that is unclear at the moment.
Task-number: QT3DS-3010
Change-Id: Ie6961727b32c530d55e41ed84f102526f018ace9
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Diffstat (limited to 'src/Authoring/Studio/Render/Q3DSTranslation.h')
-rw-r--r-- | src/Authoring/Studio/Render/Q3DSTranslation.h | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/Authoring/Studio/Render/Q3DSTranslation.h b/src/Authoring/Studio/Render/Q3DSTranslation.h index 671deb7e..1c7ea328 100644 --- a/src/Authoring/Studio/Render/Q3DSTranslation.h +++ b/src/Authoring/Studio/Render/Q3DSTranslation.h @@ -160,7 +160,10 @@ private: qt3dsdm::Qt3DSDMPropertyHandle property); QVector4D calculateWidgetArrowDrag(const QPoint &mousePos, const QVector3D &dragPlane = {}, - const QVector3D &arrowDir = {}); + const QVector3D &arrowDir = {}, Q3DSNode *node = nullptr); + QVector3D calculateWidgetDragScale(const QPoint &mousePos, const Q3DSNode *node, + float scaleRatio, const QVector3D &planeNormal = {}, + const QVector3D &axis = {}); Q3DStudioRenderer &m_studioRenderer; @@ -233,6 +236,7 @@ private: DragState m_beginDragState; DragState m_currentDragState; + QVector3D m_beginWidgetPos; public: qt3dsdm::SComposerObjectDefinitions &objectDefinitions() const |