summaryrefslogtreecommitdiffstats
path: root/src/datavis3d/utils
diff options
context:
space:
mode:
authorTomi Korpipää <tomi.korpipaa@digia.com>2013-04-15 12:11:55 +0300
committerMika Salmela <mika.salmela@digia.com>2013-04-15 12:25:26 +0300
commiteb92ad69dbe1568a3055d01066d975cce9fdcc39 (patch)
treeeed51e9676b121618a1cb2c5f316de77d693582b /src/datavis3d/utils
parente73afe39d81fd6fba070aa475d9c7490a6a7d8d1 (diff)
Preset camera function moved to camerahelper
Change-Id: I6b96abd8a951622496abab0495f44fcd4ec1764b Change-Id: I6b96abd8a951622496abab0495f44fcd4ec1764b Reviewed-by: Mika Salmela <mika.salmela@digia.com>
Diffstat (limited to 'src/datavis3d/utils')
-rw-r--r--src/datavis3d/utils/camerahelper.cpp103
-rw-r--r--src/datavis3d/utils/camerahelper_p.h2
2 files changed, 105 insertions, 0 deletions
diff --git a/src/datavis3d/utils/camerahelper.cpp b/src/datavis3d/utils/camerahelper.cpp
index ac93abaa..4b8830a1 100644
--- a/src/datavis3d/utils/camerahelper.cpp
+++ b/src/datavis3d/utils/camerahelper.cpp
@@ -177,4 +177,107 @@ QPointF CameraHelper::getCameraRotations()
return rotations;
}
+void CameraHelper::setCameraPreset(Q3DBars::CameraPreset preset)
+{
+ switch (preset) {
+ case Q3DBars::PresetFrontLow: {
+ qDebug("PresetFrontLow");
+ CameraHelper::setCameraRotation(QPointF(0.0f, 0.0f));
+ break;
+ }
+ case Q3DBars::PresetFront: {
+ qDebug("PresetFront");
+ CameraHelper::setCameraRotation(QPointF(0.0f, 22.5f));
+ break;
+ }
+ case Q3DBars::PresetFrontHigh: {
+ qDebug("PresetFrontHigh");
+ CameraHelper::setCameraRotation(QPointF(0.0f, 45.0f));
+ break;
+ }
+ case Q3DBars::PresetLeftLow: {
+ qDebug("PresetLeftLow");
+ CameraHelper::setCameraRotation(QPointF(90.0f, 0.0f));
+ break;
+ }
+ case Q3DBars::PresetLeft: {
+ qDebug("PresetLeft");
+ CameraHelper::setCameraRotation(QPointF(90.0f, 22.5f));
+ break;
+ }
+ case Q3DBars::PresetLeftHigh: {
+ qDebug("PresetLeftHigh");
+ CameraHelper::setCameraRotation(QPointF(90.0f, 45.0f));
+ break;
+ }
+ case Q3DBars::PresetRightLow: {
+ qDebug("PresetRightLow");
+ CameraHelper::setCameraRotation(QPointF(-90.0f, 0.0f));
+ break;
+ }
+ case Q3DBars::PresetRight: {
+ qDebug("PresetRight");
+ CameraHelper::setCameraRotation(QPointF(-90.0f, 22.5f));
+ break;
+ }
+ case Q3DBars::PresetRightHigh: {
+ qDebug("PresetRightHigh");
+ CameraHelper::setCameraRotation(QPointF(-90.0f, 45.0f));
+ break;
+ }
+ case Q3DBars::PresetBehindLow: {
+ qDebug("PresetBehindLow");
+ CameraHelper::setCameraRotation(QPointF(180.0f, 0.0f));
+ break;
+ }
+ case Q3DBars::PresetBehind: {
+ qDebug("PresetBehind");
+ CameraHelper::setCameraRotation(QPointF(180.0f, 22.5f));
+ break;
+ }
+ case Q3DBars::PresetBehindHigh: {
+ qDebug("PresetBehindHigh");
+ CameraHelper::setCameraRotation(QPointF(180.0f, 45.0f));
+ break;
+ }
+ case Q3DBars::PresetIsometricLeft: {
+ qDebug("PresetIsometricLeft");
+ CameraHelper::setCameraRotation(QPointF(45.0f, 22.5f));
+ break;
+ }
+ case Q3DBars::PresetIsometricLeftHigh: {
+ qDebug("PresetIsometricLeftHigh");
+ CameraHelper::setCameraRotation(QPointF(45.0f, 45.0f));
+ break;
+ }
+ case Q3DBars::PresetIsometricRight: {
+ qDebug("PresetIsometricRight");
+ CameraHelper::setCameraRotation(QPointF(-45.0f, 22.5f));
+ break;
+ }
+ case Q3DBars::PresetIsometricRightHigh: {
+ qDebug("PresetIsometricRightHigh");
+ CameraHelper::setCameraRotation(QPointF(-45.0f, 45.0f));
+ break;
+ }
+ case Q3DBars::PresetDirectlyAbove: {
+ qDebug("PresetDirectlyAbove");
+ CameraHelper::setCameraRotation(QPointF(0.0f, 90.0f));
+ break;
+ }
+ case Q3DBars::PresetDirectlyAboveCW45: {
+ qDebug("PresetDirectlyAboveCW45");
+ CameraHelper::setCameraRotation(QPointF(-45.0f, 90.0f));
+ break;
+ }
+ case Q3DBars::PresetDirectlyAboveCCW45: {
+ qDebug("PresetDirectlyAboveCCW45");
+ CameraHelper::setCameraRotation(QPointF(45.0f, 90.0f));
+ break;
+ }
+ default:
+ break;
+ }
+}
+
QTCOMMERCIALDATAVIS3D_END_NAMESPACE
diff --git a/src/datavis3d/utils/camerahelper_p.h b/src/datavis3d/utils/camerahelper_p.h
index 1f8cb074..a27bbc3b 100644
--- a/src/datavis3d/utils/camerahelper_p.h
+++ b/src/datavis3d/utils/camerahelper_p.h
@@ -53,6 +53,7 @@
#define CAMERAPOSITIONER_P_H
#include "qdatavis3dglobal.h"
+#include "q3dbars.h"
class QMatrix4x4;
class QVector3D;
@@ -82,6 +83,7 @@ public:
static QVector3D calculateLightPosition(const QVector3D &lightPosition
, float fixedRotation = 0.0f);
static void updateMousePos(const QPoint &mousePos);
+ static void setCameraPreset(Q3DBars::CameraPreset preset);
};
QTCOMMERCIALDATAVIS3D_END_NAMESPACE