]> SALOME platform Git repositories - modules/shaper.git/blob - src/PartSet/PartSet_Presentation.h
Salome HOME
refs #80 - Sketch base GUI: create/draw point, circle and arc
[modules/shaper.git] / src / PartSet / PartSet_Presentation.h
1 // File:        PartSet_Presentation.h
2 // Created:     02 Jun 2014
3 // Author:      Natalia ERMOLAEVA
4
5 #ifndef PartSet_Presentation_H
6 #define PartSet_Presentation_H
7
8 #include "PartSet.h"
9
10 #include <TopoDS_Shape.hxx>
11
12 #include <ModelAPI_Feature.h>
13
14 #include <boost/shared_ptr.hpp>
15
16 class Handle_AIS_InteractiveObject;
17
18 /*!
19  \class PartSet_Presentation
20  * \brief The operation for the sketch feature creation
21 */
22 class PARTSET_EXPORT PartSet_Presentation
23 {
24 public:
25   /// Creates AIS presentation for the given feature. It deals with features and
26   /// constraints presentations
27   /// \param theFeature a feature
28   /// \param theSketch a feature sketch
29   /// \param theShape a shape of the feature
30   /// \param thePrevious a previous AIS object
31   /// \return a created/changed AIS object with the feature parameters
32   static Handle_AIS_InteractiveObject createPresentation(
33                                               FeaturePtr theFeature,
34                                               FeaturePtr theSketch,
35                                               const TopoDS_Shape& theShape,
36                                               Handle_AIS_InteractiveObject thePreviuos);
37 protected:
38   /// Creates AIS presentation based on the given shape
39   /// \param theFeature a feature
40   /// \param theSketch a feature sketch
41   /// \param theShape a shape of the feature
42   /// \param thePrevious a previous AIS object
43   /// \return a created/changed AIS object with the feature parameters
44  static Handle_AIS_InteractiveObject createFeature(
45                                               FeaturePtr theFeature,
46                                               const TopoDS_Shape& theShape,
47                                               Handle_AIS_InteractiveObject thePreviuos);
48 };
49
50 #endif