2 // class : Gestion des Sous-shapes categorie Edge
4 #ifndef __LIBE_SHAPE_H_
5 #define __LIBE_SHAPE_H_
7 #include "Hex_defines.hxx"
8 #include "HexSubShape.hxx"
12 class HEXABLOCKENGINE_EXPORT EdgeShape : public SubShape
15 EdgeShape (NewShape* dad, int id);
16 virtual ~EdgeShape () {}
18 void addAssociation (Edge* elt);
19 int countAssociation () { return tab_assoc.size(); }
20 Edge* getAssociation (int nro);
22 BRepAdaptor_Curve* getCurve ();
23 BRepAdaptor_Curve* makeCurve ();
24 void getCoords (double pstart[], double pend[]);
25 int getPoint (double param, double point[]);
26 double getParam (double point[]);
28 int onExtremity (double point[]);
29 bool isLinear () { return kind_of == KS_Line ; }
31 static bool samePoints (double point1[], double point2[]);
33 // void saveXml (XmlWriter* xml);
38 BRepAdaptor_Curve* lin_curve;
41 double lin_length, par_mini, par_maxi;