Salome HOME
Update documentation
[modules/shaper.git] / src / GeomAlgoAPI / GeomAlgoAPI_SketchBuilder.h
index c5817d9b002bb99359aac273409de99b85040520..0d471dd0f3591bbdea4b70c4bb1d6294f2017d63 100644 (file)
@@ -1,13 +1,15 @@
+// Copyright (C) 2014-20xx CEA/DEN, EDF R&D
+
 // File:        GeomAlgoAPI_SketchBuilder.h
 // Created:     02 Jun 2014
 // Author:      Artem ZHIDKOV
 
-#ifndef GeomAlgoAPI_SketchBuilder_HeaderFile
-#define GeomAlgoAPI_SketchBuilder_HeaderFile
+#ifndef GeomAlgoAPI_SketchBuilder_H_
+#define GeomAlgoAPI_SketchBuilder_H_
 
 #include <GeomAlgoAPI.h>
 
-#include <boost/shared_ptr.hpp>
+#include <memory>
 #include <list>
 
 #include <GeomAPI_Dir.h>
@@ -20,7 +22,7 @@
  */
 class GEOMALGOAPI_EXPORT GeomAlgoAPI_SketchBuilder
 {
-public:
+ public:
   /** \brief Creates list of faces and unclosed wires on basis of the features of the sketch
    *  \param[in]  theOrigin      origin point of the sketch
    *  \param[in]  theDirX        x-direction of the sketch
@@ -34,19 +36,38 @@ public:
    *  It finds the vertex with minimal coordinates along X axis (theDirX) and then 
    *  goes through the edges passing the surrounding area on the left.
    */
-  static void createFaces(const boost::shared_ptr<GeomAPI_Pnt>&                theOrigin,
-                          const boost::shared_ptr<GeomAPI_Dir>&                theDirX,
-                          const boost::shared_ptr<GeomAPI_Dir>&                theDirY,
-                          const boost::shared_ptr<GeomAPI_Dir>&                theNorm,
-                          const std::list< boost::shared_ptr<GeomAPI_Shape> >& theFeatures,
-                                std::list< boost::shared_ptr<GeomAPI_Shape> >& theResultFaces,
-                                std::list< boost::shared_ptr<GeomAPI_Shape> >& theResultWires);
+  static void createFaces(const std::shared_ptr<GeomAPI_Pnt>& theOrigin,
+                          const std::shared_ptr<GeomAPI_Dir>& theDirX,
+                          const std::shared_ptr<GeomAPI_Dir>& theDirY,
+                          const std::shared_ptr<GeomAPI_Dir>& theNorm,
+                          const std::list<std::shared_ptr<GeomAPI_Shape> >& theFeatures,
+                          std::list<std::shared_ptr<GeomAPI_Shape> >& theResultFaces,
+                          std::list<std::shared_ptr<GeomAPI_Shape> >& theResultWires);
+
+  /** \brief Creates list of faces and unclosed wires on basis of the features of the sketch
+   *  \param[in]  theOrigin      origin point of the sketch
+   *  \param[in]  theDirX        x-direction of the sketch
+   *  \param[in]  theDirY        y-direction of the sketch
+   *  \param[in]  theNorm        normal of the sketch
+   *  \param[in]  theWire        a wire which contains all edges
+   *  \param[out] theResultFaces faces based on closed wires
+   *
+   *  The algorithm searches all loops of edges surrounding lesser squares.
+   *  It finds the vertex with minimal coordinates along X axis (theDirX) and then
+   *  goes through the edges passing the surrounding area on the left.
+   */
+  static void createFaces(const std::shared_ptr<GeomAPI_Pnt>& theOrigin,
+                          const std::shared_ptr<GeomAPI_Dir>& theDirX,
+                          const std::shared_ptr<GeomAPI_Dir>& theDirY,
+                          const std::shared_ptr<GeomAPI_Dir>& theNorm,
+                          const std::shared_ptr<GeomAPI_Shape>& theWire,
+                          std::list<std::shared_ptr<GeomAPI_Shape> >& theResultFaces);
 
   /** \brief Searches intersections between the faces in the list 
    *         and make holes in the faces to avoid intersections
    *  \param[in,out] theFaces list of faces to proccess
    */
-  static void fixIntersections(std::list< boost::shared_ptr<GeomAPI_Shape> >& theFaces);
+  static void fixIntersections(std::list<std::shared_ptr<GeomAPI_Shape> >& theFaces);
 };
 
 #endif