Salome HOME
Renaming the direct API high level.
[modules/shaper.git] / src / GeomAlgoAPI / GeomAlgoAPI_ShapeTools.h
index 3d62588f7360ec40e5719e5109c761fba4226f96..95a97f0bbaef960234118ff5a60af6565a3a5a08 100644 (file)
@@ -12,7 +12,9 @@
 #include <GeomAPI_Shape.h>
 #include <GeomAPI_Vertex.h>
 
+class GeomAPI_Edge;
 class GeomAPI_Dir;
+class GeomAPI_Face;
 class GeomAPI_PlanarEdges;
 class GeomAPI_Pln;
 class GeomAPI_Pnt;
@@ -90,6 +92,16 @@ public:
   /// \return true if edge inside the face.
   GEOMALGOAPI_EXPORT static bool isSubShapeInsideShape(const std::shared_ptr<GeomAPI_Shape> theSubShape,
                                                        const std::shared_ptr<GeomAPI_Shape> theBaseShape);
+
+  /// \return true if theShape is valid.
+  GEOMALGOAPI_EXPORT static bool isShapeValid(const std::shared_ptr<GeomAPI_Shape> theShape);
+
+  /// \return outer wire for face. If theShape has different type returns empty pointer.
+  GEOMALGOAPI_EXPORT static std::shared_ptr<GeomAPI_Shape> getFaceOuterWire(const std::shared_ptr<GeomAPI_Shape> theFace);
+
+  /// \return true if edge is parallel to face.
+  GEOMALGOAPI_EXPORT static bool isParallel(const std::shared_ptr<GeomAPI_Edge> theEdge,
+                                            const std::shared_ptr<GeomAPI_Face> theFace);
 };
 
 #endif