#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <vtkAutoInit.h>
VTK_MODULE_INIT(vtkRenderingOpenGL2)
VTK_MODULE_INIT(vtkInteractionStyle)
#include <vtkSmartPointer.h>
#include <vtkImageActor.h>
#include <vtkRenderer.h>
#include <vtkJPEGReader.h>
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = nullptr);
~MainWindow();
private slots:
void openFileSlot();
private:
vtkSmartPointer<vtkRenderer> pRenderer0;
vtkSmartPointer<vtkRenderer> pRenderer1;
vtkSmartPointer<vtkRenderer> pRenderer2;
private:
Ui::MainWindow *ui;
};
#endif // MAINWINDOW_H
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QDebug>
#include <QFileDialog>
#include <vtkRenderWindow.h>
#include <vtkPNGReader.h>
#include <vtkImageCanvasSource2D.h>
#include <vtkImageBlend.h>
#include <vtkImageData.h>
#include <vtkImageViewer.h>
#include <vtkRenderWindowInteractor.h>
#include <vtkInteractorStyleImage.h>
#include <vtkImageStencil.h>
#include <vtkImageStencilData.h>
#include <vtkImageLuminance.h>
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
pRenderer0 = vtkSmartPointer<vtkRenderer>::New();
pRenderer0->SetBackground(1, 0, 0);
pRenderer0->SetViewport(0, 0, 0.33, 1);
pRenderer1 = vtkSmartPointer<vtkRenderer>::New();
pRenderer1->SetBackground(0, 1, 0);
pRenderer1->SetViewport(0.33, 0, 0.66, 1);
pRenderer2 = vtkSmartPointer<vtkRenderer>::New();
pRenderer2->SetBackground(0, 0, 1);
pRenderer2->SetViewport(0.66, 0, 1, 1);
ui->qvtkWidget->GetRenderWindow()->AddRenderer