summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorTomi Korpipää <tomi.korpipaa@digia.com>2013-04-03 08:05:45 +0300
committerTomi Korpipää <tomi.korpipaa@digia.com>2013-04-03 08:06:18 +0300
commit450846abbdd054305646979fb7e4c63278ca1286 (patch)
treedeaf347fe06985f53cc1ff54cb322bd2f326528c /src
parentfaa177c0c8e17bff13881f411375a9aa5e03406a (diff)
Added ambient strengths to themes
Change-Id: I6245889f5b2a9a3e0db434ea08d126707c72ddb9 Change-Id: I6245889f5b2a9a3e0db434ea08d126707c72ddb9 Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
Diffstat (limited to 'src')
-rw-r--r--src/datavis3d/engine/q3dbars.cpp47
-rw-r--r--src/datavis3d/engine/q3dbars_p.h1
2 files changed, 35 insertions, 13 deletions
diff --git a/src/datavis3d/engine/q3dbars.cpp b/src/datavis3d/engine/q3dbars.cpp
index 6f3a3f8a..83967e43 100644
--- a/src/datavis3d/engine/q3dbars.cpp
+++ b/src/datavis3d/engine/q3dbars.cpp
@@ -128,6 +128,7 @@ void Q3DBars::render()
if (d_ptr->m_paintDevice) {
QPainter painter(d_ptr->m_paintDevice);
painter.setRenderHint(QPainter::HighQualityAntialiasing, true);
+ //painter.setRenderHint(QPainter::Antialiasing, true);
render(&painter);
painter.end();
}
@@ -420,6 +421,8 @@ void Q3DBars::drawScene()
, backgroundColor);
d_ptr->m_backgroundShader->setUniformValue(d_ptr->m_backgroundShader->lightS()
, d_ptr->m_lightStrength);
+ d_ptr->m_backgroundShader->setUniformValue(d_ptr->m_backgroundShader->ambientS()
+ , d_ptr->m_ambientStrength);
// 1st attribute buffer : vertices
glEnableVertexAttribArray(d_ptr->m_backgroundShader->posAtt());
@@ -552,6 +555,8 @@ void Q3DBars::drawScene()
d_ptr->m_barShader->setUniformValue(d_ptr->m_barShader->MVP(), MVPMatrix);
d_ptr->m_barShader->setUniformValue(d_ptr->m_barShader->color(), barColor);
d_ptr->m_barShader->setUniformValue(d_ptr->m_barShader->lightS(), lightStrength);
+ d_ptr->m_barShader->setUniformValue(d_ptr->m_barShader->ambientS()
+ , d_ptr->m_ambientStrength);
//qDebug() << "height:" << barHeight;
// 1st attribute buffer : vertices
@@ -905,6 +910,7 @@ void Q3DBars::setTheme(ColorTheme theme)
// d_ptr->m_highlightRowColor = QColor();
// d_ptr->m_highlightColumnColor = QColor();
// d_ptr->m_lightStrength = QColor();
+// d_ptr->m_ambientStrength = QColor();
// d_ptr->m_highlightLightStrength = QColor();
// d_ptr->m_uniformColor = QColor();
break;
@@ -920,15 +926,17 @@ void Q3DBars::setTheme(ColorTheme theme)
d_ptr->m_highlightBarColor = QColor(Qt::blue);
d_ptr->m_highlightRowColor = QColor(Qt::darkBlue);
d_ptr->m_highlightColumnColor = QColor(Qt::darkBlue);
- d_ptr->m_lightStrength = 6.0f;
+ d_ptr->m_lightStrength = 5.0f;
+ d_ptr->m_ambientStrength = 0.2f;
d_ptr->m_highlightLightStrength = 10.0f;
d_ptr->m_uniformColor = true;
+ qDebug("ThemeBlueCerulean");
break;
}
case ThemeBlueIcy: {
d_ptr->m_baseColor = QRgb(0x3daeda);
d_ptr->m_heightColor = QRgb(0x2fa3b4);
- d_ptr->m_depthColor = QColor(Qt::white);
+ d_ptr->m_depthColor = QColor(Qt::lightGray);
d_ptr->m_backgroundColor = QColor(QRgb(0xffffff));
d_ptr->m_windowColor = QColor(QRgb(0xffffff));
d_ptr->m_textColor = QColor(QRgb(0x404044));
@@ -936,9 +944,11 @@ void Q3DBars::setTheme(ColorTheme theme)
d_ptr->m_highlightBarColor = QColor(Qt::white);
d_ptr->m_highlightRowColor = QColor(Qt::lightGray);
d_ptr->m_highlightColumnColor = QColor(Qt::lightGray);
- d_ptr->m_lightStrength = 6.0f;
- d_ptr->m_highlightLightStrength = 10.0f;
+ d_ptr->m_lightStrength = 5.0f;
+ d_ptr->m_ambientStrength = 0.4f;
+ d_ptr->m_highlightLightStrength = 8.0f;
d_ptr->m_uniformColor = true;
+ qDebug("ThemeBlueIcy");
break;
}
case ThemeBlueNcs: {
@@ -952,9 +962,11 @@ void Q3DBars::setTheme(ColorTheme theme)
d_ptr->m_highlightBarColor = QColor(Qt::lightGray);
d_ptr->m_highlightRowColor = QColor(Qt::gray);
d_ptr->m_highlightColumnColor = QColor(Qt::gray);
- d_ptr->m_lightStrength = 6.0f;
+ d_ptr->m_lightStrength = 4.0f;
+ d_ptr->m_ambientStrength = 0.2f;
d_ptr->m_highlightLightStrength = 6.0f;
d_ptr->m_uniformColor = true;
+ qDebug("ThemeBlueNcs");
break;
}
case ThemeBrownSand: {
@@ -969,8 +981,10 @@ void Q3DBars::setTheme(ColorTheme theme)
d_ptr->m_highlightRowColor = QColor(Qt::darkYellow);
d_ptr->m_highlightColumnColor = QColor(Qt::darkYellow);
d_ptr->m_lightStrength = 6.0f;
+ d_ptr->m_ambientStrength = 0.3f;
d_ptr->m_highlightLightStrength = 8.0f;
d_ptr->m_uniformColor = false;
+ qDebug("ThemeBrownSand");
break;
}
case ThemeDark: {
@@ -985,14 +999,16 @@ void Q3DBars::setTheme(ColorTheme theme)
d_ptr->m_highlightRowColor = QColor(Qt::darkGray);
d_ptr->m_highlightColumnColor = QColor(Qt::darkGray);
d_ptr->m_lightStrength = 6.0f;
+ d_ptr->m_ambientStrength = 0.2f;
d_ptr->m_highlightLightStrength = 8.0f;
d_ptr->m_uniformColor = false;
+ qDebug("ThemeDark");
break;
}
case ThemeHighContrast: {
d_ptr->m_baseColor = QColor(QRgb(0x202020));
d_ptr->m_heightColor = QColor(QRgb(0xff4a41));
- d_ptr->m_depthColor = QColor(Qt::white);
+ d_ptr->m_depthColor = QColor(Qt::red);
d_ptr->m_backgroundColor = QColor(QRgb(0xffffff));
d_ptr->m_windowColor = QColor(QRgb(0xffffff));
d_ptr->m_textColor = QColor(QRgb(0x181818));
@@ -1000,9 +1016,11 @@ void Q3DBars::setTheme(ColorTheme theme)
d_ptr->m_highlightBarColor = QColor(Qt::black);
d_ptr->m_highlightRowColor = QColor(Qt::white);
d_ptr->m_highlightColumnColor = QColor(Qt::white);
- d_ptr->m_lightStrength = 6.0f;
- d_ptr->m_highlightLightStrength = 15.0f;
- d_ptr->m_uniformColor = true;
+ d_ptr->m_lightStrength = 5.0f;
+ d_ptr->m_ambientStrength = 1.0f;
+ d_ptr->m_highlightLightStrength = 10.0f;
+ d_ptr->m_uniformColor = false;
+ qDebug("ThemeHighContrast");
break;
}
case ThemeLight: {
@@ -1016,9 +1034,11 @@ void Q3DBars::setTheme(ColorTheme theme)
d_ptr->m_highlightBarColor = QColor(Qt::white);
d_ptr->m_highlightRowColor = QColor(Qt::lightGray);
d_ptr->m_highlightColumnColor = QColor(Qt::lightGray);
- d_ptr->m_lightStrength = 6.0f;
- d_ptr->m_highlightLightStrength = 10.0f;
+ d_ptr->m_lightStrength = 3.0f;
+ d_ptr->m_ambientStrength = 0.5f;
+ d_ptr->m_highlightLightStrength = 6.0f;
d_ptr->m_uniformColor = true;
+ qDebug("ThemeLight");
break;
}
default:
@@ -1129,8 +1149,9 @@ Q3DBarsPrivate::Q3DBarsPrivate(Q3DBars *q)
, m_highlightBarColor(QColor(Qt::red))
, m_highlightRowColor(QColor(Qt::darkRed))
, m_highlightColumnColor(QColor(Qt::darkMagenta))
- , m_lightStrength(6.0f)
- , m_highlightLightStrength(10.0f)
+ , m_lightStrength(4.0f)
+ , m_ambientStrength(0.3f)
+ , m_highlightLightStrength(8.0f)
, m_uniformColor(true)
, m_isInitialized(false)
, m_selectionMode(Q3DBars::Bar)
diff --git a/src/datavis3d/engine/q3dbars_p.h b/src/datavis3d/engine/q3dbars_p.h
index f1734480..a3ab3949 100644
--- a/src/datavis3d/engine/q3dbars_p.h
+++ b/src/datavis3d/engine/q3dbars_p.h
@@ -79,6 +79,7 @@ public:
QColor m_highlightRowColor;
QColor m_highlightColumnColor;
float m_lightStrength;
+ float m_ambientStrength;
float m_highlightLightStrength;
bool m_uniformColor;
// TODO: Perhaps different shaders are required for different themes