Salome HOME
Fix for the issue #1794: can't create a plane by a vertex and an axis if the vertex...
[modules/shaper.git] / src / ConstructionPlugin / ConstructionPlugin_Plane.h
index d92f00811d0f4b7468ce8c7343c22d773cae63ee..613062af94043431000c83d9f8d9ceab99cd5275 100644 (file)
@@ -145,6 +145,13 @@ public:
     return ATTR_ID;
   }
 
+  /// Attribute name for perpendicular flag.
+  inline static const std::string& PERPENDICULAR()
+  {
+    static const std::string ATTR_ID("perpendicular");
+    return ATTR_ID;
+  }
+
   /// Attribute name for selected plane.
   inline static const std::string& PLANE()
   {
@@ -159,6 +166,13 @@ public:
     return ATTR_ID;
   }
 
+  /// Attribute name for reverse flag.
+  inline static const std::string& REVERSE()
+  {
+    static const std::string ATTR_ID("reverse");
+    return ATTR_ID;
+  }
+
   /// Attribute name for coincident point.
   inline static const std::string& COINCIDENT_POINT()
   {
@@ -166,6 +180,33 @@ public:
     return ATTR_ID;
   }
 
+  /// Attribute name for axis.
+  inline static const std::string& AXIS()
+  {
+    static const std::string ATTR_ID("axis");
+    return ATTR_ID;
+  }
+
+  /// Attribute name for angle.
+  inline static const std::string& ANGLE()
+  {
+    static const std::string ATTR_ID("angle");
+    return ATTR_ID;
+  }
+
+  inline static const std::string& PLANE1()
+  {
+    static const std::string ATTR_ID("plane1");
+    return ATTR_ID;
+  }
+
+  inline static const std::string& PLANE2()
+  {
+    static const std::string ATTR_ID("plane2");
+    return ATTR_ID;
+  }
+
+
   /// Attribute name for a parameter for the general equation of a plane (ax+by+cz+d=0)
   inline static const std::string& A()
   {
@@ -213,6 +254,8 @@ protected:
   std::shared_ptr<GeomAPI_Shape> createByThreePoints();
   std::shared_ptr<GeomAPI_Shape> createByLineAndPoint();
   std::shared_ptr<GeomAPI_Shape> createByCoincidentPoint();
+  std::shared_ptr<GeomAPI_Shape> createByRotation();
+  std::shared_ptr<GeomAPI_Shape> createByTwoParallelPlanes();
   /// Creates a new plane by copy of face plane with translation along the normal
   /// to the specified distance.
   std::shared_ptr<GeomAPI_Shape> createByDistanceFromOther();