Salome HOME
Issue #273: Add copyright string
[modules/shaper.git] / src / GeomAPI / GeomAPI_Curve.h
1 // Copyright (C) 2014-20xx CEA/DEN, EDF R&D
2
3 // File:        GeomAPI_Curve.hxx
4 // Created:     04 Sep 2014
5 // Author:      Mikhail PONIKAROV
6
7 #ifndef GeomAPI_Curve_H_
8 #define GeomAPI_Curve_H_
9
10 #include <GeomAPI_Shape.h>
11 #include <memory>
12
13 /**\class GeomAPI_Curve
14  * \ingroup DataModel
15  * \brief Interface to the generic curve object
16  */
17
18 class GEOMAPI_EXPORT GeomAPI_Curve : public GeomAPI_Interface
19 {
20  public:
21   /// Creation of empty (null) shape
22   GeomAPI_Curve();
23
24   /// Creates a curve from the shape (edge)
25   GeomAPI_Curve(const std::shared_ptr<GeomAPI_Shape>& theShape);
26
27   /// Returns true if curve is not initialized
28   bool isNull() const;
29
30   /// Returns whether the curve is linear
31   virtual bool isLine() const;
32
33   /// Returns whether the curve is circular
34   virtual bool isCircle() const;
35
36 };
37
38 #endif