34 getElement()->setInCurrentCalcul(getElement()->getElement()->isInCurrentCalcul());
44 OMatrix matrix = getElement()->getMatrix();
45 for (
int j = 0; j < 4; j++)
47 for (
int k = 0; k < 4; k++)
49 m[j][k] = matrix.
_m[k][j];
52 glMultMatrixd((GLdouble*)m);
60 TYListPtrGeoNode::iterator ite = GeoNodeParents.end();
61 if (!GeoNodeParents.empty())
67 bool bPushMatrix =
false;
68 for (i = 0; i < GeoNodeParents.size() && (*ite) != pThisGeoNode; i++)
70 if (pDansCeRepere == NULL)
78 LPTYElementGraphic pCurrentTYElementGraphic = pCurrentTYGeometryNode->getGraphicObject();
84 if ((*ite) == pDansCeRepere)
89 if (ite != GeoNodeParents.begin())
96 for (i = 0; i < nbPushMatrix; i++)
105 childs.push_back(pTYElementGraphic);
108 pTYElementGraphic->
getChilds(childs, recursif);
126 pGraphicObject->
display(pModelerElement, mode);
list< TYElementGraphic * > TYListPtrTYElementGraphic
List de pointeur de TYElement.
Representation graphique d'un GeometryNode (fichier header)
std::list< TYGeometryNode * > TYListPtrGeoNode
Liste ordonnee de pointeurs de TYElement.
virtual void Enlarge(const OPoint3D &pt)
Enlarge the box with the point if the point is outside the box.
double _m[4][4]
The 4x4 matrix array.
classe graphique pour un element de base
virtual void update(bool force=false)
virtual void getChilds(TYListPtrTYElementGraphic &childs, bool recursif=true)
virtual void display(TYElement *pModelerElement=nullptr, GLenum mode=GL_RENDER)
classe graphique pour un GeometryNode
virtual void computeBoundingBox()
virtual void update(bool force=false)
void displayPushingParentMatrix(TYElement *pModelerElement, GLenum mode, TYGeometryNode *pDansCeRepere)
virtual ~TYGeometryNodeGraphic()
virtual void display(TYElement *pModelerElement=nullptr, GLenum mode=GL_RENDER)
virtual void getChilds(TYListPtrTYElementGraphic &childs, bool recursif=true)
TYGeometryNodeGraphic(TYGeometryNode *pElement)
void GetGeoNodeParentList(TYListPtrGeoNode &GetGeoNodeParents)