1 // Copyright (C) 2014-20xx CEA/DEN, EDF R&D
3 // File: GeomAPI_Circ2d.h
4 // Created: 29 May 2014
5 // Author: Artem ZHIDKOV
7 #ifndef GeomAPI_Circ2d_H_
8 #define GeomAPI_Circ2d_H_
10 #include <GeomAPI_Interface.h>
16 /**\class GeomAPI_Circ2d
21 class GeomAPI_Circ2d : public GeomAPI_Interface
24 /// Creation of circle defined by center point and circle radius
26 GeomAPI_Circ2d(const std::shared_ptr<GeomAPI_Pnt2d>& theCenter,
27 const std::shared_ptr<GeomAPI_Pnt2d>& theCirclePoint);
29 /// Creation of circle defined by center point, direction and circle radius
31 GeomAPI_Circ2d(const std::shared_ptr<GeomAPI_Pnt2d>& theCenter,
32 const std::shared_ptr<GeomAPI_Dir2d>& theDir, double theRadius);
34 /// Return center of the circle
36 const std::shared_ptr<GeomAPI_Pnt2d> center() const;
38 /// Return radius of the circle
40 double radius() const;
42 /// Project point on line
44 const std::shared_ptr<GeomAPI_Pnt2d> project(
45 const std::shared_ptr<GeomAPI_Pnt2d>& thePoint) const;