diff options
author | Tomi Korpipää <tomi.korpipaa@digia.com> | 2013-04-03 08:05:45 +0300 |
---|---|---|
committer | Tomi Korpipää <tomi.korpipaa@digia.com> | 2013-04-03 08:06:18 +0300 |
commit | 450846abbdd054305646979fb7e4c63278ca1286 (patch) | |
tree | deaf347fe06985f53cc1ff54cb322bd2f326528c /src | |
parent | faa177c0c8e17bff13881f411375a9aa5e03406a (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.cpp | 47 | ||||
-rw-r--r-- | src/datavis3d/engine/q3dbars_p.h | 1 |
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 |