91 TYListPtrGeoNode::iterator ite;
217 bool eltFound =
false;
218 bool hauteurOk =
false;
219 double hauteurLue = 0;
224 QDomNodeList childs = domElement.childNodes();
226 for (
unsigned int i = 0; i < childs.length(); i++)
229 elemCur = childs.item(i).toElement();
246 nodeTmp = elemCur.nextSibling();
252 if (nodeTmp.isNull())
259 str += nodeTmp.nodeName();
346 if (TYElement::operator!=(other))
379 if (!pOtherGeoNode || !pOtherGeoNode->
getElement())
436 while (pCurrentParent)
440 if (pPotentialGeoNode)
442 return pPotentialGeoNode;
445 pPotentialGeoNode =
GetGeoNode(pCurrentParent);
446 if (pPotentialGeoNode)
448 return pPotentialGeoNode;
451 pCurrentParent = pCurrentParent->
getParent();
459 while (pCurrrentGeoNodeParent)
461 GetGeoNodeParents.push_back(pCurrrentGeoNodeParent);
471 while (pParent != NULL)
484 while (pParent != NULL && pParent != pGeoNode)
514 if (geoNodeGraphic !=
nullptr)
527 if (geoNodeGraphic !=
nullptr)
553 double dRotateX = rot.
_x;
554 double dRotateY = rot.
_y;
555 double dRotateZ = rot.
_z;
561 tyMat = tyMat * tyMatTmpZ * tyMatTmpY * tyMatTmpX * tyMatTmpConcat;
575 vec.
_x = mat.
_m[0][1];
576 vec.
_y = mat.
_m[1][1];
577 vec.
_z = mat.
_m[2][1];
581 xv.
_x = mat.
_m[0][0];
582 xv.
_y = mat.
_m[1][0];
583 xv.
_z = mat.
_m[2][0];
All base classes related to 3D manipulation.
double RADTODEG(double a)
Converts an angle from radians to degrees.
double DEGTORAD(double a)
Converts an angle from degrees to radians.
std::vector< LPTYElement > LPTYElementArray
Representation graphique d'un GeometryNode (fichier header)
std::map< const TYElement *, TYGeometryNode * > TYMapPtrGeoNode
std::list< TYGeometryNode * > TYListPtrGeoNode
Liste ordonnee de pointeurs de TYElement.
double _y
y coordinate of OCoord3D
double _z
z coordinate of OCoord3D
double _x
x coordinate of OCoord3D
int setRotationOz(double a)
Update a rotation matrix (Oz axis).
int setRotationOy(double a)
Update a rotation matrix (Oy axis).
OMatrix getInvert(int *ok=0) const
Return the inverse matrix of this matrix.
int setRotationOx(double a)
Update a rotation matrix (Ox axis).
double _m[4][4]
The 4x4 matrix array.
virtual OPrototype * clone() const =0
virtual const char * getClassName() const
static OPrototype * safeDownCast(OPrototype *pObject)
static OPrototype * findAndClone(const char *className)
3D frame with a point and 3 vectors.
void set(const OPoint3D &origin, const OVector3D &vecI, const OVector3D &vecJ, const OVector3D &vecK)
Sets with a point and 3 vectors.
OPoint3D _origin
The origin point.
OMatrix asMatrix() const
return the transformation matrix from unity to this pose such as this = transform * unity
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)
LPTYElementGraphic _pGraphicObject
L'object graphique metier associe a cet element.
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)
classe graphique pour un GeometryNode
static TYListPtrGeoNode * GetGeoNodeDoublonsList()
const ORepere3D & getORepere3D() const
void setMatrix(const OMatrix &matrix)
static TYMapPtrGeoNode * GetGeoNodeMap()
OMatrix localToGlobal() const
OMatrix globalToLocal() const
virtual DOM_Element toXML(DOM_Element &domElement)
void setRotation(const OPoint3D &rot)
Set the rotation angle along axis x, y & z represented as an OPoint3D.
TYGeometryNode & operator=(const TYGeometryNode &other)
LPTYElement _pElement
L'instance de l'element geometrique.
TYRepere _repere
Le repere definissant la position et l'orientation de l'element.
static TYMapPtrGeoNode * _geoNodeMap
bool operator!=(const TYGeometryNode &other) const
virtual int fromXML(DOM_Element domElement)
TYGeometryNode * GetGeoNodeParent() const
void GetGeoNodeParentList(TYListPtrGeoNode &GetGeoNodeParents)
void setElement(LPTYElement pElt)
double _hauteur
Hauteur de l'element par rapport au sol.
static TYListPtrGeoNode * _geoNodeDoublonsList
bool operator==(const TYGeometryNode &other) const
OMatrix localToGeoNode(const TYGeometryNode *pGeoNode) const
TYElement * getElement() const
virtual ~TYGeometryNode()
OPoint3D rotation()
Get the rotation angle along axis x, y & z represented as an OPoint3D.
virtual bool deepCopy(const TYElement *pOther, bool copyId=true, bool pUseCopyTag=false)
OMatrix getMatrix() const
static TYGeometryNode * GetGeoNode(TYElement *pElement)
virtual void getChilds(LPTYElementArray &childs, bool recursif=true)
void setPosition(const OPoint3D &pos)
Set the position of the element.
void setRepere(const ORepere3D &repere)
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 bool deepCopy(const TYElement *pOther, bool copyId=true, bool pUseCopyTag=false)
std::string doubleToStrPre(double val, int precision=2)