Salome HOME
updated copyright message
[modules/shaper.git] / src / GeomAlgoAPI / GeomAlgoAPI_EdgeBuilder.h
index d6185f3f51511d26c108b6afee12f1b8039946e7..4650740284a3cc4d6dc3c608abb146fc6306a86f 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2014-2019  CEA/DEN, EDF R&D
+// Copyright (C) 2014-2023  CEA, EDF
 //
 // This library is free software; you can redistribute it and/or
 // modify it under the terms of the GNU Lesser General Public
@@ -29,6 +29,9 @@
 #include <memory>
 #include <vector>
 
+class GeomAPI_Ax3;
+class GeomAPI_BSpline2d;
+
 /**\class GeomAlgoAPI_EdgeBuilder
  * \ingroup DataAlgo
  * \brief Allows to create face-shapes by different parameters
@@ -91,10 +94,18 @@ class GEOMALGOAPI_EXPORT GeomAlgoAPI_EdgeBuilder
       const std::shared_ptr<GeomAPI_Pnt>& theStart,
       const std::shared_ptr<GeomAPI_Pnt>& theEnd);
 
-  /// Creates B-spline edge
-  static GeomEdgePtr bspline(const std::vector<GeomPointPtr>& thePoles,
-                             const std::vector<double>& theWeights,
-                             const bool thePeriodic);
+  /// Creates planar B-spline edge
+  static GeomEdgePtr bsplineOnPlane(const std::shared_ptr<GeomAPI_Ax3>& thePlane,
+                                    const std::list<std::shared_ptr<GeomAPI_Pnt2d> >& thePoles,
+                                    const std::list<double>& theWeights,
+                                    const std::list<double>& theKnots,
+                                    const std::list<int>& theMults,
+                                    const int theDegree,
+                                    const bool thePeriodic);
+
+  /// Creates planar B-spline edge
+  static GeomEdgePtr bsplineOnPlane(const std::shared_ptr<GeomAPI_Ax3>& thePlane,
+                                    const std::shared_ptr<GeomAPI_BSpline2d>& theCurve);
 };
 
 #endif