X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FFeaturesPlugin%2FFeaturesPlugin_ExtrusionBoolean.h;h=b9efd63f6f2fc7fa47dea7e517df0afd5735ef19;hb=33c5fdce3cd63dd95a738439a0399dd982abcd73;hp=a5963a348598bf8189a2a0ce43ff6f71f9e1335a;hpb=d25d525b4321bcc0c2559beb30966952cd0bcc6c;p=modules%2Fshaper.git diff --git a/src/FeaturesPlugin/FeaturesPlugin_ExtrusionBoolean.h b/src/FeaturesPlugin/FeaturesPlugin_ExtrusionBoolean.h index a5963a348..b9efd63f6 100644 --- a/src/FeaturesPlugin/FeaturesPlugin_ExtrusionBoolean.h +++ b/src/FeaturesPlugin/FeaturesPlugin_ExtrusionBoolean.h @@ -11,18 +11,27 @@ /** \class FeaturesPlugin_ExtrusionBoolean * \ingroup Plugins + * \brief Interface for the composite extrusion feature. */ class FeaturesPlugin_ExtrusionBoolean : public FeaturesPlugin_CompositeBoolean { public: - /// Attribute name of an object from which the extrusion grows. - inline static const std::string& FROM_OBJECT_ID() + + /// attribute name for creation method + inline static const std::string& CREATION_METHOD() { - static const std::string MY_FROM_OBJECT_ID("from_object"); - return MY_FROM_OBJECT_ID; + static const std::string METHOD_ATTR("CreationMethod"); + return METHOD_ATTR; + } + + /// attribute name of extrusion size + inline static const std::string& TO_SIZE_ID() + { + static const std::string MY_TO_SIZE_ID("to_size"); + return MY_TO_SIZE_ID; } - /// Attribute name of extrusion from size. + /// attribute name of extrusion size inline static const std::string& FROM_SIZE_ID() { static const std::string MY_FROM_SIZE_ID("from_size"); @@ -36,11 +45,25 @@ class FeaturesPlugin_ExtrusionBoolean : public FeaturesPlugin_CompositeBoolean return MY_TO_OBJECT_ID; } - /// Attribute name of extrusion to size. - inline static const std::string& TO_SIZE_ID() + /// attribute name of extrusion offset + inline static const std::string& TO_OFFSET_ID() { - static const std::string MY_TO_SIZE_ID("to_size"); - return MY_TO_SIZE_ID; + static const std::string MY_TO_OFFSET_ID("to_offset"); + return MY_TO_OFFSET_ID; + } + + /// Attribute name of an object from which the extrusion grows. + inline static const std::string& FROM_OBJECT_ID() + { + static const std::string MY_FROM_OBJECT_ID("from_object"); + return MY_FROM_OBJECT_ID; + } + + /// attribute name of extrusion offset + inline static const std::string& FROM_OFFSET_ID() + { + static const std::string MY_FROM_OFFSET_ID("from_offset"); + return MY_FROM_OFFSET_ID; } protected: @@ -48,7 +71,9 @@ protected: virtual void initMakeSolidsAttributes(); /// Create solids from faces with extrusion. - virtual ListOfShape MakeSolids(const ListOfShape& theFaces); + virtual void makeSolids(const ListOfShape& theFaces, + ListOfShape& theResults, + ListOfMakeShape& theAlgos); protected: FeaturesPlugin_ExtrusionBoolean(){};