1 // File: GeomAlgoAPI_FaceBuilder.h
2 // Created: 23 Apr 2014
3 // Author: Mikhail PONIKAROV
5 #ifndef GeomAlgoAPI_FaceBuilder_H_
6 #define GeomAlgoAPI_FaceBuilder_H_
8 #include <GeomAlgoAPI.h>
9 #include <GeomAPI_Shape.h>
10 #include <GeomAPI_Pnt.h>
11 #include <GeomAPI_Pln.h>
12 #include <GeomAPI_Dir.h>
13 #include <boost/shared_ptr.hpp>
15 /**\class GeomAlgoAPI_FaceBuilder
17 * \brief Allows to create face-shapes by different parameters
20 class GEOMALGOAPI_EXPORT GeomAlgoAPI_FaceBuilder
23 /// Creates square planar face by given point of the center,
24 /// normal to the plane and size of square
25 static boost::shared_ptr<GeomAPI_Shape> square(boost::shared_ptr<GeomAPI_Pnt> theCenter,
26 boost::shared_ptr<GeomAPI_Dir> theNormal,
27 const double theSize);
29 /// Returns the plane of the planar face. If it is not planar, returns empty ptr.
30 static boost::shared_ptr<GeomAPI_Pln> plane(boost::shared_ptr<GeomAPI_Shape> theFace);