1 // Name : SketchAPI_Mirror.h
5 // 16/06/16 - Sergey POKHODENKO - Creation of the file
7 #ifndef SRC_SKETCHAPI_SKETCHAPI_MIRROR_H_
8 #define SRC_SKETCHAPI_SKETCHAPI_MIRROR_H_
10 //--------------------------------------------------------------------------------------
11 #include "SketchAPI.h"
15 #include <SketchPlugin_ConstraintMirror.h>
17 #include "SketchAPI_SketchEntity.h"
18 //--------------------------------------------------------------------------------------
19 class ModelAPI_Object;
20 class ModelHighAPI_RefAttr;
21 //--------------------------------------------------------------------------------------
22 /**\class SketchAPI_Mirror
24 * \brief Interface for Mirror feature
26 class SketchAPI_Mirror : public SketchAPI_SketchEntity
29 /// Constructor without values
31 explicit SketchAPI_Mirror(const std::shared_ptr<ModelAPI_Feature> & theFeature);
32 /// Constructor with values
34 SketchAPI_Mirror(const std::shared_ptr<ModelAPI_Feature> & theFeature,
35 const ModelHighAPI_RefAttr & theMirrorLine,
36 const std::list<std::shared_ptr<ModelAPI_Object> > & theObjects);
39 virtual ~SketchAPI_Mirror();
41 INTERFACE_4(SketchPlugin_ConstraintMirror::ID(),
42 mirrorLine, SketchPlugin_ConstraintMirror::ENTITY_A(), ModelAPI_AttributeRefAttr, /** Mirror line */,
43 mirrorList, SketchPlugin_ConstraintMirror::MIRROR_LIST_ID(), ModelAPI_AttributeRefList, /** Mirror list */,
44 sourceObjects, SketchPlugin_ConstraintMirror::ENTITY_B(), ModelAPI_AttributeRefList, /** Source objects */,
45 mirroredObjects, SketchPlugin_ConstraintMirror::ENTITY_C(), ModelAPI_AttributeRefList, /** Mirrored objects */
50 //! Pointer on Mirror object
51 typedef std::shared_ptr<SketchAPI_Mirror> MirrorPtr;
53 //--------------------------------------------------------------------------------------
54 //--------------------------------------------------------------------------------------
55 #endif /* SRC_SKETCHAPI_SKETCHAPI_MIRROR_H_ */