Pipeline graphique
 Tout Structures de données Espaces de nommage Fichiers Fonctions Variables Définitions de type Énumérations Valeurs énumérées Macros
addlight.cpp
Aller à la documentation de ce fichier.
1 #include "addlight.h"
6 AddLight::AddLight(ShaderBase *shader,QWidget *parent) : QDialog(parent)
7 {
8  this->shader = shader;
9  m_pos_x = new QDoubleSpinBox(this);
10  m_pos_x->setMinimum(-100);
11  m_pos_y = new QDoubleSpinBox(this);
12  m_pos_y->setMinimum(-100);
13  m_pos_z = new QDoubleSpinBox(this);
14  m_pos_z->setMinimum(-100);
15 
16  m_intencity = new QSpinBox(this);
17  m_intencity->setMaximum(255);
18 
19  m_col_r = new QSpinBox(this);
20  m_col_r->setMaximum(255);
21  m_col_g = new QSpinBox(this);
22  m_col_g->setMaximum(255);
23  m_col_b = new QSpinBox(this);
24  m_col_b->setMaximum(255);
25 
26  m_OK = new QPushButton("Valider",this);
27  m_Anuller = new QPushButton("Annuller",this);
28 
29  m_power = new QLabel("Intensiter :",this);
30 
31  m_position = new QLabel("Position :",this);
32 
33  m_couleur = new QLabel("Couleur :",this);
34 
35  connect(m_OK,SIGNAL(clicked()),this,SLOT(clickOK()));
36  connect(m_Anuller,SIGNAL(clicked()),this,SLOT(close()));
37 
38  QVBoxLayout *layoutglobal = new QVBoxLayout(this);
39  this->setLayout(layoutglobal);
40 
41  QHBoxLayout *layoutposition = new QHBoxLayout();
42  layoutposition->addWidget(m_pos_x);
43  layoutposition->addWidget(m_pos_y);
44  layoutposition->addWidget(m_pos_z);
45 
46  QHBoxLayout *layoutcouleur = new QHBoxLayout();
47  layoutcouleur->addWidget(m_col_r);
48  layoutcouleur->addWidget(m_col_g);
49  layoutcouleur->addWidget(m_col_b);
50 
51  QHBoxLayout *layoutbouton = new QHBoxLayout();
52  layoutbouton->addWidget(m_OK);
53  layoutbouton->addWidget(m_Anuller);
54 
55  layoutglobal->addWidget(m_position);
56  layoutglobal->addLayout(layoutposition);
57 
58  layoutglobal->addWidget(m_power);
59  layoutglobal->addWidget(m_intencity);
60 
61  layoutglobal->addWidget(m_couleur);
62  layoutglobal->addLayout(layoutcouleur);
63  layoutglobal->addLayout(layoutbouton);
64 
65 
66 }
68 {
69  delete m_position;
70  delete m_pos_x;
71  delete m_pos_y;
72  delete m_pos_z;
73  delete m_power;
74  delete m_intencity;
75  delete m_couleur;
76  delete m_col_r;
77  delete m_col_g;
78  delete m_col_b;
79 
80  delete m_OK;
81  delete m_Anuller;
82 }
83 
89 {
90  Light_Global *var = new Light_Global();
91  var->pos.x = m_pos_x->value();
92  var->pos.y = m_pos_y->value();
93  var->pos.z = m_pos_z->value();
94 
95  var->col.x = m_col_r->value();
96  var->col.y = m_col_g->value();
97  var->col.z = m_col_b->value();
98 
99  var->intensiter = m_intencity->value();
100  var->active = true;
101 
102  this->shader->AddLights(var);
103  this->close();
104 
105 }
QLabel * m_position
Definition: addlight.h:24
QSpinBox * m_col_g
Definition: addlight.h:33
bool active
Pour savoir si la lampe est allumée ou non.
Definition: Light.h:14
QPushButton * m_Anuller
Definition: addlight.h:37
QDoubleSpinBox * m_pos_z
Definition: addlight.h:27
Structure utilisée pour définir une lampe dans la scène.
Definition: Light.h:8
QPushButton * m_OK
Definition: addlight.h:36
unsigned int intensiter
Definition: Light.h:12
ShaderBase * shader
Definition: addlight.h:38
QDoubleSpinBox * m_pos_x
Definition: addlight.h:25
QDoubleSpinBox * m_pos_y
Definition: addlight.h:26
void AddLights(Light_Global *light)
ShaderBase::AddLights(Light_Global * light) Fonction permetant d'ajouter une lampe a la scene...
Definition: ShaderBase.cpp:107
QSpinBox * m_intencity
Definition: addlight.h:29
~AddLight()
Definition: addlight.cpp:67
QLabel * m_power
Definition: addlight.h:28
QLabel * m_couleur
Definition: addlight.h:31
AddLight(ShaderBase *shader, QWidget *parent=0)
AddLight::AddLight() C'est la constructeur de la fenetre qui permet d'ajouter des object...
Definition: addlight.cpp:6
Math::vecteur3d col
Couleur de la lumière émise par la lampe.
Definition: Light.h:11
Math::vecteur3d pos
Position de la lampe.
Definition: Light.h:10
QSpinBox * m_col_b
Definition: addlight.h:34
QSpinBox * m_col_r
Definition: addlight.h:32
void clickOK()
AddLight::clickOK() C'est la slot qui va c'est la structure de lampe et l'ajouter au pipeline et enfi...
Definition: addlight.cpp:88