Code_TYMPAN  4.4.0
Industrial site acoustic simulation
TYSiteModelerFrame.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) <2012-2024> <EDF-DTG> <FRANCE>
3  * This file is part of Code_TYMPAN (R).
4  * Code_TYMPAN (R) is free software: you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License as published by
6  * the Free Software Foundation, either version 3 of the License, or
7  * (at your option) any later version.
8  * Code_TYMPAN (R) is distributed in the hope that it will be useful,
9  * but WITHOUT ANY WARRANTY; without even the implied warranty of
10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
11  * See the GNU General Public License for more details.
12  * You should have received a copy of the GNU General Public License along
13  * with Code_TYMPAN (R). If not, see <https://www.gnu.org/licenses/>.
14  */
15 
25 #ifndef __TY_SITE_MODELER_FRAME__
26 #define __TY_SITE_MODELER_FRAME__
27 
28 #include "TYModelerFrame.h"
30 
31 class QToolButton;
32 class QComboBox;
33 
39 {
40  Q_OBJECT
41 
42 public:
47  {
52  };
53 
57  TYSiteModelerFrame(QWidget* parent = 0, const char* name = 0, Qt::WindowFlags f = Qt::SubWindow);
61  TYSiteModelerFrame(LPTYProjet pProjet, QWidget* parent = 0, const char* name = 0,
62  Qt::WindowFlags f = QFlag(0));
66  TYSiteModelerFrame(LPTYSiteNode pSite, QWidget* parent = 0, const char* name = 0,
67  Qt::WindowFlags f = QFlag(0));
71  virtual ~TYSiteModelerFrame();
72 
77  void setProjet(LPTYProjet pProjet);
83  {
84  return _pProjet;
85  }
86 
90  void setSite(LPTYSiteNode pSite);
95  {
96  return _pSite;
97  }
98 
103  {
104  return _showCrbNiv;
105  }
106 
111 
114  {
139  SilosMode
140  };
141 
143 
144 public slots:
145  virtual void setViewType(int view);
146  virtual void setEditorMode(int mode);
147  virtual void updateView(bool clipping = true, bool axesAndGrid = true);
148  virtual void updatePreferences();
149  virtual bool close();
150 
154  int getMaillageRenderMode();
159  void showCrbNiv(bool show);
160 
164  void enableAltimetrieButton(bool enable);
165 
170  void showAltimetrie(bool show);
171 
175  bool isImageSiteShown();
180  void showImageSite(bool show);
181 
185  void calculAltimetrie();
186 
191  void updateAltiOpacity(int view = -1);
192 
196  virtual void setMaillageRenderModeSlot();
197 
201  virtual void setSelectMaillageBox(const QString& name);
202 
203 protected:
207  void init();
208 
209  virtual float getDefaultZCoord();
210 
216 
217 protected:
222 
223  // To compute altimetry
224  QToolButton* _pAltiBtn;
226  QToolButton* _pShowCrbNivBtn;
229 
231  QToolButton* _pShowAltimetrieBtn;
234 
236  QToolButton* _pShowImageSiteBtn;
239 
242 
245 
246  // Editors.
254 #if WITH_NMPB
255  TYRouteEditor* _pRouteEditor;
256 #endif
267 
269  static int _nbInstance;
270 };
271 
272 #endif //__TY_SITE_MODELER_FRAME__
Classe generique pour une fenetre de modeleur (fichier header)
const char * name
Creation of a TYBoundaryNoiseMap.
Construit une courbe de niveau a partir des points saisis.
Construit un CoursEau a partir des points saisis.
gestion de l'edition de l'echelle
Construit l'emprise a partir des points saisis.
Construit un etage a partir des points saisis.
Definition: TYEtageEditor.h:51
Indique si cet editor est actif.
Generic class for a modeler window.
edition de l'orientation
Construit un plan d'eau a partir des points saisis.
gestion de l'edition d'un point de calcul
gestion de l'edition des points de reference pour le placement des images de fond
gestion de l'edition d'un maillage rectangulaire
Construit un reseau de transport a partir des points saisis.
Construit une route a partir des points saisis.
Definition: TYRouteEditor.h:34
gestion de l'edition d'un silo
Definition: TYSilosEditor.h:36
Classe Modeler specialisee pour l'edition des sites.
TYPointRefEditor * _pPointRefEditor
static int _nbInstance
Nombre d'instance de type TYSiteModelerFrame.
TYPlanEauEditor * _pPlanEauEditor
TYBoundaryNoiseMapEditor * _pBoundaryNoiseMapEditor
TYVerticalMaillageEditor * _pVerticalMaillageEditor
TYCourbeNiveauEditor * _pCourbeNiveauEditor
QComboBox * _pMaillageRenderModeBox
Combo box pour le mode de rendu.
QToolButton * _pShowImageSiteBtn
Bouton pour l'affichage de l'image de site.
virtual void updatePreferences()
TYSilosEditor * _pSilosEditor
virtual void setEditorMode(int mode)
bool _showAltimetrie
Indique si on affiche ou masque l'altimetrie.
virtual void setSelectMaillageBox(const QString &name)
TYSiteModelerFrame(QWidget *parent=0, const char *name=0, Qt::WindowFlags f=Qt::SubWindow)
void setProjet(LPTYProjet pProjet)
LPTYProjet _pProjet
Un pointeur sur le projet a editer.
TYRenderContext createRenderContext() override
TYEchelleEditor * _pEchelleEditor
QToolButton * _pShowAltimetrieBtn
Bouton pour l'affichage de l'altimetrie.
TYPointCalculEditor * _pPointCalculEditor
virtual void setMaillageRenderModeSlot()
TYEtageEditor * _pEtageEditor
LPTYSiteNode getSite()
TYOrientationEditor * _pOrientationEditor
TYEmpriseEditor * _pEmpriseEditor
virtual void setViewType(int view)
TYCoursEauEditor * _pCoursEauEditor
LPTYSiteNode _pSite
Un pointeur sur le site a editer.
bool _showImageSite
Indique si on affiche ou masque l'image de site.
bool _showCrbNiv
Indique si on affiche ou masque les courbes de niveau.
QToolButton * _pShowCrbNivBtn
Bouton pour l'affichage des courbes de niveau.
TYRectangularMaillageEditor * _pRectangularMaillageEditor
void updateAltiOpacity(int view=-1)
void showAltimetrie(bool show)
void showImageSite(bool show)
void setSite(LPTYSiteNode pSite)
TYReseauTransportEditor * _pReseauTransportEditor
SiteModelerMode
Les differents modes d'edition d'un site.
QComboBox * _pSelectMaillageBox
Combo box pour le choix du maillage.
TYTerrainEditor * _pTerrainEditor
virtual float getDefaultZCoord()
Returns default Z coordinate for editors This value will depend on the type of modeler and of the fix...
TYLinearMaillageEditor * _pLinearMaillageEditor
void showCrbNiv(bool show)
TYSourceEditor * _pSourceEditor
void enableAltimetrieButton(bool enable)
virtual void updateView(bool clipping=true, bool axesAndGrid=true)
gestion de l'edition d'une source
Gestion de l'edition d'un maillage verticale.