summaryrefslogtreecommitdiffstats
path: root/examples/surfacechart
diff options
context:
space:
mode:
authorMiikka Heikkinen <miikka.heikkinen@digia.com>2013-10-03 14:26:46 +0300
committerMiikka Heikkinen <miikka.heikkinen@digia.com>2013-10-04 08:19:30 +0300
commitd879027ac73093e51d3470e9aea87aa5479a0ef1 (patch)
treea7be8452ce0908d3b7ed58413915b5072a83fd8c /examples/surfacechart
parent7e35ce01ac38fea1d7c3ce51ab9c24fdf6e7453c (diff)
Replace 'chart' with 'graph'
Task-number: QTRD-2369 Change-Id: Ic39bc03a0eee4fe75978e71af06ad7a655e958a9 Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
Diffstat (limited to 'examples/surfacechart')
-rw-r--r--examples/surfacechart/Heightmap.pngbin71764 -> 0 bytes
-rw-r--r--examples/surfacechart/chartmodifier.cpp389
-rw-r--r--examples/surfacechart/chartmodifier.h95
-rw-r--r--examples/surfacechart/main.cpp256
-rw-r--r--examples/surfacechart/surface.qrc5
-rw-r--r--examples/surfacechart/surfacechart.pro16
6 files changed, 0 insertions, 761 deletions
diff --git a/examples/surfacechart/Heightmap.png b/examples/surfacechart/Heightmap.png
deleted file mode 100644
index 2a860111..00000000
--- a/examples/surfacechart/Heightmap.png
+++ /dev/null
Binary files differ
diff --git a/examples/surfacechart/chartmodifier.cpp b/examples/surfacechart/chartmodifier.cpp
deleted file mode 100644
index b0115fd3..00000000
--- a/examples/surfacechart/chartmodifier.cpp
+++ /dev/null
@@ -1,389 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2013 Digia Plc
-** All rights reserved.
-** For any questions to Digia, please use contact form at http://qt.digia.com
-**
-** This file is part of the QtDataVisualization module.
-**
-** Licensees holding valid Qt Enterprise licenses may use this file in
-** accordance with the Qt Enterprise License Agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and Digia.
-**
-** If you have questions regarding the use of this file, please use
-** contact form at http://qt.digia.com
-**
-****************************************************************************/
-
-#include "chartmodifier.h"
-#include <QtDataVisualization/Q3DValueAxis>
-#include <QtDataVisualization/QSurfaceDataProxy>
-
-#include <qmath.h>
-#include <QLinearGradient>
-#include <QDebug>
-
-QT_DATAVISUALIZATION_USE_NAMESPACE
-
-//#define JITTER_PLANE
-//#define WONKY_PLANE
-
-ChartModifier::ChartModifier(Q3DSurface *chart)
- : m_chart(chart),
- m_gridSliderX(0),
- m_gridSliderZ(0),
- m_axisRangeSliderX(0),
- m_axisRangeSliderZ(0),
- m_axisMinSliderX(0),
- m_axisMinSliderZ(0),
- m_xCount(50),
- m_zCount(50),
- m_activeSample(0),
- m_fontSize(40),
- m_rangeX(16.0),
- m_rangeZ(16.0),
- m_minX(-8.0),
- m_minZ(-8.0),
- m_planeArray(0)
-{
- m_chart->setAxisX(new Q3DValueAxis);
- m_chart->setAxisY(new Q3DValueAxis);
- m_chart->setAxisZ(new Q3DValueAxis);
- m_chart->axisX()->setRange(m_minX, m_minX + m_rangeX);
- m_chart->axisZ()->setRange(m_minZ, m_minZ + m_rangeZ);
- changeStyle();
-
- connect(&m_timer, &QTimer::timeout, this, &ChartModifier::timeout);
-}
-
-ChartModifier::~ChartModifier()
-{
- delete m_chart;
-}
-
-void ChartModifier::toggleSmooth(bool enabled)
-{
- qDebug() << "ChartModifier::toggleSmooth " << enabled;
- m_chart->setSmoothSurfaceEnabled(enabled);
-}
-
-void ChartModifier::toggleSurfaceGrid(bool enable)
-{
- qDebug() << "ChartModifier::toggleSurfaceGrid" << enable;
- m_chart->setSurfaceGridEnabled(enable);
-}
-
-void ChartModifier::toggleSqrtSin(bool enable)
-{
- if (enable) {
- qDebug() << "Create Sqrt&Sin surface, (" << m_xCount << ", " << m_zCount << ")";
-
- float minX = -10.0;
- float maxX = 10.0;
- float minZ = -10.0;
- float maxZ = 10.0;
- float stepX = (maxX - minX) / float(m_xCount - 1);
- float stepZ = (maxZ - minZ) / float(m_zCount - 1);
-
- QSurfaceDataArray *dataArray = new QSurfaceDataArray;
- dataArray->reserve(m_zCount);
- for (float i = 0; i < m_zCount; i++) {
- QSurfaceDataRow *newRow = new QSurfaceDataRow(m_xCount);
- for (float j = 0; j < m_xCount; j++) {
- float x = j * stepX + minX;
- float z = i * stepZ + minZ;
- float R = qSqrt(x * x + z * z) + 0.01f;
- float y = (qSin(R) / R + 0.24f) * 1.61f + 1.0f;
- (*newRow)[j].setPosition(QVector3D(x, y, z));
- qDebug() << x << y << z;
- }
- *dataArray << newRow;
- }
-
- m_chart->axisY()->setRange(1.0, 3.0);
- m_chart->axisX()->setLabelFormat("%.2f");
- m_chart->axisZ()->setLabelFormat("%.2f");
-
- resetArrayAndSliders(dataArray, minZ, maxZ, minX, maxX);
-
- m_activeSample = ChartModifier::SqrtSin;
- } else {
- qDebug() << "Remove surface";
- }
-}
-
-void ChartModifier::togglePlane(bool enable)
-{
- qDebug() << "ChartModifier::togglePlane " << enable;
-
- if (enable) {
- m_planeArray = new QSurfaceDataArray;
-
-#ifdef JITTER_PLANE
- m_timer.start(0);
-#endif
- m_chart->axisY()->setRange(0.0, 1.0);
- m_chart->axisX()->setLabelFormat("%.2f");
- m_chart->axisZ()->setLabelFormat("%.2f");
-
- m_planeArray->reserve(m_zCount);
- float minX = -10.0;
- float maxX = 20.0;
- float minZ = -10.0;
- float maxZ = 10.0;
- float stepX = (maxX - minX) / float(m_xCount - 1);
- float stepZ = (maxZ - minZ) / float(m_zCount - 1);
-#ifdef WONKY_PLANE
- float halfZ = m_zCount / 2;
- float wonkyFactor = 0.01f;
- float maxStepX = 0.0f;
- for (float i = 0; i < m_zCount; i++) {
- QSurfaceDataRow *newRow = new QSurfaceDataRow(m_xCount);
- if (i < halfZ) {
- stepX += wonkyFactor;
- maxStepX = stepX;
- } else {
- stepX -= wonkyFactor;
- }
- for (float j = 0; j < m_xCount; j++) {
- (*newRow)[j].setPosition(QVector3D(j * stepX + minX, -0.04f,
- i * stepZ + minZ));
-
- }
- *m_planeArray << newRow;
- }
-
- resetArrayAndSliders(m_planeArray, minZ, maxZ, minX, m_xCount * maxStepX + minZ);
-#else
- for (float i = 0; i < m_zCount; i++) {
- QSurfaceDataRow *newRow = new QSurfaceDataRow(m_xCount);
- for (float j = 0; j < m_xCount; j++)
- (*newRow)[j].setPosition(QVector3D(j * stepX + minX, -0.04f, i * stepZ + minZ));
-
- *m_planeArray << newRow;
- }
-
- resetArrayAndSliders(m_planeArray, minZ, maxZ, minX, maxX);
-#endif
-
- m_activeSample = ChartModifier::Plane;
- }
-#ifdef JITTER_PLANE
- else {
- m_timer.stop();
- }
-#endif
-}
-
-void ChartModifier::setHeightMapData(bool enable)
-{
- if (enable) {
- // Do the height map the hard way.
- // Easier alternative would be to use the QHeightMapSurfaceDataProxy.
- QImage image(":/maps/map");
-
- QSurfaceDataArray *dataArray = new QSurfaceDataArray;
- uchar *bits = image.bits();
-
- int p = image.width() * 4 * (image.height() - 1);
- dataArray->reserve(image.height());
- float minX = 34.0;
- float maxX = 40.0;
- float minZ = 18.0;
- float maxZ = 24.0;
- float xMul = (maxX - minX) / float(image.width() - 1);
- float zMul = (maxZ - minZ) / float(image.height() - 1);
- for (int i = 0; i < image.height(); i++, p -= image.width() * 4) {
- QSurfaceDataRow *newRow = new QSurfaceDataRow(image.width());
- for (int j = 0; j < image.width(); j++) {
- (*newRow)[j].setPosition(QVector3D((float(j) * xMul) + minX,
- (float(bits[p + (j * 4)]) + 1.0f) / 1.0f,
- (float(i) * zMul) + minZ));
- }
- *dataArray << newRow;
- }
-
- m_chart->axisY()->setAutoAdjustRange(true);
- m_chart->axisX()->setLabelFormat("%.1f N");
- m_chart->axisZ()->setLabelFormat("%.1f E");
-
- resetArrayAndSliders(dataArray, minZ, maxZ, minX, maxX);
-
- m_activeSample = ChartModifier::Map;
- }
-}
-
-void ChartModifier::toggleGridSliderLock(bool enable)
-{
- m_gridSlidersLocked = enable;
- if (m_gridSlidersLocked) {
- m_gridSliderZ->setEnabled(false);
- m_gridSliderZ->setValue(m_gridSliderX->value());
- } else {
- m_gridSliderZ->setEnabled(true);
- }
-}
-
-void ChartModifier::adjustXCount(int count)
-{
- m_xCount = count;
- if (m_gridSlidersLocked)
- m_gridSliderZ->setValue(count);
-
- updateSamples();
-
- qDebug() << "X count =" << count;
-}
-
-void ChartModifier::adjustZCount(int count)
-{
- m_zCount = count;
-
- updateSamples();
-
- qDebug() << "Z count =" << count;
-}
-
-void ChartModifier::adjustXRange(int range)
-{
- m_rangeX = range;
- m_chart->axisX()->setRange(m_minX, m_minX + m_rangeX);
-
- qDebug() << "X Range =" << range;
-}
-
-void ChartModifier::adjustZRange(int range)
-{
- m_rangeZ = range;
- m_chart->axisZ()->setRange(m_minZ, m_minZ + m_rangeZ);
-
- qDebug() << "Z Range =" << range;
-}
-
-void ChartModifier::adjustXMin(int min)
-{
- m_minX = min;
- m_chart->axisX()->setRange(m_minX, m_minX + m_rangeX);
-
- qDebug() << "X Minimum =" << min;
-}
-
-void ChartModifier::adjustZMin(int min)
-{
- m_minZ = min;
- m_chart->axisZ()->setRange(m_minZ, m_minZ + m_rangeZ);
-
- qDebug() << "Z Minimum =" << min;
-}
-
-void ChartModifier::gradientPressed()
-{
- QLinearGradient gradient;
- gradient.setColorAt(0.0, Qt::black);
- gradient.setColorAt(0.33, Qt::blue);
- gradient.setColorAt(0.67, Qt::red);
- gradient.setColorAt(1.0, Qt::yellow);
- m_chart->setGradient(gradient);
-}
-
-void ChartModifier::changeFont(const QFont &font)
-{
- QFont newFont = font;
- newFont.setPointSizeF(m_fontSize);
- m_chart->setFont(newFont);
-}
-
-void ChartModifier::changeStyle()
-{
- static int style = QDataVis::LabelStyleFromTheme;
-
- m_chart->setLabelStyle((QDataVis::LabelStyle)style);
-
- if (++style > QDataVis::LabelStyleTransparent)
- style = QDataVis::LabelStyleOpaque;
-}
-
-void ChartModifier::changeTheme(int theme)
-{
- m_chart->setTheme((QDataVis::Theme)theme);
-}
-
-void ChartModifier::timeout()
-{
- int rows = m_planeArray->size();
- int columns = m_planeArray->at(0)->size();
-
- // Induce minor random jitter to the existing plane array
- for (int i = 0; i < rows; i++) {
- for (int j = 0; j < columns; j++) {
- (*m_planeArray->at(i))[j].setX(m_planeArray->at(i)->at(j).x()
- * ((float((rand() % 10) + 5.0f) / 10000.0f) + 0.999f));
- (*m_planeArray->at(i))[j].setY(m_planeArray->at(i)->at(j).y()
- * ((float((rand() % 10) + 5.0f) / 1000.0f) + 0.99f) + 0.0001f);
- (*m_planeArray->at(i))[j].setZ(m_planeArray->at(i)->at(j).z()
- * ((float((rand() % 10) + 5.0f) / 10000.0f) + 0.999f));
- }
- }
-
- // Reset same array to make it redraw
- m_chart->activeDataProxy()->resetArray(m_planeArray);
-}
-
-void ChartModifier::resetArrayAndSliders(QSurfaceDataArray *array, qreal minZ, qreal maxZ, qreal minX, qreal maxX)
-{
- m_axisMinSliderX->setValue(minX);
- m_axisMinSliderZ->setValue(minZ);
- m_axisRangeSliderX->setValue(maxX - minX);
- m_axisRangeSliderZ->setValue(maxZ - minZ);
-
- m_chart->activeDataProxy()->resetArray(array);
-}
-
-void ChartModifier::changeShadowQuality(int quality)
-{
- QDataVis::ShadowQuality sq = QDataVis::ShadowQuality(quality);
- m_chart->setShadowQuality(sq);
-}
-
-void ChartModifier::changeSelectionMode(int mode)
-{
- switch (mode) {
- case 0:
- qDebug() << "QDataVis::SelectionModeNone";
- m_chart->setSelectionMode(QDataVis::SelectionModeNone);
- break;
- case 1:
- qDebug() << "QDataVis::SelectionModeItem";
- m_chart->setSelectionMode(QDataVis::SelectionModeItem);
- break;
- case 2:
- qDebug() << "QDataVis::SelectionModeSliceRow";
- m_chart->setSelectionMode(QDataVis::SelectionModeSliceRow);
- break;
- case 3:
- qDebug() << "QDataVis::SelectionModeSliceColumn";
- m_chart->setSelectionMode(QDataVis::SelectionModeSliceColumn);
- break;
- default:
- qDebug() << __FUNCTION__ << " Unsupported selection mode.";
- break;
- }
-}
-
-void ChartModifier::updateSamples()
-{
- switch (m_activeSample) {
- case SqrtSin:
- toggleSqrtSin(true);
- break;
-
- case Plane:
- togglePlane(true);
- break;
-
- default:
- break;
- }
-}
-
diff --git a/examples/surfacechart/chartmodifier.h b/examples/surfacechart/chartmodifier.h
deleted file mode 100644
index 083ceff7..00000000
--- a/examples/surfacechart/chartmodifier.h
+++ /dev/null
@@ -1,95 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2013 Digia Plc
-** All rights reserved.
-** For any questions to Digia, please use contact form at http://qt.digia.com
-**
-** This file is part of the QtDataVisualization module.
-**
-** Licensees holding valid Qt Enterprise licenses may use this file in
-** accordance with the Qt Enterprise License Agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and Digia.
-**
-** If you have questions regarding the use of this file, please use
-** contact form at http://qt.digia.com
-**
-****************************************************************************/
-
-#ifndef CHARTMODIFIER_H
-#define CHARTMODIFIER_H
-
-#include <QtDataVisualization/Q3DSurface>
-#include <QtDataVisualization/QSurfaceDataProxy>
-#include <QSlider>
-#include <QTimer>
-
-using namespace QtDataVisualization;
-
-class ChartModifier : public QObject
-{
- Q_OBJECT
-public:
- enum Samples {
- SqrtSin = 1,
- Plane,
- Map
- };
-
- explicit ChartModifier(Q3DSurface *chart);
- ~ChartModifier();
-
- void toggleSmooth(bool enabled);
- void toggleSurfaceGrid(bool enable);
- void toggleSqrtSin(bool enable);
- void togglePlane(bool enable);
- void setHeightMapData(bool enable);
- void toggleGridSliderLock(bool enable);
- void setGridSliderX(QSlider *slider) { m_gridSliderX = slider; }
- void setGridSliderZ(QSlider *slider) { m_gridSliderZ = slider; }
- void setAxisRangeSliderX(QSlider *slider) { m_axisRangeSliderX = slider; }
- void setAxisRangeSliderZ(QSlider *slider) { m_axisRangeSliderZ = slider; }
- void setAxisMinSliderX(QSlider *slider) { m_axisMinSliderX = slider; }
- void setAxisMinSliderZ(QSlider *slider) { m_axisMinSliderZ = slider; }
- void adjustXCount(int count);
- void adjustZCount(int count);
- void adjustXRange(int range);
- void adjustZRange(int range);
- void adjustXMin(int min);
- void adjustZMin(int min);
- void updateSamples();
- void gradientPressed();
- void changeFont(const QFont &font);
- void changeStyle();
-
-public slots:
- void changeShadowQuality(int quality);
- void changeTheme(int theme);
- void changeSelectionMode(int mode);
- void timeout();
-
-private:
- void resetArrayAndSliders(QSurfaceDataArray *array, qreal minZ, qreal maxZ, qreal minX,
- qreal maxX);
-
- Q3DSurface *m_chart;
- QSlider *m_gridSliderX;
- QSlider *m_gridSliderZ;
- QSlider *m_axisRangeSliderX;
- QSlider *m_axisRangeSliderZ;
- QSlider *m_axisMinSliderX;
- QSlider *m_axisMinSliderZ;
- bool m_gridSlidersLocked;
- int m_xCount;
- int m_zCount;
- int m_activeSample;
- int m_fontSize;
- qreal m_rangeX;
- qreal m_rangeZ;
- qreal m_minX;
- qreal m_minZ;
- QTimer m_timer;
- QSurfaceDataArray *m_planeArray;
-};
-
-#endif // CHARTMODIFIER_H
diff --git a/examples/surfacechart/main.cpp b/examples/surfacechart/main.cpp
deleted file mode 100644
index 256f4e2d..00000000
--- a/examples/surfacechart/main.cpp
+++ /dev/null
@@ -1,256 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2013 Digia Plc
-** All rights reserved.
-** For any questions to Digia, please use contact form at http://qt.digia.com
-**
-** This file is part of the QtDataVisualization module.
-**
-** Licensees holding valid Qt Enterprise licenses may use this file in
-** accordance with the Qt Enterprise License Agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and Digia.
-**
-** If you have questions regarding the use of this file, please use
-** contact form at http://qt.digia.com
-**
-****************************************************************************/
-
-#include "chartmodifier.h"
-
-#include <QApplication>
-#include <QWidget>
-#include <QHBoxLayout>
-#include <QVBoxLayout>
-#include <QPushButton>
-#include <QCheckBox>
-#include <QRadioButton>
-#include <QSlider>
-#include <QLabel>
-#include <QScreen>
-#include <QPainter>
-#include <QFontComboBox>
-#include <QDebug>
-
-using namespace QtDataVisualization;
-
-const int initialTheme = 4;
-
-int main(int argc, char *argv[])
-{
- QApplication app(argc, argv);
-
- QWidget *widget = new QWidget;
- QHBoxLayout *hLayout = new QHBoxLayout(widget);
- QVBoxLayout *vLayout = new QVBoxLayout();
- vLayout->setAlignment(Qt::AlignTop);
-
- Q3DSurface *surfaceChart = new Q3DSurface();
- QSize screenSize = surfaceChart->screen()->size();
-
- // Set to default, should be same as the initial on themeList
- surfaceChart->setTheme(QDataVis::Theme(initialTheme));
-
- QWidget *container = QWidget::createWindowContainer(surfaceChart);
- container->setMinimumSize(QSize(screenSize.width() / 2, screenSize.height() / 2));
- container->setMaximumSize(screenSize);
- container->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
- container->setFocusPolicy(Qt::StrongFocus);
-
- widget->setWindowTitle(QStringLiteral("Surface tester"));
-
- hLayout->addWidget(container, 1);
- hLayout->addLayout(vLayout);
-
- QCheckBox *smoothCB = new QCheckBox(widget);
- smoothCB->setText(QStringLiteral("Smooth "));
- smoothCB->setChecked(surfaceChart->isSmoothSurfaceEnabled());
-
- QCheckBox *surfaceGridCB = new QCheckBox(widget);
- surfaceGridCB->setText(QStringLiteral("Surface Grid"));
- surfaceGridCB->setChecked(true);
-
- //QCheckBox *sqrtSinCB = new QCheckBox(widget);
- QRadioButton *sqrtSinCB = new QRadioButton(widget);
- sqrtSinCB->setText(QStringLiteral("Sqrt & Sin"));
- sqrtSinCB->setChecked(false);
-
- QRadioButton *planeCB = new QRadioButton(widget);
- planeCB->setText(QStringLiteral("Plane"));
- planeCB->setChecked(false);
-
- QRadioButton *heightMapCB = new QRadioButton(widget);
- heightMapCB->setText(QStringLiteral("Height map"));
- heightMapCB->setChecked(false);
-
- QCheckBox *gridSlidersLockCB = new QCheckBox(widget);
- gridSlidersLockCB->setText(QStringLiteral("Lock"));
- gridSlidersLockCB->setChecked(false);
-
- QSlider *gridSliderX = new QSlider(Qt::Horizontal, widget);
- gridSliderX->setTickInterval(1);
- gridSliderX->setMinimum(2);
- gridSliderX->setValue(30);
- gridSliderX->setMaximum(200);
- gridSliderX->setEnabled(true);
- QSlider *gridSliderZ = new QSlider(Qt::Horizontal, widget);
- gridSliderZ->setTickInterval(1);
- gridSliderZ->setMinimum(2);
- gridSliderZ->setValue(30);
- gridSliderZ->setMaximum(200);
- gridSliderZ->setEnabled(true);
-
- QSlider *axisRangeSliderX = new QSlider(Qt::Horizontal, widget);
- axisRangeSliderX->setTickInterval(1);
- axisRangeSliderX->setMinimum(2);
- axisRangeSliderX->setValue(16);
- axisRangeSliderX->setMaximum(100);
- axisRangeSliderX->setEnabled(true);
- QSlider *axisRangeSliderZ = new QSlider(Qt::Horizontal, widget);
- axisRangeSliderZ->setTickInterval(1);
- axisRangeSliderZ->setMinimum(2);
- axisRangeSliderZ->setValue(16);
- axisRangeSliderZ->setMaximum(100);
- axisRangeSliderZ->setEnabled(true);
-
- QSlider *axisMinSliderX = new QSlider(Qt::Horizontal, widget);
- axisMinSliderX->setTickInterval(1);
- axisMinSliderX->setMinimum(-50);
- axisMinSliderX->setValue(-8);
- axisMinSliderX->setMaximum(50);
- axisMinSliderX->setEnabled(true);
- QSlider *axisMinSliderZ = new QSlider(Qt::Horizontal, widget);
- axisMinSliderZ->setTickInterval(1);
- axisMinSliderZ->setMinimum(-50);
- axisMinSliderZ->setValue(-8);
- axisMinSliderZ->setMaximum(50);
- axisMinSliderZ->setEnabled(true);
-
- QLinearGradient gr(0, 0, 100, 1);
- gr.setColorAt(0.0, Qt::black);
- gr.setColorAt(0.33, Qt::blue);
- gr.setColorAt(0.67, Qt::red);
- gr.setColorAt(1.0, Qt::yellow);
- QPixmap pm(100, 24);
- QPainter pmp(&pm);
- pmp.setBrush(QBrush(gr));
- pmp.setPen(Qt::NoPen);
- pmp.drawRect(0, 0, 100, 24);
- QPushButton *colorPB = new QPushButton();
- colorPB->setIcon(QIcon(pm));
- colorPB->setIconSize(QSize(100, 24));
-
- QFontComboBox *fontList = new QFontComboBox(widget);
- fontList->setCurrentFont(QFont("Arial"));
-
- QPushButton *labelButton = new QPushButton(widget);
- labelButton->setText(QStringLiteral("Change label style"));
-
- QComboBox *themeList = new QComboBox(widget);
- themeList->addItem(QStringLiteral("Qt"));
- themeList->addItem(QStringLiteral("Primary Colors"));
- themeList->addItem(QStringLiteral("Digia"));
- themeList->addItem(QStringLiteral("Stone Moss"));
- themeList->addItem(QStringLiteral("Army Blue"));
- themeList->addItem(QStringLiteral("Retro"));
- themeList->addItem(QStringLiteral("Ebony"));
- themeList->addItem(QStringLiteral("Isabelle"));
- themeList->setCurrentIndex(initialTheme);
-
-// QComboBox *shadowQuality = new QComboBox(widget);
-// shadowQuality->addItem(QStringLiteral("None"));
-// shadowQuality->addItem(QStringLiteral("Low"));
-// shadowQuality->addItem(QStringLiteral("Medium"));
-// shadowQuality->addItem(QStringLiteral("High"));
-// shadowQuality->addItem(QStringLiteral("Low Soft"));
-// shadowQuality->addItem(QStringLiteral("Medium Soft"));
-// shadowQuality->addItem(QStringLiteral("High Soft"));
-// shadowQuality->setCurrentIndex(3);
- QComboBox *selectionMode = new QComboBox(widget);
- selectionMode->addItem(QStringLiteral("SelectionModeNone"));
- selectionMode->addItem(QStringLiteral("SelectionModeItem"));
- selectionMode->addItem(QStringLiteral("SelectionModeSliceRow"));
- selectionMode->addItem(QStringLiteral("SelectionModeSliceColumn"));
- selectionMode->setCurrentIndex(1);
-
- // Add controls to the layout
- vLayout->addWidget(smoothCB);
- vLayout->addWidget(surfaceGridCB);
- vLayout->addWidget(new QLabel(QStringLiteral("Select surface sample")));
- vLayout->addWidget(sqrtSinCB);
- vLayout->addWidget(planeCB);
- vLayout->addWidget(heightMapCB);
- vLayout->addWidget(new QLabel(QStringLiteral("Adjust sample count")));
- vLayout->addWidget(gridSlidersLockCB);
- vLayout->addWidget(gridSliderX);
- vLayout->addWidget(gridSliderZ);
- vLayout->addWidget(new QLabel(QStringLiteral("Adjust axis range")));
- vLayout->addWidget(axisRangeSliderX);
- vLayout->addWidget(axisRangeSliderZ);
- vLayout->addWidget(new QLabel(QStringLiteral("Adjust axis minimum")));
- vLayout->addWidget(axisMinSliderX);
- vLayout->addWidget(axisMinSliderZ);
- vLayout->addWidget(colorPB);
- vLayout->addWidget(new QLabel(QStringLiteral("Change font")));
- vLayout->addWidget(fontList);
- vLayout->addWidget(labelButton);
- vLayout->addWidget(new QLabel(QStringLiteral("Change theme")));
- vLayout->addWidget(themeList);
-// vLayout->addWidget(new QLabel(QStringLiteral("Adjust shadow quality")));
-// vLayout->addWidget(shadowQuality);
- vLayout->addWidget(new QLabel(QStringLiteral("Selection Mode")));
- vLayout->addWidget(selectionMode);
-
- widget->show();
-
- ChartModifier *modifier = new ChartModifier(surfaceChart);
-
- // Connect controls to slots on modifier
- QObject::connect(smoothCB, &QCheckBox::stateChanged,
- modifier, &ChartModifier::toggleSmooth);
- QObject::connect(surfaceGridCB, &QCheckBox::stateChanged,
- modifier, &ChartModifier::toggleSurfaceGrid);
- QObject::connect(sqrtSinCB, &QRadioButton::toggled,
- modifier, &ChartModifier::toggleSqrtSin);
- QObject::connect(planeCB, &QCheckBox::toggled,
- modifier, &ChartModifier::togglePlane);
- QObject::connect(heightMapCB, &QCheckBox::toggled,
- modifier, &ChartModifier::setHeightMapData);
- QObject::connect(gridSlidersLockCB, &QCheckBox::stateChanged,
- modifier, &ChartModifier::toggleGridSliderLock);
- QObject::connect(gridSliderX, &QSlider::valueChanged,
- modifier, &ChartModifier::adjustXCount);
- QObject::connect(gridSliderZ, &QSlider::valueChanged,
- modifier, &ChartModifier::adjustZCount);
- QObject::connect(axisRangeSliderX, &QSlider::valueChanged,
- modifier, &ChartModifier::adjustXRange);
- QObject::connect(axisRangeSliderZ, &QSlider::valueChanged,
- modifier, &ChartModifier::adjustZRange);
- QObject::connect(axisMinSliderX, &QSlider::valueChanged,
- modifier, &ChartModifier::adjustXMin);
- QObject::connect(axisMinSliderZ, &QSlider::valueChanged,
- modifier, &ChartModifier::adjustZMin);
- QObject::connect(colorPB, &QPushButton::pressed,
- modifier, &ChartModifier::gradientPressed);
- QObject::connect(fontList, &QFontComboBox::currentFontChanged,
- modifier, &ChartModifier::changeFont);
- QObject::connect(labelButton, &QPushButton::clicked,
- modifier, &ChartModifier::changeStyle);
- QObject::connect(themeList, SIGNAL(currentIndexChanged(int)),
- modifier, SLOT(changeTheme(int)));
-// QObject::connect(shadowQuality, SIGNAL(currentIndexChanged(int)),
-// modifier, SLOT(changeShadowQuality(int)));
- QObject::connect(selectionMode, SIGNAL(currentIndexChanged(int)),
- modifier, SLOT(changeSelectionMode(int)));
-
- modifier->setGridSliderZ(gridSliderZ);
- modifier->setGridSliderX(gridSliderX);
- modifier->setAxisRangeSliderX(axisRangeSliderX);
- modifier->setAxisRangeSliderZ(axisRangeSliderZ);
- modifier->setAxisMinSliderX(axisMinSliderX);
- modifier->setAxisMinSliderZ(axisMinSliderZ);
- modifier->toggleGridSliderLock(gridSlidersLockCB->checkState());
- sqrtSinCB->setChecked(true);
-
- return app.exec();
-}
diff --git a/examples/surfacechart/surface.qrc b/examples/surfacechart/surface.qrc
deleted file mode 100644
index c18da2c4..00000000
--- a/examples/surfacechart/surface.qrc
+++ /dev/null
@@ -1,5 +0,0 @@
-<RCC>
- <qresource prefix="/maps">
- <file alias="map">Heightmap.png</file>
- </qresource>
-</RCC>
diff --git a/examples/surfacechart/surfacechart.pro b/examples/surfacechart/surfacechart.pro
deleted file mode 100644
index 2ebc90da..00000000
--- a/examples/surfacechart/surfacechart.pro
+++ /dev/null
@@ -1,16 +0,0 @@
-!include( ../examples.pri ) {
- error( "Couldn't find the examples.pri file!" )
-}
-
-SOURCES += main.cpp \
- chartmodifier.cpp
-
-QT += widgets
-
-INSTALLS += target
-
-HEADERS += \
- chartmodifier.h
-
-RESOURCES += \
- surface.qrc