Code_TYMPAN
4.2.0
Industrial site acoustic simulation
|
#include <TYAcousticVolume.h>
Public Member Functions | |
TYAcousticVolume () | |
TYAcousticVolume (const TYAcousticVolume &other) | |
virtual | ~TYAcousticVolume () |
TYAcousticVolume & | operator= (const TYAcousticVolume &other) |
Operateur =. More... | |
bool | operator== (const TYAcousticVolume &other) const |
Operateur ==. More... | |
bool | operator!= (const TYAcousticVolume &other) const |
Operateur !=. More... | |
virtual bool | deepCopy (const TYElement *pOther, bool copyId=true, bool pUseCopyTag=false) |
virtual std::string | toString () const |
virtual DOM_Element | toXML (DOM_Element &domElement) |
virtual int | fromXML (DOM_Element domElement) |
virtual void | setIsAcousticModified (bool isModified) |
virtual void | propagateRegime () |
virtual void | propagateAtt (LPTYAttenuateur pAtt) |
virtual TYTabSourcePonctuelleGeoNode | getSrcs () const |
virtual TYSourcePonctuelle | srcPonctEquiv () const |
virtual void | distriSrcs () |
virtual void | remAllSrcs () |
virtual bool | setSrcsLw () |
virtual bool | updateAcoustic (const bool &force=false) |
virtual double | volume () const |
virtual double | surface () const |
virtual double | activeSurface () const |
virtual double | activeSurface () |
virtual TYTabVector | normals () const |
virtual TYTabPoint | sommets () const |
virtual TYTabLPPolygon | faces () const |
virtual TYBox | volEnglob () const |
virtual TYPoint | centreGravite () const |
virtual int | intersects (const TYSegment &seg, TYTabPoint &ptList) const |
virtual int | isInside (const TYPoint &pt) const |
virtual void | setIsRayonnant (bool rayonnant=true, bool recursif=true) |
virtual TYTabLPAcousticSurface | getSubFace () |
virtual TYTabAcousticSurfaceGeoNode | acousticFaces () |
virtual bool | findAcousticSurface (const TYAcousticSurface *pAccSurf, OMatrix *pMatrix=0) |
virtual TYSpectre | setGlobalLW (const TYSpectre &spectre, const double &surfGlobale, const int ®ime=-1) |
TYMateriauConstruction * | getMateriau () const |
void | setMateriau (LPTYMateriauConstruction pMat) |
virtual void | setNextRegimeNb (const int &next) |
virtual void | setRegimeName (const QString &name) |
virtual void | inverseNormales () |
void | setNormalStatus () |
virtual void | correctNbRegimes () |
Public Member Functions inherited from TYElement | |
void * | getAllUses () |
void | setAllUses (void *allUses) |
void | cleanAllUses () |
TYElement () | |
TYElement (TYElement *pParent, bool PutInInstanceList=true) | |
TYElement (const TYElement &other, bool PutInInstanceList=true) | |
virtual | ~TYElement () |
void | setID (TYUUID id) |
void | setID (const QString &str_id) |
const TYUUID & | getID () const |
QString | getStringID () const |
bool | hasNullID () const |
void | regenerateID () |
void | setName (QString name) |
void | setName (std::string name) |
virtual QString | getName () const |
void | setParent (TYElement *pParent) |
TYElement * | getParent () const |
bool | getIsAcousticModified () |
virtual void | setIsGeometryModified (bool isModified) |
bool | getIsGeometryModified () |
TYElement & | operator= (const TYElement &other) |
bool | operator== (const TYElement &other) const |
bool | operator!= (const TYElement &other) const |
bool | callFromXMLIfEqual (DOM_Element &domElement, int *pRetVal=NULL) |
std::string | getMetierName () |
virtual void | updateCurrentCalcul (TYListID &listID, bool recursif=true) |
virtual void | getChilds (LPTYElementArray &childs, bool recursif=true) |
virtual void | setInCurrentCalcul (bool state, bool recurschild=true, bool recursparent=true) |
virtual bool | isInCurrentCalcul () |
void | addCopy () |
Increment le compteur de nombre de copies. More... | |
void | setCopyCount (const unsigned int copyCount) |
Modifie la vaeur du compteur. More... | |
Public Member Functions inherited from IRefCount | |
IRefCount () | |
virtual | ~IRefCount () |
virtual int | incRef () |
virtual int | decRef () |
int | getRefCount () const |
Public Member Functions inherited from OPrototype | |
virtual | ~OPrototype () |
virtual OPrototype * | clone () const =0 |
virtual const char * | getClassName () const |
bool | isA (const char *className) const |
Public Member Functions inherited from TYColorInterface | |
virtual void | updateColor () |
TYColorInterface () | |
TYColorInterface (const TYColorInterface &other) | |
virtual | ~TYColorInterface () |
TYColorInterface & | operator= (const TYColorInterface &other) |
bool | operator== (const TYColorInterface &other) const |
bool | operator!= (const TYColorInterface &other) const |
void | deepCopy (const TYColorInterface *pOther, bool copyId=true, bool pUseCopyTag=false) |
DOM_Element | toXML (DOM_Element &domElement) |
int | fromXML (DOM_Element domElement) |
virtual void | setColor (const OColor &color) |
OColor | getColor () const |
Public Member Functions inherited from TYAcousticInterface | |
virtual int | getNextRegimeNb () |
virtual const int | getNextRegimeNb () const |
virtual QString | getRegimeName () |
virtual const QString | getRegimeName () const |
virtual void | exportCSV (std::ofstream &ofs) |
Export au format csv sur un flux transmis. More... | |
TYAcousticInterface () | |
TYAcousticInterface (const TYAcousticInterface &other) | |
virtual | ~TYAcousticInterface () |
TYAcousticInterface & | operator= (const TYAcousticInterface &other) |
bool | operator== (const TYAcousticInterface &other) const |
bool | operator!= (const TYAcousticInterface &other) const |
void | deepCopy (const TYAcousticInterface *pOther, bool copyId=true, bool pUseCopyTag=false) |
DOM_Element | toXML (DOM_Element &domElement) |
int | fromXML (DOM_Element domElement) |
double | getDensiteSrcsH () const |
virtual void | setDensiteSrcsH (double densite, bool recursif=true) |
double | getDensiteSrcsV () const |
virtual void | setDensiteSrcsV (double densite, bool recursif=true) |
double | getDensiteSrcs () const |
virtual void | setDensiteSrcs (double densite, bool recursif=true) |
bool | getIsRayonnant () |
int | getTypeDistribution () const |
void | setTypeDistribution (int typeDistri) |
bool | getUseAtt () const |
virtual void | setUseAtt (bool state) |
LPTYAttenuateur | getAtt () |
const LPTYAttenuateur | getAtt () const |
void | setAtt (LPTYAttenuateur pAtt) |
TYSpectre & | getCurrentSpectre () |
virtual void | setRegime (TYSpectre &Spectre, int regime=-1, bool recursif=false) |
virtual int | addRegime (const TYRegime ®ime) |
virtual int | addRegime () |
virtual bool | remRegime (int regime) |
virtual void | loadRegime (int regimeNb=-1) |
size_t | getNbRegimes () const |
void | setNbRegimes (unsigned int nb) |
TYRegime & | getRegimeNb (const int &nb, bool &status) |
const TYRegime & | getRegimeNb (const int &nb, bool &status) const |
int | getCurRegime () const |
virtual void | setCurRegime (int regimeNumber) |
virtual TYRegime | buildRegime () |
virtual void | updateCurrentRegime () |
bool | getIsRegimeChangeAble () |
Public Member Functions inherited from TYVolumeInterface | |
TYVolumeInterface () | |
virtual | ~TYVolumeInterface () |
virtual void | updateVolEnglob () |
const TYBox & | getVolEnglob () const |
const double & | getRayonSphere () const |
void | calculRayonSphere (const TYBox &volEnglob) |
virtual void | calculCentreGravite () |
const TYPoint & | getCentreGravite () const |
virtual int | intersects (const OSegment3D &seg, TYTabPoint &ptList) const |
Protected Attributes | |
LPTYMateriauConstruction | _pMateriau |
Materiau de contruction pour les faces de ce Volume. More... | |
bool | _forceNormales |
Persistence du forcage des normales. More... | |
Protected Attributes inherited from TYElement | |
QString | _name |
Nom courant de l'element. More... | |
TYElement * | _pParent |
Reference sur l'element parent. More... | |
bool | _bPutInInstanceList |
unsigned int | _copyCount |
bool | _inCurrentCalcul |
Indique si cet element est actif dans le Calcul courant. More... | |
bool | _isAcousticModified |
Indicateur de modification acoustique. More... | |
bool | _isGeometryModified |
Indicateur de modification de la geometrie. More... | |
LPTYElementGraphic | _pGraphicObject |
L'object graphique metier associe a cet element. More... | |
void * | _allUses |
Multi purpose void pointer (use for compatibility actually) More... | |
Protected Attributes inherited from IRefCount | |
int | m_refCount |
The reference counter. More... | |
Protected Attributes inherited from TYColorInterface | |
OColor | _color |
Protected Attributes inherited from TYAcousticInterface | |
double | _densiteSrcsH |
Densite horizontale de sources. More... | |
double | _densiteSrcsV |
Densite verticale de sources. More... | |
double | _offsetSources |
Offset de decalage des sources ponctuelles sur les surfaces. More... | |
bool | _isRayonnant |
Etat courant de l'element (rayonnant ou non rayonnant) More... | |
bool | _regimeChangeAble |
Indique si un element peux changer de regime de lui meme. More... | |
int | _typeDistribution |
Indique le type de distribution a utiliser. pour l'etat courant. More... | |
int | _curRegime |
Numero du regime de fonctionnement courant. More... | |
int | _nextRegime |
Numero d'ordre du regime suivant. More... | |
TYSpectre | _pCurrentSpectre |
bool | _useAtt |
Indique l'utilisation d'un attenuateur pour l'etat courant. More... | |
LPTYAttenuateur | _pAtt |
Attenuateur de l'etat courant. More... | |
TYTabRegimes | _tabRegimes |
Tableau des regimes de fonctionnement. More... | |
Protected Attributes inherited from TYVolumeInterface | |
TYBox | _volEnglob |
double | _rayonSphere |
TYPoint | _centreGravite |
Additional Inherited Members | |
Public Types inherited from TYAcousticInterface | |
enum | TypeDistribution { TY_PUISSANCE_CALCULEE, TY_PUISSANCE_IMPOSEE } |
Static Public Member Functions inherited from TYElement | |
static LPTYElementArray | findTypeCollectionAndCallFromXML (DOM_Element parentElem, const char *type) |
static void | setLogInstances (bool log) |
static bool | getLogInstances () |
static TYElement * | getInstance (TYUUID uuid) |
static void | purgeInstances () |
static bool | testId (const TYUUID &id, const TYElement *pElem) |
static TYUUID | newID () |
static TYUUID | fromString (QString id) |
static QString | toString (TYUUID &uuid) |
static uint64 | getConstructorCount () |
static uint64 | getDestructorCount () |
static uint64 | getIdGenerationCount () |
static bool | getIsSavedOk () |
static void | setIsSavedOk (const bool &toSave) |
static void | setRegenerateID (const bool &bRegenerate) |
static bool | getRegenerateID () |
Static Public Member Functions inherited from OPrototype | |
static OPrototype * | findAndClone (const char *className) |
static int | findPrototype (const char *className) |
static OPrototype * | safeDownCast (OPrototype *pObject) |
static void | add_factory (const char *, IOProtoFactory::ptr_type factory) |
Protected Member Functions inherited from OPrototype | |
OPrototype () | |
Permet de creer de elements acoustiques volumiques.
Definition at line 34 of file TYAcousticVolume.h.
TYAcousticVolume::TYAcousticVolume | ( | ) |
Constructeur.
Definition at line 25 of file TYAcousticVolume.cpp.
TYAcousticVolume::TYAcousticVolume | ( | const TYAcousticVolume & | other | ) |
Constructeur par copie.
Definition at line 33 of file TYAcousticVolume.cpp.
|
virtual |
Destructeur.
Definition at line 38 of file TYAcousticVolume.cpp.
|
virtual |
Retourne l'ensemble des faces acoustiques composant ce volume. Le GeoNode associe permet de convertir la face dans le repere de ce volume.
Reimplemented in TYAcousticBox, TYEtage, TYAcousticFaceSet, TYAcousticSemiCylinder, TYAcousticCylinder, and TYEcran.
Definition at line 283 of file TYAcousticVolume.cpp.
|
virtual |
Calcule la surface active de la machine (somme des surfaces des elements actifs)
Implements TYVolumeInterface.
Reimplemented in TYEtage, TYAcousticBox, TYAcousticSemiCylinder, TYAcousticCylinder, and TYAcousticFaceSet.
Definition at line 237 of file TYAcousticVolume.cpp.
|
virtual |
Implements TYVolumeInterface.
Reimplemented in TYAcousticBox, TYAcousticSemiCylinder, TYAcousticCylinder, and TYAcousticFaceSet.
Definition at line 242 of file TYAcousticVolume.cpp.
|
virtual |
Calcule le centre de gravite de ce volume.
Implements TYVolumeInterface.
Reimplemented in TYAcousticBox, TYEtage, TYAcousticSemiCylinder, TYAcousticCylinder, and TYAcousticFaceSet.
Definition at line 268 of file TYAcousticVolume.cpp.
|
virtual |
Correction "ad hoc" du bug de nombre de regime pour les sources machines et bâtiments Supprime les regimes excedentaires Necessaire uniquement pour les anciennes versions de fichiers XML (retrocompatibilite)
Definition at line 166 of file TYAcousticVolume.cpp.
|
virtual |
Effectue une copie en allouant de la memoire (deep copy) et non pas en copiant seulement les pointeurs (shallow copy). Cette methode s'utilise comme l'operateur egal. L'ID peut ne pas etre copie, le parent n'est jamais copie.
pOther | L'element a copier. |
copyId | Copie l'identifiant unique ou pas. |
true
si la copie est possible; false
sinon. Reimplemented from TYElement.
Reimplemented in TYAcousticBox, TYEtage, TYEcran, TYAcousticFaceSet, TYAcousticSemiCylinder, and TYAcousticCylinder.
Definition at line 74 of file TYAcousticVolume.cpp.
|
virtual |
Calcul la repartition des sources ponctuelles pour cet element en fonction des densites etablies.
Implements TYAcousticInterface.
Reimplemented in TYEtage, TYAcousticBox, TYAcousticSemiCylinder, TYAcousticCylinder, and TYAcousticFaceSet.
Definition at line 209 of file TYAcousticVolume.cpp.
|
virtual |
Retourne l'ensemble des faces (polygones) composant ce volume.
Implements TYVolumeInterface.
Reimplemented in TYAcousticBox, TYEtage, TYAcousticSemiCylinder, TYAcousticCylinder, and TYAcousticFaceSet.
Definition at line 258 of file TYAcousticVolume.cpp.
|
virtual |
Recherche si une face acoustique compose directement ou indirectement ce volume acoustique. Si une matrice est passee en parametre elle sera calculee pour effectuer le changement de repere de la face vers le volume.
pAccSurf | La surface acoustique a rechercher. |
pMatrix | La matrice a mettre a jour. |
true
si la face est un composant de ce volume; false
sinon. Reimplemented in TYAcousticFaceSet, TYAcousticBox, TYEtage, TYAcousticSemiCylinder, and TYAcousticCylinder.
Definition at line 288 of file TYAcousticVolume.cpp.
|
virtual |
Extrait les informations a partir du noeud DOM passe afin de recuperer les parametres de la classe.
domElement | Le noeud DOM a partir duquel les parametres doivent etre recuperes. |
Reimplemented from TYElement.
Reimplemented in TYAcousticBox, TYEtage, TYEcran, TYAcousticFaceSet, TYAcousticSemiCylinder, and TYAcousticCylinder.
Definition at line 109 of file TYAcousticVolume.cpp.
|
inline |
Set/Get du materiau de construction pour les faces de ce Volume.
Definition at line 132 of file TYAcousticVolume.h.
|
virtual |
Retourne l'ensemble des sources ponctuelles dont est compose cet objet. Chaque source se trouve dans un GeoNode, ainsi la matrice de celui-ci permet d'effectuer le changement de repere de la position de la source dans le repere local a cet objet.
Implements TYAcousticInterface.
Reimplemented in TYEtage, TYAcousticBox, TYAcousticSemiCylinder, TYAcousticCylinder, and TYAcousticFaceSet.
Definition at line 199 of file TYAcousticVolume.cpp.
|
virtual |
Retourne une liste des sous faces porteuses de sources cheminee ou bafflees
Reimplemented in TYAcousticBox, TYAcousticCylinder, TYAcousticSemiCylinder, and TYAcousticFaceSet.
Definition at line 308 of file TYAcousticVolume.cpp.
|
virtual |
Reimplemented in TYAcousticFaceSet.
Definition at line 273 of file TYAcousticVolume.cpp.
|
virtual |
Inversion de la normale des faces
Reimplemented from TYVolumeInterface.
Reimplemented in TYAcousticFaceSet.
Definition at line 338 of file TYAcousticVolume.cpp.
|
virtual |
Test si le point passe se trouve a l'interieur de ce volume.
pt | Point dont on teste l'appartenance au volume. |
Implements TYVolumeInterface.
Reimplemented in TYAcousticBox, TYEtage, TYAcousticSemiCylinder, TYAcousticCylinder, TYAcousticFaceSet, and TYEcran.
Definition at line 278 of file TYAcousticVolume.cpp.
|
virtual |
Calcule les normales des surfaces composant ce volume.
Implements TYVolumeInterface.
Reimplemented in TYAcousticBox, TYEtage, TYAcousticSemiCylinder, TYAcousticCylinder, and TYAcousticFaceSet.
Definition at line 248 of file TYAcousticVolume.cpp.
bool TYAcousticVolume::operator!= | ( | const TYAcousticVolume & | other | ) | const |
Operateur !=.
Definition at line 69 of file TYAcousticVolume.cpp.
TYAcousticVolume & TYAcousticVolume::operator= | ( | const TYAcousticVolume & | other | ) |
Operateur =.
Definition at line 42 of file TYAcousticVolume.cpp.
bool TYAcousticVolume::operator== | ( | const TYAcousticVolume & | other | ) | const |
Operateur ==.
Definition at line 55 of file TYAcousticVolume.cpp.
|
virtual |
Propagation de l'attenuateur, contrairement a setAtt(), c'est une copie (deepCopy()) qui est faite ici. Cette methode peut etre surchargee pour propager un attenuateur a des sous-elements (notament des Volume vers les Surfaces).
Reimplemented from TYAcousticInterface.
Reimplemented in TYAcousticBox, TYEtage, TYAcousticSemiCylinder, TYAcousticCylinder, and TYAcousticFaceSet.
Definition at line 192 of file TYAcousticVolume.cpp.
|
virtual |
Propagation du regime Cette methode peut etre surchargee pour propager un regime a des sous-elements (notament des Volume vers les Surfaces).
Reimplemented from TYAcousticInterface.
Reimplemented in TYAcousticFaceSet.
Definition at line 161 of file TYAcousticVolume.cpp.
|
virtual |
Supprime toutes les sources d'un element
Implements TYAcousticInterface.
Reimplemented in TYEtage, TYAcousticBox, TYAcousticSemiCylinder, TYAcousticCylinder, and TYAcousticFaceSet.
Definition at line 213 of file TYAcousticVolume.cpp.
|
virtual |
Indique au volume le spectre global de la machine (volumeNode) pour lui permettre de calculer sa puissance (connaissant sa surface et la surface globale)
spectre | le spectre global de la machine |
Reimplemented from TYAcousticInterface.
Reimplemented in TYAcousticFaceSet, and TYEtage.
Definition at line 293 of file TYAcousticVolume.cpp.
|
virtual |
Set/Get de l'indicateur de modification acoustique.
Reimplemented from TYElement.
Definition at line 154 of file TYAcousticVolume.cpp.
|
virtual |
Set/Get de l'etat rayonnant ou pas
Reimplemented from TYAcousticInterface.
Reimplemented in TYAcousticBox, TYAcousticFaceSet, TYAcousticSemiCylinder, and TYAcousticCylinder.
Definition at line 327 of file TYAcousticVolume.cpp.
void TYAcousticVolume::setMateriau | ( | LPTYMateriauConstruction | pMat | ) |
Set/Get du materiau de construction pour les faces de ce Volume.
Definition at line 314 of file TYAcousticVolume.cpp.
|
inlinevirtual |
Get/Set du numero de regime suivant
Reimplemented from TYAcousticInterface.
Reimplemented in TYAcousticSemiCylinder, TYAcousticCylinder, TYAcousticBox, and TYEtage.
Definition at line 142 of file TYAcousticVolume.h.
|
inline |
Changement d'etat du statut de la normale
Definition at line 157 of file TYAcousticVolume.h.
|
virtual |
Get/Set du nom du regime
Reimplemented from TYAcousticInterface.
Reimplemented in TYAcousticSemiCylinder, TYAcousticCylinder, TYAcousticBox, and TYEtage.
Definition at line 331 of file TYAcousticVolume.cpp.
|
virtual |
Assigne une puissance a chaque source ponctuelle en fonction de la puissance acoutique globale de cet objet.
true
si le calcul a ete possible; false
sinon. Implements TYAcousticInterface.
Reimplemented in TYAcousticBox, TYEtage, TYAcousticSemiCylinder, TYAcousticCylinder, and TYAcousticFaceSet.
Definition at line 217 of file TYAcousticVolume.cpp.
|
virtual |
Retourne l'ensemble des sommets composant ce volume.
Implements TYVolumeInterface.
Reimplemented in TYAcousticBox, TYEtage, TYAcousticSemiCylinder, TYAcousticCylinder, and TYAcousticFaceSet.
Definition at line 253 of file TYAcousticVolume.cpp.
|
virtual |
Retourne une source ponctuelle equivalente a l'ensemble des sources. Cette methode est experimentale.
Implements TYAcousticInterface.
Reimplemented in TYEtage, TYAcousticBox, TYAcousticSemiCylinder, TYAcousticCylinder, and TYAcousticFaceSet.
Definition at line 204 of file TYAcousticVolume.cpp.
|
virtual |
Calcule la surface totale de ce volume.
Implements TYVolumeInterface.
Reimplemented in TYAcousticBox, TYEtage, TYAcousticSemiCylinder, TYAcousticCylinder, and TYAcousticFaceSet.
Definition at line 232 of file TYAcousticVolume.cpp.
|
virtual |
Retourne une chaine de caractere donnant des informations sur cet objet (utile pour le debugage).
Reimplemented from TYElement.
Reimplemented in TYAcousticBox, TYEtage, TYEcran, TYAcousticFaceSet, TYAcousticSemiCylinder, and TYAcousticCylinder.
Definition at line 88 of file TYAcousticVolume.cpp.
|
virtual |
Construit une arborescence DOM a partir du noeud passe afin de sauvegarder les parametres au format XML.
domElement | Le noeud DOM parent a partir duquel l'arborescence doit etre creee. |
Reimplemented from TYElement.
Reimplemented in TYAcousticBox, TYEtage, TYEcran, TYAcousticFaceSet, TYAcousticSemiCylinder, and TYAcousticCylinder.
Definition at line 93 of file TYAcousticVolume.cpp.
|
virtual |
Execute les calculs acoustiques afin que l'element metier soit a jour.
Implements TYAcousticInterface.
Reimplemented in TYAcousticSemiCylinder, TYAcousticBox, TYEtage, TYAcousticCylinder, and TYAcousticFaceSet.
Definition at line 222 of file TYAcousticVolume.cpp.
|
virtual |
Calcule la boite englobant ce volume.
Reimplemented from TYVolumeInterface.
Reimplemented in TYAcousticBox, TYEtage, TYAcousticSemiCylinder, TYAcousticCylinder, and TYAcousticFaceSet.
Definition at line 263 of file TYAcousticVolume.cpp.
|
virtual |
Calcule le volume total de ce volume.
Implements TYVolumeInterface.
Reimplemented in TYAcousticBox, TYEtage, TYAcousticSemiCylinder, TYAcousticCylinder, and TYAcousticFaceSet.
Definition at line 227 of file TYAcousticVolume.cpp.
|
protected |
Persistence du forcage des normales.
Definition at line 172 of file TYAcousticVolume.h.
|
protected |
Materiau de contruction pour les faces de ce Volume.
Definition at line 169 of file TYAcousticVolume.h.