- static std::shared_ptr<GeomAPI_Shape> planarFace(std::shared_ptr<GeomAPI_Pln> thePlane,
- double theX, double theY,
- double theWidth, double theHeight);
+ static std::shared_ptr<GeomAPI_Face> planarFace(const std::shared_ptr<GeomAPI_Pln> thePlane,
+ const double theX, const double theY,
+ const double theWidth, const double theHeight);
+
+ /// Creates a planar face by three vertices.
+ static std::shared_ptr<GeomAPI_Face> planarFaceByThreeVertices(const std::shared_ptr<GeomAPI_Vertex> theVertex1,
+ const std::shared_ptr<GeomAPI_Vertex> theVertex2,
+ const std::shared_ptr<GeomAPI_Vertex> theVertex3);
+
+ /// Creates a planar face parallel to theFace and passing through theVertex.
+ static std::shared_ptr<GeomAPI_Face> planarFaceByFaceAndVertex(const std::shared_ptr<GeomAPI_Face> theFace,
+ const std::shared_ptr<GeomAPI_Vertex> theVertex);
+
+ /// Returns the plane of the planar face. If it is not planar, returns empty ptr.
+ static std::shared_ptr<GeomAPI_Pln> plane(const std::shared_ptr<GeomAPI_Face> theFace);