]> SALOME platform Git repositories - modules/shaper.git/blob - src/GeomAPI/GeomAPI_Circ2d.h
Salome HOME
Move generation of AIS presentation into SketchPlugin
[modules/shaper.git] / src / GeomAPI / GeomAPI_Circ2d.h
1 // File:        GeomAPI_Circ2d.h
2 // Created:     29 May 2014
3 // Author:      Artem ZHIDKOV
4
5 #ifndef GeomAPI_Circ2d_HeaderFile
6 #define GeomAPI_Circ2d_HeaderFile
7
8 #include <GeomAPI_Interface.h>
9 #include <boost/shared_ptr.hpp>
10
11 class GeomAPI_Pnt2d;
12 class GeomAPI_Dir2d;
13
14 /**\class GeomAPI_Circ2d
15  * \ingroup DataModel
16  * \brief Circle in 2D
17  */
18
19 class GEOMAPI_EXPORT GeomAPI_Circ2d: public GeomAPI_Interface
20 {
21 public:
22   /// Creation of circle defined by center point and circle radius
23   GeomAPI_Circ2d(const boost::shared_ptr<GeomAPI_Pnt2d>& theCenter,
24                  const boost::shared_ptr<GeomAPI_Pnt2d>& theCirclePoint);
25
26   /// Creation of circle defined by center point, direction and circle radius
27   GeomAPI_Circ2d(const boost::shared_ptr<GeomAPI_Pnt2d>& theCenter,
28                  const boost::shared_ptr<GeomAPI_Dir2d>& theDir,
29                  double theRadius);
30
31   /// Project point on line
32   const boost::shared_ptr<GeomAPI_Pnt2d> project(const boost::shared_ptr<GeomAPI_Pnt2d>& thePoint) const;
33 };
34
35 #endif
36