Pipeline graphique
 Tout Structures de données Espaces de nommage Fichiers Fonctions Variables Définitions de type Énumérations Valeurs énumérées Macros
mainwindow.h
Aller à la documentation de ce fichier.
1 #ifndef MAINWINDOW_H
2 #define MAINWINDOW_H
3 
4 #include <QMainWindow>
5 #include <QImage>
6 #include <QLabel>
7 #include <QAction>
8 #include <QMenuBar>
9 #include <QTimer>
10 #include <QDebug>
11 #include <QEvent>
12 #include <QKeyEvent>
13 #include "Pipeline.h"
14 #include "Object.h"
15 #include "ShaderBase.h"
16 #include "ShaderGoureau.h"
17 #include "ShaderPhong.h"
18 #include "modelloader/PlyLoader.h"
19 
20 #include "addobject.h"
21 #include "addlight.h"
22 #include "widgetimage.h"
23 
24 class MainWindow : public QMainWindow
25 {
26  Q_OBJECT
27 
28 public:
29  MainWindow(QWidget *parent = 0);
30  ~MainWindow();
31 
32 
33  bool event(QEvent *event);
34 
35 private slots:
36  void openaddobject();
37  void openaddligth();
38  void exportimage();
39  void ChangeShadertoGoureau();
40  void ChangeShadertoPhong();
41  void ChangeViewPoint();
42  void ChangeViewMaille();
43  void ChangeViewRemplisage();
44  void ChangeDoCulling();
45  void ChangeDoCliping();
46  void exportimagezbuffer();
47  void rend();
48 private:
49  QImage *render;
52 
54  QAction *m_menu_quiter;
55  QAction *m_menu_addobject;
56  QAction *m_menu_addligth;
57  QAction *m_menu_save;
58 
60 
61  QAction *m_menu_Phong;
62  QAction *m_menu_Goureau;
63 
64  QAction *m_menu_point;
65  QAction *m_menu_maille;
67 
68  QAction *m_menu_culling;
69  QAction *m_menu_cliping;
70 
74  QVector<BaseObject*> *object;
76 
77 };
78 
79 #endif // MAINWINDOW_H
bool event(QEvent *event)
MainWindow::event(QEvent *event) Permet de gerer les evenement dans l'aplication notament les touche ...
Definition: mainwindow.cpp:316
QAction * m_menu_maille
Definition: mainwindow.h:65
QImage * render
Definition: mainwindow.h:49
QVector< BaseObject * > * object
Definition: mainwindow.h:74
void ChangeDoCliping()
MainWindow::ChangeDoCliping() Permet de changer si on fait du cliping ou pas.
Definition: mainwindow.cpp:295
void exportimage()
MainWindow::exportimage() Permet d'ouvrir une fenetre pour exporter l'image de rendu final...
Definition: mainwindow.cpp:173
Camera Cam
Definition: mainwindow.h:51
ShaderBase * shader
Definition: mainwindow.h:53
QAction * m_menu_Phong
Definition: mainwindow.h:61
vecteur3d * Up
Definition: mainwindow.h:73
~MainWindow()
MainWindow::~MainWindow() Destructeur de la fenetre principale, suprimme tout les ellement allouer dy...
Definition: mainwindow.cpp:132
QAction * m_menu_point
Definition: mainwindow.h:64
void exportimagezbuffer()
MainWindow::exportimagezbuffer() Permet d'ouvrir une fenetre pour exporter l'image de zbuffer...
Definition: mainwindow.cpp:186
QAction * m_menu_cliping
Definition: mainwindow.h:69
void ChangeViewRemplisage()
MainWindow::ChangeViewRemplisage() Permet d'afficher ou pas le remplisage et deffectuer après un rend...
Definition: mainwindow.cpp:277
QAction * m_menu_save_zbuffer
Definition: mainwindow.h:59
widgetimage * afficheur
Definition: mainwindow.h:75
Definition: Camera.h:7
void ChangeDoCulling()
MainWindow::ChangeDoCulling() Permet de changer si on fait du culling ou pas.
Definition: mainwindow.cpp:286
void ChangeShadertoGoureau()
MainWindow::ChangeShadertoGoureau() Permet de changer le shader du pipeline en shader de goureau...
Definition: mainwindow.cpp:199
QAction * m_menu_remplissage
Definition: mainwindow.h:66
void ChangeShadertoPhong()
MainWindow::ChangeShadertoPhong() Permet de changer le shader du pipeline en shader de phong...
Definition: mainwindow.cpp:229
void openaddobject()
MainWindow::openaddobject() Permet d'afficher une fenetre pour ajouter un object dans la scene Une fo...
Definition: mainwindow.cpp:305
QAction * m_menu_Goureau
Definition: mainwindow.h:62
Classe de gestion du pipeline.
Definition: Pipeline.h:11
void openaddligth()
MainWindow::openaddligth() Permet d'ouvrir une fenetre pour ajouter une lampe.
Definition: mainwindow.cpp:162
Pipeline * pipeline
Definition: mainwindow.h:50
void ChangeViewPoint()
MainWindow::ChangeViewPoint() Permet d'afficher ou pas les point et deffectuer après un rendu...
Definition: mainwindow.cpp:257
void rend()
MainWindow::rend() Permet d'effectuer un rendu et de metre a jour le widget d'affichage.
Definition: mainwindow.cpp:372
vecteur3d * Pos
Definition: mainwindow.h:71
MainWindow(QWidget *parent=0)
MainWindow::MainWindow(QWidget *parent) Construit la fenetre principale.
Definition: mainwindow.cpp:12
QAction * m_menu_save
Definition: mainwindow.h:57
void ChangeViewMaille()
MainWindow::ChangeViewMaille() Permet d'afficher ou pas le mailliage et deffectuer après un rendu...
Definition: mainwindow.cpp:268
vecteur3d * At
Definition: mainwindow.h:72
QAction * m_menu_quiter
Definition: mainwindow.h:54
QAction * m_menu_addligth
Definition: mainwindow.h:56
QAction * m_menu_addobject
Definition: mainwindow.h:55
QAction * m_menu_culling
Definition: mainwindow.h:68