summaryrefslogtreecommitdiffstats
path: root/src/quick3d
diff options
context:
space:
mode:
authorMiikka Heikkinen <miikka.heikkinen@qt.io>2016-09-02 13:00:35 +0300
committerMiikka Heikkinen <miikka.heikkinen@qt.io>2016-09-05 08:42:25 +0000
commitd323d7e733100dc2417ae90bdebd4d4704606ead (patch)
tree2a2b7ddb78c32bfaee48ea4a4be45cd6a90a0437 /src/quick3d
parent929d45716e3347c06c0e84c6a49e3801d0b65550 (diff)
Fix camera controllers
Fixed a few bugs and inconsistencies between qml and c++ implementations of the camera controllers. Also documented them. Task-number: QTBUG-55697 Change-Id: Ie490b0ca46f60a2a34c04f91572505e908ce65ba Reviewed-by: Antti Määttä <antti.maatta@qt.io> Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
Diffstat (limited to 'src/quick3d')
-rw-r--r--src/quick3d/imports/extras/defaults/qml/OrbitCameraController.qml18
1 files changed, 9 insertions, 9 deletions
diff --git a/src/quick3d/imports/extras/defaults/qml/OrbitCameraController.qml b/src/quick3d/imports/extras/defaults/qml/OrbitCameraController.qml
index 328b7b98e..1f5fa5a7a 100644
--- a/src/quick3d/imports/extras/defaults/qml/OrbitCameraController.qml
+++ b/src/quick3d/imports/extras/defaults/qml/OrbitCameraController.qml
@@ -162,13 +162,13 @@ Entity {
id: keyboardZAxis
ButtonAxisInput {
sourceDevice: keyboardSourceDevice
- buttons: [Qt.Key_Up]
- scale: d.shiftPressed ? 1.0 : 0.0
+ buttons: [Qt.Key_PageUp]
+ scale: 1.0
}
ButtonAxisInput {
sourceDevice: keyboardSourceDevice
- buttons: [Qt.Key_Down]
- scale: d.shiftPressed ? -1.0 : 0.0
+ buttons: [Qt.Key_PageDown]
+ scale: -1.0
}
},
Axis {
@@ -176,12 +176,12 @@ Entity {
ButtonAxisInput {
sourceDevice: keyboardSourceDevice
buttons: [Qt.Key_Up]
- scale: d.shiftPressed ? 0.0 : 1.0
+ scale: 1.0
}
ButtonAxisInput {
sourceDevice: keyboardSourceDevice
buttons: [Qt.Key_Down]
- scale: d.shiftPressed ? 0.0 : -1.0
+ scale: -1.0
}
}
] // axes
@@ -205,8 +205,8 @@ Entity {
} else {
// Translate
root.camera.translate(Qt.vector3d(d.translationX, d.translationY, 0).times(dt));
- return
}
+ return
} else if (d.rightMouseButtonPressed) {
// Orbit
root.camera.panAboutViewCenter(d.orbitX * dt, d.firstPersonUp);
@@ -220,14 +220,14 @@ Entity {
} else if (d.shiftPressed) {
if (zoomDistance(root.camera.position, root.camera.viewCenter) > root.zoomLimit * root.zoomLimit) {
// Dolly up to limit
- root.camera.translate(Qt.vector3d(0, 0, d.translationZ).times(dt), Camera.DontTranslateViewCenter);
+ root.camera.translate(Qt.vector3d(0, 0, d.translationY).times(dt), Camera.DontTranslateViewCenter);
} else {
// Too close, Dolly backwards
root.camera.translate(Qt.vector3d(0, 0, -1).times(dt), Camera.DontTranslateViewCenter);
}
} else {
// Translate
- root.camera.translate(Qt.vector3d(d.translationX, d.translationY, 0).times(dt));
+ root.camera.translate(Qt.vector3d(d.translationX, d.translationY, d.translationZ).times(dt));
}
}
}