Code_TYMPAN  4.4.0
Industrial site acoustic simulation
TYMur.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) <2012> <EDF-R&D> <FRANCE>
3  * This program is free software; you can redistribute it and/or modify
4  * it under the terms of the GNU General Public License as published by
5  * the Free Software Foundation; either version 2 of the License, or
6  * (at your option) any later version.
7  * This program is distributed in the hope that it will be useful,
8  * but WITHOUT ANY WARRANTY; without even the implied warranty of
9  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
10  * See the GNU General Public License for more details.
11  * You should have received a copy of the GNU General Public License along
12  * with this program; if not, write to the Free Software Foundation, Inc.,
13  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
14  */
15 
16 /*
17  *
18  *
19  *
20  *
21  */
22 
23 #ifndef __TY_MUR__
24 #define __TY_MUR__
25 
26 class OPoint3D;
27 class OSegment3D;
28 
30 #include "TYParoi.h"
31 
36 {
40 
41  // Methodes
42 public:
46  TYMur();
50  TYMur(const TYMur& other);
54  virtual ~TYMur();
55 
57  TYMur& operator=(const TYMur& other);
59  bool operator==(const TYMur& other) const;
61  bool operator!=(const TYMur& other) const;
62 
71  virtual bool deepCopy(const TYElement* pOther, bool copyId = true, bool pUseCopyTag = false);
72 
73  virtual std::string toString() const;
74 
75  virtual DOM_Element toXML(DOM_Element& domElement);
76  virtual int fromXML(DOM_Element domElement);
77 
78  virtual TYTabSourcePonctuelleGeoNode getSrcs() const;
79  virtual TYSourcePonctuelle srcPonctEquiv() const;
80  virtual void distriSrcs();
81  virtual bool setSrcsLw();
82  virtual void remAllSrcs();
83 
84  virtual double surface() const;
85  virtual int intersects(const TYSurfaceInterface* pSurf, OSegment3D& seg) const;
86  virtual int intersects(const OSegment3D& seg, OPoint3D& pt) const;
87 
88  virtual bool makeGrid(int nbCol, int nbRow);
89  virtual void updateGrid();
90 
100  bool abso(const TYPoint& pt, TYSpectre& spectre) const;
101 
111  bool transm(const TYPoint& pt, TYSpectre& spectre) const;
112 
116  TYParoi* getParoi() const
117  {
118  return _pParoi._pObj;
119  }
120 
124  void setParoi(const LPTYParoi pParoi);
125 
129  void setParoiLocked(const bool& bVal);
131  {
132  return _bParoiLocked;
133  }
134  const bool isParoiLocked() const
135  {
136  return _bParoiLocked;
137  }
138 
145 
146  // Membres
147 
148 protected:
154 
160 };
161 
167 typedef std::vector<LPTYMurGeoNode> TYTabMurGeoNode;
168 
169 #endif // __TY_MUR__
QDomElement DOM_Element
Definition: QT2DOM.h:30
#define TY_EXT_GRAPHIC_DECL_ONLY(classname)
Definition: TYElement.h:432
#define OPROTODECL(classname)
Definition: TYElement.h:65
#define TY_EXTENSION_DECL_ONLY(classname)
Definition: TYElement.h:386
SmartPtr< TYMurGeoNode > LPTYMurGeoNode
Smart Pointer sur TYMurGeoNode.
Definition: TYMur.h:165
std::vector< LPTYMurGeoNode > TYTabMurGeoNode
Collection de noeuds geometriques de type TYMur.
Definition: TYMur.h:167
TYGeometryNode TYMurGeoNode
Noeud geometrique de type TYMur.
Definition: TYMur.h:163
std::vector< LPTYSourcePonctuelleGeoNode > TYTabSourcePonctuelleGeoNode
Collection de noeuds geometriques de type TYSourcePonctuelle.
The 3D point class.
Definition: 3d.h:487
Class to define a segment.
Definition: 3d.h:1089
T * _pObj
The real pointer, must derived IRefCount.
Definition: smartptr.h:307
Definition: TYMur.h:36
bool abso(const TYPoint &pt, TYSpectre &spectre) const
Definition: TYMur.cpp:204
virtual bool deepCopy(const TYElement *pOther, bool copyId=true, bool pUseCopyTag=false)
Definition: TYMur.cpp:109
void setParoi(const LPTYParoi pParoi)
Definition: TYMur.cpp:216
TYMateriauConstruction * getMateriau()
Surcharge de la methode getMateriau pour la dalle.
Definition: TYMur.cpp:248
const bool isParoiLocked() const
Definition: TYMur.h:134
virtual bool setSrcsLw()
Definition: TYMur.cpp:184
TYMur & operator=(const TYMur &other)
Operateur =.
Definition: TYMur.cpp:77
TYMur()
Definition: TYMur.cpp:30
virtual void updateGrid()
Definition: TYMur.cpp:130
bool transm(const TYPoint &pt, TYSpectre &spectre) const
Definition: TYMur.cpp:210
virtual void remAllSrcs()
Definition: TYMur.cpp:238
virtual int fromXML(DOM_Element domElement)
Definition: TYMur.cpp:150
bool isParoiLocked()
Definition: TYMur.h:130
virtual std::string toString() const
Definition: TYMur.cpp:135
void setParoiLocked(const bool &bVal)
Definition: TYMur.cpp:228
virtual DOM_Element toXML(DOM_Element &domElement)
Definition: TYMur.cpp:140
virtual double surface() const
Definition: TYMur.cpp:189
virtual ~TYMur()
Definition: TYMur.cpp:75
virtual void distriSrcs()
Definition: TYMur.cpp:179
virtual int intersects(const TYSurfaceInterface *pSurf, OSegment3D &seg) const
Definition: TYMur.cpp:194
LPTYParoi _pParoi
Definition: TYMur.h:153
virtual TYTabSourcePonctuelleGeoNode getSrcs() const
Definition: TYMur.cpp:169
virtual TYSourcePonctuelle srcPonctEquiv() const
Definition: TYMur.cpp:174
TYParoi * getParoi() const
Definition: TYMur.h:116
bool operator!=(const TYMur &other) const
Operateur !=.
Definition: TYMur.cpp:104
bool _bParoiLocked
Definition: TYMur.h:159
virtual bool makeGrid(int nbCol, int nbRow)
Definition: TYMur.cpp:125
bool operator==(const TYMur &other) const
Operateur ==.
Definition: TYMur.cpp:88