diff options
Diffstat (limited to 'examples/datavisualization/texturesurface/main.cpp')
-rw-r--r-- | examples/datavisualization/texturesurface/main.cpp | 121 |
1 files changed, 0 insertions, 121 deletions
diff --git a/examples/datavisualization/texturesurface/main.cpp b/examples/datavisualization/texturesurface/main.cpp deleted file mode 100644 index fc45247f..00000000 --- a/examples/datavisualization/texturesurface/main.cpp +++ /dev/null @@ -1,121 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the Qt Data Visualization module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:GPL$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 3 or (at your option) any later version -** approved by the KDE Free Qt Foundation. The licenses are as published by -** the Free Software Foundation and appearing in the file LICENSE.GPL3 -** included in the packaging of this file. Please review the following -** information to ensure the GNU General Public License requirements will -** be met: https://www.gnu.org/licenses/gpl-3.0.html. -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "surfacegraph.h" - -#include <QtWidgets/QApplication> -#include <QtWidgets/QWidget> -#include <QtWidgets/QHBoxLayout> -#include <QtWidgets/QVBoxLayout> -#include <QtWidgets/QGroupBox> -#include <QtWidgets/QCheckBox> -#include <QtWidgets/QLabel> -#include <QtWidgets/QMessageBox> -#include <QtGui/QScreen> -#include <QtGui/QPainter> - -int main(int argc, char **argv) -{ - qputenv("QSG_RHI_BACKEND", "opengl"); - QApplication app(argc, argv); - Q3DSurface *graph = new Q3DSurface(); - QWidget *container = QWidget::createWindowContainer(graph); - - if (!graph->hasContext()) { - QMessageBox msgBox; - msgBox.setText("Couldn't initialize the OpenGL context."); - msgBox.exec(); - return -1; - } - - QSize screenSize = graph->screen()->size(); - container->setMinimumSize(QSize(screenSize.width() / 2, screenSize.height() / 1.6)); - container->setMaximumSize(screenSize); - container->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); - container->setFocusPolicy(Qt::StrongFocus); - - QWidget *widget = new QWidget; - QHBoxLayout *hLayout = new QHBoxLayout(widget); - QVBoxLayout *vLayout = new QVBoxLayout(); - hLayout->addWidget(container, 1); - hLayout->addLayout(vLayout); - vLayout->setAlignment(Qt::AlignTop); - - widget->setWindowTitle(QStringLiteral("Textured surface example")); - - QCheckBox *enableTexture = new QCheckBox(widget); - enableTexture->setText(QStringLiteral("Surface texture")); - - int height = 400; - int width = 100; - int border = 10; - QLinearGradient gr(0, 0, 1, height - 2 * border); - gr.setColorAt(1.0f, Qt::black); - gr.setColorAt(0.8f, Qt::darkGreen); - gr.setColorAt(0.6f, Qt::green); - gr.setColorAt(0.4f, Qt::yellow); - gr.setColorAt(0.2f, Qt::red); - gr.setColorAt(0.0f, Qt::darkRed); - - QPixmap pm(width, height); - pm.fill(Qt::transparent); - QPainter pmp(&pm); - pmp.setBrush(QBrush(gr)); - pmp.setPen(Qt::NoPen); - pmp.drawRect(border, border, 35, height - 2 * border); - pmp.setPen(Qt::black); - int step = (height - 2 * border) / 5; - for (int i = 0; i < 6; i++) { - int yPos = i * step + border; - pmp.drawLine(border, yPos, 55, yPos); - pmp.drawText(60, yPos + 2, QString("%1 m").arg(550 - (i * 110))); - } - - QLabel *label = new QLabel(widget); - label->setPixmap(pm); - - QGroupBox *heightMapGroupBox = new QGroupBox(QStringLiteral("Highlight color map")); - QVBoxLayout *colorMapVBox = new QVBoxLayout; - colorMapVBox->addWidget(label); - heightMapGroupBox->setLayout(colorMapVBox); - - vLayout->addWidget(enableTexture); - vLayout->addWidget(heightMapGroupBox); - - widget->show(); - - SurfaceGraph *modifier = new SurfaceGraph(graph); - - QObject::connect(enableTexture, &QCheckBox::stateChanged, - modifier, &SurfaceGraph::toggleSurfaceTexture); - - enableTexture->setChecked(true); - - return app.exec(); -} |