2 // class : Gestion des Sous-shapes categorie Edge
4 #ifndef __LIBE_SHAPE_H_
5 #define __LIBE_SHAPE_H_
7 #include "HexSubShape.hxx"
11 class HexaExport EdgeShape : public SubShape
14 EdgeShape (NewShape* dad, int id);
15 virtual ~EdgeShape () {}
17 void addAssociation (Edge* elt);
18 int countAssociation () { return tab_assoc.size(); }
19 Edge* getAssociation (int nro);
21 BRepAdaptor_Curve* getCurve ();
22 BRepAdaptor_Curve* makeCurve ();
23 void getCoords (double pstart[], double pend[]);
24 int getPoint (double param, double point[]);
25 double getParam (double point[]);
29 int onExtremity (double point[]);
30 bool isLinear () { return kind_of == KS_Line ; }
32 static bool samePoints (double point1[], double point2[]);
33 virtual EnumKindOfShape kindOf ();
35 // void saveXml (XmlWriter* xml);
40 BRepAdaptor_Curve* lin_curve;
43 double lin_length, par_mini, par_maxi;
44 double lin_radius, lin_angle;