]> SALOME platform Git repositories - modules/shaper.git/blob - src/GeomAlgoAPI/GeomAlgoAPI_Sphere.h
Salome HOME
[Code coverage GeomAlgoAPI]: Remove default constructors of algorithms
[modules/shaper.git] / src / GeomAlgoAPI / GeomAlgoAPI_Sphere.h
1 // Copyright (C) 2014-20xx CEA/DEN, EDF R&D
2
3 // File:        GeomAlgoAPI_Sphere.h
4 // Created:     16 Mar 2017
5 // Author:      Clarisse Genrault (CEA)
6
7 #ifndef GEOMALGOAPI_SPHERE_H_
8 #define GEOMALGOAPI_SPHERE_H_
9
10 #include <GeomAlgoAPI_MakeShape.h>
11
12 #include <GeomAPI_Pnt.h>
13
14 /**\class GeomAlgoAPI_Sphere
15  * \ingroup DataAlgo
16  * \brief Allows to create Sphere Primitives
17  */
18 class GeomAlgoAPI_Sphere : public GeomAlgoAPI_MakeShape
19 {
20  public:
21   /// Creates a sphere.
22   /// \param theCenterPoint The center point of the sphere
23   /// \param theRadius The radius of the sphere
24   GEOMALGOAPI_EXPORT GeomAlgoAPI_Sphere(std::shared_ptr<GeomAPI_Pnt> theCenterPoint,
25                                         const double theRadius);
26
27   /// Checks if data for the sphere construction is OK.
28   GEOMALGOAPI_EXPORT bool check();
29
30   /// Builds the sphere.
31   GEOMALGOAPI_EXPORT void build();
32
33  private:
34   std::shared_ptr<GeomAPI_Pnt> myCenterPoint; /// Center of the sphere.
35   double myRadius;
36 };
37
38 #endif // GEOMALGOAPI_SPHERE_H_