X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FFeaturesAPI%2FFeaturesAPI_ExtrusionBoolean.h;h=4894c5fc809258ec63d191f4683eeb1fc85bef10;hb=aee09da348319d21259bee81c45d00a08f657de0;hp=390a955cbf4ddc7859f53fca37b5152c9f909e26;hpb=e2e1b927dc9767f699d6d245de62cf43efa5580a;p=modules%2Fshaper.git diff --git a/src/FeaturesAPI/FeaturesAPI_ExtrusionBoolean.h b/src/FeaturesAPI/FeaturesAPI_ExtrusionBoolean.h index 390a955cb..4894c5fc8 100644 --- a/src/FeaturesAPI/FeaturesAPI_ExtrusionBoolean.h +++ b/src/FeaturesAPI/FeaturesAPI_ExtrusionBoolean.h @@ -9,7 +9,6 @@ #include "FeaturesAPI.h" -#include #include #include @@ -17,6 +16,7 @@ #include class ModelHighAPI_Double; +class ModelHighAPI_Reference; class ModelHighAPI_Selection; /// \class FeaturesAPI_ExtrusionBoolean @@ -30,7 +30,7 @@ public: virtual ~FeaturesAPI_ExtrusionBoolean(); INTERFACE_11("", - sketchLauncher, FeaturesPlugin_Extrusion::SKETCH_ID(), ModelAPI_AttributeReference, /** Sketch launcher */, + sketch, FeaturesPlugin_Extrusion::SKETCH_ID(), ModelAPI_AttributeReference, /** Sketch launcher */, baseObjects, FeaturesPlugin_Extrusion::BASE_OBJECTS_ID(), ModelAPI_AttributeSelectionList, /** Base objects */, direction, FeaturesPlugin_Extrusion::DIRECTION_OBJECT_ID(), ModelAPI_AttributeSelection, /** Direction */, creationMethod, FeaturesPlugin_Extrusion::CREATION_METHOD(), ModelAPI_AttributeString, /** Creation method */, @@ -42,6 +42,10 @@ public: fromOffset, FeaturesPlugin_Extrusion::FROM_OFFSET_ID(), ModelAPI_AttributeDouble, /** From offset */, booleanObjects, FeaturesPlugin_CompositeBoolean::OBJECTS_ID(), ModelAPI_AttributeSelectionList, /** Boolean objects */) + /// Modify base attribute of the feature. + FEATURESAPI_EXPORT + void setNestedSketch(const ModelHighAPI_Reference& theSketch); + /// Modify base attribute of the feature. FEATURESAPI_EXPORT void setBase(const std::list& theBaseObjects); @@ -69,19 +73,33 @@ public: FEATURESAPI_EXPORT void setBooleanObjects(const std::list& theBooleanObjects); + /// Dump wrapped feature + FEATURESAPI_EXPORT + virtual void dump(ModelHighAPI_Dumper& theDumper) const; + protected: /// Constructor without values. FEATURESAPI_EXPORT explicit FeaturesAPI_ExtrusionBoolean(const std::shared_ptr& theFeature); + +private: + void execIfBaseNotEmpty(); }; +/// \class FeaturesAPI_ExtrusionCut +/// \ingroup CPPHighAPI +/// \brief Interface for ExtrusionCut feature. class FeaturesAPI_ExtrusionCut: public FeaturesAPI_ExtrusionBoolean { public: - FEATURESAPI_EXPORT - virtual std::string getID() { - return FeaturesPlugin_ExtrusionCut::ID(); - } + + static std::string ID() { return FeaturesPlugin_ExtrusionCut::ID(); } + virtual std::string getID() { return ID(); } + + //FEATURESAPI_EXPORT + //virtual std::string getID() { + // return FeaturesPlugin_ExtrusionCut::ID(); + //} /// Constructor without values. FEATURESAPI_EXPORT @@ -203,13 +221,14 @@ ExtrusionCutPtr addExtrusionCut(const std::shared_ptr& thePar const ModelHighAPI_Double& theFromOffset, const std::list& theBooleanObjects); +/// \class FeaturesAPI_ExtrusionFuse +/// \ingroup CPPHighAPI +/// \brief Interface for ExtrusionFuse feature. class FeaturesAPI_ExtrusionFuse: public FeaturesAPI_ExtrusionBoolean { public: - FEATURESAPI_EXPORT - virtual std::string getID() { - return FeaturesPlugin_ExtrusionFuse::ID(); - } + static std::string ID() { return FeaturesPlugin_ExtrusionFuse::ID(); } + virtual std::string getID() { return ID(); } /// Constructor without values. FEATURESAPI_EXPORT