summaryrefslogtreecommitdiffstats
path: root/src/datavisualization/engine/selectionpointer.cpp
diff options
context:
space:
mode:
authorMiikka Heikkinen <miikka.heikkinen@digia.com>2014-01-24 13:45:18 +0200
committerMiikka Heikkinen <miikka.heikkinen@digia.com>2014-01-27 07:51:17 +0200
commit71b501d31ae7c5d3aab987b54acccecce1136896 (patch)
tree7898e60da146dadd8ed665b21d35960efa5f61fa /src/datavisualization/engine/selectionpointer.cpp
parent8178f10769f7f7d84d4d1180994d0232e5fc8f93 (diff)
Added series rotation and bar item rotation support
Task-number: QTRD-2654 Change-Id: I864d33bc173b35b8680eddb402bdf1817ecb031f Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
Diffstat (limited to 'src/datavisualization/engine/selectionpointer.cpp')
-rw-r--r--src/datavisualization/engine/selectionpointer.cpp20
1 files changed, 16 insertions, 4 deletions
diff --git a/src/datavisualization/engine/selectionpointer.cpp b/src/datavisualization/engine/selectionpointer.cpp
index 85fb2b71..2dd23930 100644
--- a/src/datavisualization/engine/selectionpointer.cpp
+++ b/src/datavisualization/engine/selectionpointer.cpp
@@ -110,8 +110,15 @@ void SelectionPointer::render(GLuint defaultFboHandle)
// Position the pointer ball
modelMatrix.translate(m_position);
+ if (!m_rotation.isIdentity()) {
+ modelMatrix.rotate(m_rotation);
+ itModelMatrix.rotate(m_rotation);
+ }
+
// Scale the point with fixed values (at this point)
- modelMatrix.scale(QVector3D(0.05f, 0.05f, 0.05f));
+ QVector3D scaleVector(0.05f, 0.05f, 0.05f);
+ modelMatrix.scale(scaleVector);
+ itModelMatrix.scale(scaleVector);
MVPMatrix = projectionMatrix * viewMatrix * modelMatrix;
@@ -189,7 +196,7 @@ void SelectionPointer::render(GLuint defaultFboHandle)
glEnable(GL_DEPTH_TEST);
}
-void SelectionPointer::setPosition(QVector3D position)
+void SelectionPointer::setPosition(const QVector3D &position)
{
m_position = position;
}
@@ -200,11 +207,16 @@ void SelectionPointer::updateSliceData(bool sliceActivated, GLfloat autoScaleAdj
m_autoScaleAdjustment = autoScaleAdjustment;
}
-void SelectionPointer::setHighlightColor(QVector3D colorVector)
+void SelectionPointer::setHighlightColor(const QVector3D &colorVector)
{
m_highlightColor = colorVector;
}
+void SelectionPointer::setRotation(const QQuaternion &rotation)
+{
+ m_rotation = rotation;
+}
+
void SelectionPointer::setLabel(const QString &label)
{
m_label = label;
@@ -222,7 +234,7 @@ void SelectionPointer::handleDrawerChange()
setLabel(m_label);
}
-void SelectionPointer::updateBoundingRect(QRect rect)
+void SelectionPointer::updateBoundingRect(const QRect &rect)
{
m_mainViewPort = rect;
}