1 // Name : SketchAPI_Translation.h
5 // 16/06/16 - Sergey POKHODENKO - Creation of the file
7 #ifndef SRC_SKETCHAPI_SKETCHAPI_TRANSLATION_H_
8 #define SRC_SKETCHAPI_SKETCHAPI_TRANSLATION_H_
10 //--------------------------------------------------------------------------------------
11 #include "SketchAPI.h"
15 #include <SketchPlugin_MultiTranslation.h>
17 #include <ModelHighAPI_Interface.h>
18 #include <ModelHighAPI_Macro.h>
19 //--------------------------------------------------------------------------------------
20 class ModelAPI_Object;
21 class ModelHighAPI_Integer;
22 class ModelHighAPI_RefAttr;
23 //--------------------------------------------------------------------------------------
24 /**\class SketchAPI_Translation
26 * \brief Interface for Translation feature
28 class SketchAPI_Translation : public ModelHighAPI_Interface
31 /// Constructor without values
33 explicit SketchAPI_Translation(const std::shared_ptr<ModelAPI_Feature> & theFeature);
34 /// Constructor with values
36 SketchAPI_Translation(const std::shared_ptr<ModelAPI_Feature> & theFeature,
37 const std::list<std::shared_ptr<ModelAPI_Object> > & theObjects,
38 const ModelHighAPI_RefAttr & thePoint1,
39 const ModelHighAPI_RefAttr & thePoint2,
40 const ModelHighAPI_Integer & theNumberOfObjects,
41 bool theFullValue = false);
44 virtual ~SketchAPI_Translation();
46 INTERFACE_7(SketchPlugin_MultiTranslation::ID(),
47 translationList, SketchPlugin_MultiTranslation::TRANSLATION_LIST_ID(), ModelAPI_AttributeRefList, /** Translation list */,
48 startPoint, SketchPlugin_MultiTranslation::START_POINT_ID(), ModelAPI_AttributeRefAttr, /** Start point */,
49 endPoint, SketchPlugin_MultiTranslation::END_POINT_ID(), ModelAPI_AttributeRefAttr, /** Start point */,
50 numberOfObjects, SketchPlugin_MultiTranslation::NUMBER_OF_OBJECTS_ID(), ModelAPI_AttributeInteger, /** Number of objects */,
51 valueType, SketchPlugin_MultiTranslation::VALUE_TYPE(), ModelAPI_AttributeString, /** Value type */,
52 referenceObjects, SketchPlugin_MultiTranslation::ENTITY_A(), ModelAPI_AttributeRefList, /** Reference objects */,
53 translatedObjects, SketchPlugin_MultiTranslation::ENTITY_B(), ModelAPI_AttributeRefList, /** Translationed objects */
56 /// Dump wrapped feature
57 virtual void dump(ModelHighAPI_Dumper& theDumper) const;
60 //! Pointer on Translation object
61 typedef std::shared_ptr<SketchAPI_Translation> TranslationPtr;
63 //--------------------------------------------------------------------------------------
64 //--------------------------------------------------------------------------------------
65 #endif /* SRC_SKETCHAPI_SKETCHAPI_TRANSLATION_H_ */