summaryrefslogtreecommitdiffstats
path: root/src/datavis3d/engine/surface3dcontroller.cpp
diff options
context:
space:
mode:
authorKeränen Pasi <pasi.keranen@digia.com>2013-08-23 16:17:29 +0300
committerPasi Keränen <pasi.keranen@digia.com>2013-09-10 09:46:55 +0300
commitf3e38983d77c72f3121c33a149a58fdf9c64158c (patch)
treed7aebaed7e6e8b4570f8d96f195d1dca42c56f03 /src/datavis3d/engine/surface3dcontroller.cpp
parenta88d9cacf7465ea0a1b5eb642f6c2f9cc7ad971d (diff)
New 3D scene for lights and camera setup for input handlers.
Change-Id: Ib909bd818364c1646615df7c543d57b07b920a83 Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
Diffstat (limited to 'src/datavis3d/engine/surface3dcontroller.cpp')
-rw-r--r--src/datavis3d/engine/surface3dcontroller.cpp81
1 files changed, 8 insertions, 73 deletions
diff --git a/src/datavis3d/engine/surface3dcontroller.cpp b/src/datavis3d/engine/surface3dcontroller.cpp
index 01e24a92..8b7d38a7 100644
--- a/src/datavis3d/engine/surface3dcontroller.cpp
+++ b/src/datavis3d/engine/surface3dcontroller.cpp
@@ -35,9 +35,7 @@ Surface3DController::Surface3DController(QRect rect)
: Abstract3DController(rect),
m_renderer(0),
m_smoothSurface(false),
- m_surfaceGrid(true),
- m_mouseState(MouseNone),
- m_mousePos(QPoint(0, 0))
+ m_surfaceGrid(true)
{
setActiveDataProxy(0);
@@ -47,6 +45,8 @@ Surface3DController::Surface3DController(QRect rect)
setAxisX(0);
setAxisY(0);
setAxisZ(0);
+ QObject::connect(m_activeInputHandler, &QAbstract3DInputHandler::selectionAtPoint,
+ this, &Surface3DController::handleSelectionAtPoint);
}
Surface3DController::~Surface3DController()
@@ -87,15 +87,6 @@ void Surface3DController::handleAxisAutoAdjustRangeChangedInOrientation(Q3DAbstr
// TODO: Implement!
}
-QMatrix4x4 Surface3DController::calculateViewMatrix(int zoom, int viewPortWidth, int viewPortHeight, bool showUnder)
-{
- return m_cameraHelper->calculateViewMatrix(m_mousePos,
- zoom,
- viewPortWidth,
- viewPortHeight,
- showUnder);
-}
-
void Surface3DController::setSmoothSurface(bool enable)
{
m_smoothSurface = enable;
@@ -120,67 +111,6 @@ bool Surface3DController::surfaceGrid()
return m_surfaceGrid;
}
-
-#if defined(Q_OS_ANDROID)
-void Surface3DController::mouseDoubleClickEvent(QMouseEvent *event)
-{
- Q_UNUSED(event)
-}
-void touchEvent(QTouchEvent *event)
-{
- Q_UNUSED(event)
-}
-#endif
-
-void Surface3DController::mousePressEvent(QMouseEvent *event, const QPoint &mousePos)
-{
- if (Qt::LeftButton == event->button()) {
- m_mousePos = mousePos;
- emit leftMousePressed(mousePos);
- } else if (Qt::RightButton == event->button()) {
- #if !defined(Q_OS_ANDROID)
- m_mouseState = Abstract3DController::MouseRotating;
- #else
- m_mouseState = Abstract3DController::MouseOnScene;
- #endif
- // update mouse positions to prevent jumping when releasing or repressing a button
- m_mousePos = mousePos; //event->pos();
- }
- m_cameraHelper->updateMousePos(m_mousePos);
- emitNeedRender();
-}
-
-void Surface3DController::mouseReleaseEvent(QMouseEvent *event, const QPoint &mousePos)
-{
- Q_UNUSED(event)
- if (Abstract3DController::MouseRotating == m_mouseState) {
- // update mouse positions to prevent jumping when releasing or repressing a button
- m_mousePos = mousePos; //event->pos();
- m_cameraHelper->updateMousePos(mousePos); //event->pos());
- emitNeedRender();
- }
- m_mouseState = Abstract3DController::MouseNone;
-}
-
-void Surface3DController::mouseMoveEvent(QMouseEvent *event, const QPoint &mousePos)
-{
- Q_UNUSED(event)
- if (Abstract3DController::MouseRotating == m_mouseState) {
- m_mousePos = mousePos; //event->pos();
- emitNeedRender();
- }
-}
-
-void Surface3DController::wheelEvent(QWheelEvent *event)
-{
- Q_UNUSED(event)
-}
-
-QPoint Surface3DController::mousePosition()
-{
- return m_mousePos;
-}
-
void Surface3DController::setActiveDataProxy(QAbstractDataProxy *proxy)
{
// Setting null proxy indicates default proxy
@@ -223,4 +153,9 @@ void Surface3DController::setGradientColorAt(qreal pos, const QColor &color)
emitNeedRender();
}
+void Surface3DController::handleSelectionAtPoint(const QPoint &point)
+{
+ emit leftMousePressed(point);
+}
+
QT_DATAVIS3D_END_NAMESPACE