diff options
author | Tarja Sundqvist <tarja.sundqvist@qt.io> | 2022-08-16 20:37:20 +0300 |
---|---|---|
committer | Tarja Sundqvist <tarja.sundqvist@qt.io> | 2022-08-16 20:37:20 +0300 |
commit | 502612c72a2cd3b3b0c4cff926e7764d74106d33 (patch) | |
tree | 1e5a0ac6240366710d21297c13d7b4b728c4f86a /src/datavisualization/engine/bars3drenderer.cpp | |
parent | a32c95d27224c6c9e41d6080ea54bc937c5d1455 (diff) | |
parent | a94f9816a9bae2baea38681096a209bf3839a883 (diff) |
Merge remote-tracking branch 'origin/tqtc/lts-5.15.6' into tqtc/lts-5.15-opensourcev5.15.6-lts-lgpl
Change-Id: I1e082907948815646dcc354e5a3a3052c7edc666
Diffstat (limited to 'src/datavisualization/engine/bars3drenderer.cpp')
-rw-r--r-- | src/datavisualization/engine/bars3drenderer.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/datavisualization/engine/bars3drenderer.cpp b/src/datavisualization/engine/bars3drenderer.cpp index c57339db..c04ef78c 100644 --- a/src/datavisualization/engine/bars3drenderer.cpp +++ b/src/datavisualization/engine/bars3drenderer.cpp @@ -2051,10 +2051,14 @@ void Bars3DRenderer::drawLabels(bool drawSelection, const Q3DCamera *activeCamer glEnable(GL_POLYGON_OFFSET_FILL); + // If camera x rotation is 180, side labels face wrong direction + float activeCameraXRotation = (activeCamera->xRotation() >= 180.0f) ? -180.0f + : activeCamera->xRotation(); + float labelAutoAngle = m_axisCacheY.labelAutoRotation(); float labelAngleFraction = labelAutoAngle / 90.0f; float fractionCamY = activeCamera->yRotation() * labelAngleFraction; - float fractionCamX = activeCamera->xRotation() * labelAngleFraction; + float fractionCamX = activeCameraXRotation * labelAngleFraction; float labelsMaxWidth = 0.0f; int startIndex; @@ -2168,7 +2172,7 @@ void Bars3DRenderer::drawLabels(bool drawSelection, const Q3DCamera *activeCamer labelAutoAngle = m_axisCacheZ.labelAutoRotation(); labelAngleFraction = labelAutoAngle / 90.0f; fractionCamY = activeCamera->yRotation() * labelAngleFraction; - fractionCamX = activeCamera->xRotation() * labelAngleFraction; + fractionCamX = activeCameraXRotation * labelAngleFraction; GLfloat labelYAdjustment = 0.005f; GLfloat colPosValue = m_scaleXWithBackground + labelMargin; GLfloat rowPosValue = m_scaleZWithBackground + labelMargin; @@ -2293,7 +2297,7 @@ void Bars3DRenderer::drawLabels(bool drawSelection, const Q3DCamera *activeCamer labelAutoAngle = m_axisCacheX.labelAutoRotation(); labelAngleFraction = labelAutoAngle / 90.0f; fractionCamY = activeCamera->yRotation() * labelAngleFraction; - fractionCamX = activeCamera->xRotation() * labelAngleFraction; + fractionCamX = activeCameraXRotation * labelAngleFraction; alignment = (m_xFlipped != m_zFlipped) ? Qt::AlignLeft : Qt::AlignRight; if (labelAutoAngle == 0.0f) { labelRotation = QVector3D(-90.0f, 90.0f, 0.0f); |