Salome HOME
Renaming the direct API high level.
[modules/shaper.git] / src / GeomAlgoAPI / GeomAlgoAPI_ShapeAPI.h
1 // Copyright (C) 2014-2016 CEA/DEN, EDF R&D
2
3 // File:        GeomAlgoAPI_ShapeAPI.h
4 // Created:     17 Mar 2016
5 // Author:      Clarisse Genrault (CEA)
6
7 #ifndef GEOMALGOAPI_DIRECTAPI_H
8 #define GEOMALGOAPI_DIRECTAPI_H
9
10 #include <GeomAPI_Shape.h>
11 #include <GeomAPI_Pnt.h>
12 #include <GeomAPI_Edge.h>
13
14 #include <GeomAlgoAPI_Exception.h>
15
16 namespace GeomAlgoAPI_ShapeAPI
17 {
18 /**\class GeomAlgoAPI_ShapeAPI
19  * \ingroup DataAlgo
20  * \brief Allows to access the direct API
21  */
22 class GEOMALGOAPI_EXPORT GeomAlgoAPI_ShapeAPI
23 {
24 public:
25   /// Creates a box using the dimensions.
26   /// \param theDx The dimension on X
27   /// \param theDy The dimension on Y
28   /// \param theDz The dimension on Z
29   /// \return a shape
30   static std::shared_ptr<GeomAPI_Shape> makeBox(const double theDx, const double theDy, const double theDz) throw (GeomAlgoAPI_Exception);
31   
32   /// Creates a box using the two points that defined a diagonal.
33   /// \param theFirstPoint One extermity of the diagonal
34   /// \param theSecondPoint The other extremity of the diagonal
35   /// \return a shape
36   static std::shared_ptr<GeomAPI_Shape> makeBox(std::shared_ptr<GeomAPI_Pnt> theFirstPoint,
37                                                 std::shared_ptr<GeomAPI_Pnt> theSecondPoint) throw (GeomAlgoAPI_Exception);
38 };
39 }
40 #endif