1 // Copyright (C) 2014-2016 CEA/DEN, EDF R&D
3 // File: GeomAlgoAPI_ShapeAPI.h
4 // Created: 17 Mar 2016
5 // Author: Clarisse Genrault (CEA)
7 #ifndef GEOMALGOAPI_SHAPEAPI_H
8 #define GEOMALGOAPI_SHAPEAPI_H
10 #include <GeomAPI_Shape.h>
11 #include <GeomAPI_Pnt.h>
12 #include <GeomAPI_Edge.h>
14 #include <GeomAlgoAPI_Exception.h>
16 namespace GeomAlgoAPI_ShapeAPI
18 /**\class GeomAlgoAPI_ShapeAPI
20 * \brief Allows to access the direct API
22 class GEOMALGOAPI_EXPORT GeomAlgoAPI_ShapeAPI
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
30 static std::shared_ptr<GeomAPI_Shape> makeBox(const double theDx, const double theDy,
31 const double theDz) throw (GeomAlgoAPI_Exception);
33 /// Creates a box using the two points that defined a diagonal.
34 /// \param theFirstPoint One extermity of the diagonal
35 /// \param theSecondPoint The other extremity of the diagonal
37 static std::shared_ptr<GeomAPI_Shape> makeBox(std::shared_ptr<GeomAPI_Pnt> theFirstPoint,
38 std::shared_ptr<GeomAPI_Pnt> theSecondPoint) throw (GeomAlgoAPI_Exception);