summaryrefslogtreecommitdiffstats
path: root/examples/datavisualization/texturesurface/highlightseries.cpp
diff options
context:
space:
mode:
authorMika Salmela <mika.salmela@digia.com>2014-08-21 09:55:23 +0300
committerMika Salmela <mika.salmela@digia.com>2014-08-21 10:09:04 +0300
commit8fab0a9cfcbed9deb47f4a9bd101434985c1c611 (patch)
tree4c884d30f6bed5ce7471a16884b734ab8a347763 /examples/datavisualization/texturesurface/highlightseries.cpp
parent7ef676c7cbe5e3a960a66150794be3a862642073 (diff)
Gradient to highlight series
Added a gradient to highlight series on textured surface example. Change-Id: I2fc17dfa79f986cf5b651d964eb3bcf5d65f1c80 Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
Diffstat (limited to 'examples/datavisualization/texturesurface/highlightseries.cpp')
-rw-r--r--examples/datavisualization/texturesurface/highlightseries.cpp28
1 files changed, 26 insertions, 2 deletions
diff --git a/examples/datavisualization/texturesurface/highlightseries.cpp b/examples/datavisualization/texturesurface/highlightseries.cpp
index 7e5f7efb..13d1fba3 100644
--- a/examples/datavisualization/texturesurface/highlightseries.cpp
+++ b/examples/datavisualization/texturesurface/highlightseries.cpp
@@ -18,10 +18,16 @@
#include "highlightseries.h"
-#include <QDebug>
-
using namespace QtDataVisualization;
+//! [2]
+const float darkRedPos = 1.0f;
+const float redPos = 0.8f;
+const float yellowPos = 0.6f;
+const float greenPos = 0.4f;
+const float darkGreenPos = 0.2f;
+//! [2]
+
HighlightSeries::HighlightSeries()
: m_width(100),
m_height(100)
@@ -93,3 +99,21 @@ void HighlightSeries::handlePositionChange(const QPoint &position)
setVisible(true);
}
//! [1]
+
+//! [3]
+void HighlightSeries::handleGradientChange(float value)
+{
+ float ratio = m_minHeight / value;
+
+ QLinearGradient gr;
+ gr.setColorAt(0.0f, Qt::black);
+ gr.setColorAt(darkGreenPos * ratio, Qt::darkGreen);
+ gr.setColorAt(greenPos * ratio, Qt::green);
+ gr.setColorAt(yellowPos * ratio, Qt::yellow);
+ gr.setColorAt(redPos * ratio, Qt::red);
+ gr.setColorAt(darkRedPos * ratio, Qt::darkRed);
+
+ setBaseGradient(gr);
+ setColorStyle(Q3DTheme::ColorStyleRangeGradient);
+}
+//! [3]