1 // File: GeomAlgoAPI_Boolean.h
2 // Created: 02 Sept 2014
3 // Author: Vitaly Smetannikov
5 #ifndef GeomAlgoAPI_Boolean_H_
6 #define GeomAlgoAPI_Boolean_H_
8 #include <GeomAlgoAPI.h>
9 #include <GeomAPI_Shape.h>
10 #include <boost/shared_ptr.hpp>
12 /**\class GeomAlgoAPI_Boolean
14 * \brief Allows to perform of boolean operations
16 class GEOMALGOAPI_EXPORT GeomAlgoAPI_Boolean
19 /* \brief Creates cut boolean operation
20 * \param[in] theShape the main shape
21 * \param[in] theTool toole shape for boolean
22 * \return a solid as result of operation
24 static boost::shared_ptr<GeomAPI_Shape> makeCut(boost::shared_ptr<GeomAPI_Shape> theShape,
25 boost::shared_ptr<GeomAPI_Shape> theTool);
27 /* \brief Creates fuse boolean operation
28 * \param[in] theShape the main shape
29 * \param[in] theTool second shape
30 * \return a solid as result of operation
32 static boost::shared_ptr<GeomAPI_Shape> makeFuse(boost::shared_ptr<GeomAPI_Shape> theShape,
33 boost::shared_ptr<GeomAPI_Shape> theTool);
35 /* \brief Creates common boolean operation
36 * \param[in] theShape the main shape
37 * \param[in] theTool second shape
38 * \return a solid as result of operation
40 static boost::shared_ptr<GeomAPI_Shape> makeCommon(boost::shared_ptr<GeomAPI_Shape> theShape,
41 boost::shared_ptr<GeomAPI_Shape> theTool);