Salome HOME
Livraison IHM Hexa7
[modules/hexablock.git] / src / HEXABLOCK / HexVertexShape.hxx
1
2 // class : Gestion des Sous-shapes categorie Vertex
3
4 #ifndef __NODE_SHAPE_H_
5 #define __NODE_SHAPE_H_
6
7 #include "HexSubShape.hxx"
8
9 BEGIN_NAMESPACE_HEXA
10
11 class HexaExport VertexShape : public SubShape
12 {
13 public :
14     VertexShape (NewShape* dad, int id);
15     VertexShape (NewShape* dad, int id, double* point);
16
17     void    addAssociation   (Vertex* elt);
18     int     countAssociation ()                { return tab_assoc.size(); }
19     Vertex* getAssociation   (int nro);
20
21     void getCoords (double& px, double& py, double& pz);
22     void saveXml (XmlWriter* xml);
23
24     virtual const TopoDS_Shape& getShape(); // #mbarry
25
26 private :
27     void updateCoords ();
28
29 private :
30     Real3  ss_coord;   // Pour les vertex
31     bool   maj_coords;
32     bool   free_point;
33     vector <Vertex*> tab_assoc;
34 };
35 END_NAMESPACE_HEXA
36 #endif