58 if (TYElement::operator!=(other))
62 if (TYColorInterface::operator!=(other))
66 if (TYAcousticInterface::operator!=(other))
103 for (
int i = 0; i < pOtherAccSurfNode->
getNbChild(); i++)
119 return "TYAcousticSurfaceNode";
149 int nbChild = 0, retVal = -1;
152 bool nbChildOk =
false;
155 QDomNodeList childs = domElement.childNodes();
156 for (
unsigned int i = 0; i < childs.length(); i++)
158 elemCur = childs.item(i).toElement();
226 for (
unsigned int j = 0; j < tabChild.size(); j++)
228 tabChild[j]->setMatrix(matrix * tabChild[j]->getMatrix());
232 tab.insert(tab.end(), tabChild.begin(), tabChild.end());
365 for (
size_t i = 0; i < childs.size(); i++)
485 double residu =
ABS(10 * log10(LWg.
sigma()) - 10 * log10(LWc.
sigma()));
488 ret = residu < 1 ? true :
false;
552 assert(pAccSurfGeoNode);
657 TYTabAcousticSurfaceGeoNode::iterator ite;
676 assert(pAccSurfGeoNode);
678 TYTabAcousticSurfaceGeoNode::iterator ite;
682 if ((*ite) == pAccSurfGeoNode)
698 TYTabAcousticSurfaceGeoNode::iterator ite;
730 TYTabAcousticSurfaceGeoNode::iterator ite;
838 ofs <<
getName().toLatin1().data() <<
'\n';
double ABS(double a)
Return the absolute value.
TY_EXTENSION_INST(TYAcousticSurfaceNode)
TYGeometryNode TYAcousticSurfaceGeoNode
Noeud geometrique de type TYAcousticSurface.
std::vector< TYPoint > TYTabPoint
Collection de TYPoint.
std::deque< OPoint3D > TYTabPoint3D
Collection de OPoint3D.
std::vector< LPTYElement > LPTYElementArray
std::vector< LPTYSourcePonctuelleGeoNode > TYTabSourcePonctuelleGeoNode
Collection de noeuds geometriques de type TYSourcePonctuelle.
Plan defined by its equation : ax+by+cz+d=0.
virtual OPrototype * clone() const =0
virtual const char * getClassName() const
static OPrototype * safeDownCast(OPrototype *pObject)
Class to define a segment.
OSpectreAbstract & sum(const OSpectreAbstract &spectre) const
Arithmetic sum of two spectrums in one-third Octave.
OSpectreAbstract & toGPhy() const
Converts to physical quantity.
void setType(TYSpectreType type)
Set the spectrum type.
double sigma()
Sum the values of the spectrum.
OSpectreAbstract & toDB() const
Converts to dB.
OSpectreAbstract & mult(const OSpectreAbstract &spectre) const
Multiplication of two spectrums.
double _densiteSrcsV
Densite verticale de sources.
double getDensiteSrcsH() const
virtual void setDensiteSrcsH(double densite, bool recursif=true)
virtual void setNextRegimeNb(const int &next)
TYRegime & getRegimeNb(const int &nb, bool &status)
size_t getNbRegimes() const
double getDensiteSrcsV() const
double getDensiteSrcs() const
int _typeDistribution
Indique le type de distribution a utiliser. pour l'etat courant.
virtual void loadRegime(int regimeNb=-1)
TYSpectre & getCurrentSpectre()
virtual int addRegime(const TYRegime ®ime)
virtual void setUseAtt(bool state)
TYTabRegimes _tabRegimes
Tableau des regimes de fonctionnement.
virtual void setDensiteSrcsV(double densite, bool recursif=true)
DOM_Element toXML(DOM_Element &domElement)
virtual void exportCSV(std::ofstream &ofs)
Export au format csv sur un flux transmis.
TYAcousticInterface & operator=(const TYAcousticInterface &other)
void setNbRegimes(unsigned int nb)
virtual void setRegime(TYSpectre &Spectre, int regime=-1, bool recursif=false)
virtual void setIsRayonnant(bool rayonnant=true, bool recursif=true)
virtual void setCurRegime(int regimeNumber)
int _nextRegime
Numero d'ordre du regime suivant.
int fromXML(DOM_Element domElement)
virtual int getNextRegimeNb()
void deepCopy(const TYAcousticInterface *pOther, bool copyId=true, bool pUseCopyTag=false)
virtual void propagateAtt(LPTYAttenuateur pAtt)
double _densiteSrcsH
Densite horizontale de sources.
virtual bool remRegime(int regime)
virtual void setRegimeName(const QString &name)
bool _isRayonnant
Etat courant de l'element (rayonnant ou non rayonnant)
virtual void correctNbRegimes()
virtual void setDensiteSrcsV(double densite, bool recursif=true)
virtual void setDensiteSrcsH(double densite, bool recursif=true)
virtual void exportCSV(std::ofstream &ofs)
Export au format csv sur un flux transmis.
TYSpectre setGlobalLW(const TYSpectre &spectre, const double &surfGlobale, const int ®ime=-1)
virtual void distriSrcs()
virtual void setIsAcousticModified(bool isModified)
virtual void remAllSrcs()
virtual void setNextRegimeNb(const int &next)
virtual double activeSurface() const
virtual int fromXML(DOM_Element domElement)
virtual ~TYAcousticSurfaceNode()
virtual void setCurRegime(int regime)
virtual bool remAcousticSurf(const LPTYAcousticSurfaceGeoNode pAccSurfGeoNode)
virtual void setIsRayonnant(bool rayonnant=true, bool recursif=true)
virtual OVector3D normal() const
virtual void propagateAtt(LPTYAttenuateur pAtt)
LPTYRectangle _pBoundingRect
Rectangle englobant.
TYAcousticSurfaceNode & operator=(const TYAcousticSurfaceNode &other)
Operateur =.
virtual void setRegimeName(const QString &name)
virtual OPlan plan() const
virtual TYTabPoint getContour(int n=-1) const
virtual int intersects(const TYSurfaceInterface *pSurf, OSegment3D &seg) const
virtual void loadRegime(int regimeNb=-1)
bool operator!=(const TYAcousticSurfaceNode &other) const
Operateur !=.
TYTabAcousticSurfaceGeoNode _tabAcousticSurf
Tableau des AcousticSurfaces.
virtual void getChilds(LPTYElementArray &childs, bool recursif=true)
virtual double surface() const
size_t getNbChild() const
virtual bool deepCopy(const TYElement *pOther, bool copyId=true, bool pUseCopyTag=false)
virtual bool remRegime(int regime)
bool operator==(const TYAcousticSurfaceNode &other) const
Operateur ==.
LPTYAcousticSurfaceGeoNode findAcousticSurf(const LPTYAcousticSurface pAccSurf)
virtual std::string toString() const
virtual bool updateAcoustic(const bool &force=false)
virtual void setRegime(TYSpectre &Spectre, int regime=-1, bool recursif=false)
virtual TYTabPoint3D getOContour(int n=-1) const
virtual DOM_Element toXML(DOM_Element &domElement)
LPTYAcousticSurface getAcousticSurf(int index)
bool addAcousticSurf(LPTYAcousticSurfaceGeoNode pAccSurfGeoNode)
virtual void setUseAtt(bool state)
virtual TYSourcePonctuelle srcPonctEquiv() const
virtual TYTabSourcePonctuelleGeoNode getSrcs() const
virtual void setDensiteSrcsV(double densite, bool recursif=true)
virtual void remAllSrcs()
virtual void setCurRegime(int regime)
virtual double surface() const
virtual bool deepCopy(const TYElement *pOther, bool copyId=true, bool pUseCopyTag=false)
virtual void propagateAtt(LPTYAttenuateur pAtt)
virtual TYTabSourcePonctuelleGeoNode getSrcs() const
virtual void distriSrcs()
virtual void exportCSV(std::ofstream &ofs)
Export au format csv sur un flux transmis.
TYSpectre setGlobalLW(const TYSpectre &spectre, const double &surfGlobale, const int ®ime=-1)
virtual void setDensiteSrcsH(double densite, bool recursif=true)
virtual void setIsRayonnant(bool rayonnant=true, bool recursif=true)
Get/set de l'etat rayonnant ou pas.
virtual void setIsRayonnant(bool rayonnant=true, bool recursif=true)
int fromXML(DOM_Element domElement)
TYColorInterface & operator=(const TYColorInterface &other)
void deepCopy(const TYColorInterface *pOther, bool copyId=true, bool pUseCopyTag=false)
DOM_Element toXML(DOM_Element &domElement)
TYElement * getParent() const
virtual bool deepCopy(const TYElement *pOther, bool copyId=true, bool pUseCopyTag=false)
virtual DOM_Element toXML(DOM_Element &domElement)
QString _name
Nom courant de l'element.
TYElement & operator=(const TYElement &other)
bool callFromXMLIfEqual(DOM_Element &domElement, int *pRetVal=NULL)
virtual QString getName() const
TYElement * _pParent
Reference sur l'element parent.
virtual void getChilds(LPTYElementArray &childs, bool recursif=true)
void setParent(TYElement *pParent)
virtual int fromXML(DOM_Element domElement)
virtual void setIsAcousticModified(bool isModified)
virtual void setIsGeometryModified(bool isModified)
TYElement * getElement() const
QString generateName(const char *classname)
Retourne le nom de la classe associe a un nombre.
static TYNameManager * get()
Retourne l'instance singleton.
virtual DOM_Element toXML(DOM_Element &domElement)
virtual int intersects(const TYSurfaceInterface *pSurf, OSegment3D &seg) const
virtual OPlan plan() const
virtual bool deepCopy(const TYElement *pOther, bool copyId=true, bool pUseCopyTag=false)
virtual TYTabPoint getContour(int n=-1) const
virtual OVector3D normal() const
virtual TYTabPoint3D getOContour(int n=-1) const
virtual double surface() const
static TYSpectre getEmptyLinSpectre(const double &valInit=1.0E-20)
Cree un spectre en lin.