Salome HOME
Merge remote-tracking branch 'origin/BR_SHP_FORMAT' into BR_v14_rc
[modules/hydro.git] / src / HYDROData / HYDROData_PolylineOperator.h
index 5157be0ac74b7a00f3b778013337bf26a652376d..d3e49e3526e0a1d4e7d7bcb5c94ce79ac844e90a 100644 (file)
@@ -20,8 +20,9 @@
 #define HYDROData_PolylineOperator_HeaderFile
 
 #include <HYDROData_PolylineXY.h>
-
-class gp_Pnt2d;
+#include <Geom2d_Curve.hxx>
+#include <gp_Pnt2d.hxx>
+#include <vector>
 
 class HYDROData_PolylineOperator
 {
@@ -32,6 +33,16 @@ public:
                                const Handle( HYDROData_PolylineXY )& theTool ) const;
   HYDRODATA_EXPORT bool Split( const HYDROData_SequenceOfObjects& thePolylines );
   HYDRODATA_EXPORT bool Merge( const HYDROData_SequenceOfObjects& thePolylines );
+
+  static HYDRODATA_EXPORT std::vector<Handle( Geom2d_Curve )> GetCurves( const Handle( HYDROData_PolylineXY )& thePolyline );
+
+  static HYDRODATA_EXPORT std::vector<gp_Pnt2d> Intersection( const Handle( Geom2d_Curve )& theCurve,
+                                                              const Handle( Geom2d_Curve )& theTool );
+
+  static HYDRODATA_EXPORT std::vector<Handle( Geom2d_Curve )> Split( const Handle( Geom2d_Curve )& theCurve,
+                                                                     const std::vector<gp_Pnt2d>& thePoints );
+
+  static HYDRODATA_EXPORT bool CreatePolylines( const std::vector<Handle( Geom2d_Curve )>& theCurves );
 };
 
 #endif