X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FFeaturesAPI%2FFeaturesAPI_BooleanSmash.h;h=188079af7a55f592e84aa2d6c251c3154ff82eec;hb=660930f24994da13c3a3ac089abfbfa20cb9b109;hp=f9cadd6edfdbed06549ea6f95339dbbdf1d33eb9;hpb=97917d3698f5a2f7fc9596e7c755ff8f6751e373;p=modules%2Fshaper.git diff --git a/src/FeaturesAPI/FeaturesAPI_BooleanSmash.h b/src/FeaturesAPI/FeaturesAPI_BooleanSmash.h index f9cadd6ed..188079af7 100644 --- a/src/FeaturesAPI/FeaturesAPI_BooleanSmash.h +++ b/src/FeaturesAPI/FeaturesAPI_BooleanSmash.h @@ -1,4 +1,4 @@ -// Copyright (C) 2014-2019 CEA/DEN, EDF R&D +// Copyright (C) 2014-2022 CEA/DEN, EDF R&D // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public @@ -26,6 +26,7 @@ #include #include +#include class ModelHighAPI_Integer; class ModelHighAPI_Selection; @@ -44,17 +45,20 @@ public: FEATURESAPI_EXPORT FeaturesAPI_BooleanSmash(const std::shared_ptr& theFeature, const std::list& theMainObjects, - const std::list& theToolObjects); + const std::list& theToolObjects, + const ModelHighAPI_Double& theFuzzy = ModelHighAPI_Double(1.e-8)); /// Destructor. FEATURESAPI_EXPORT virtual ~FeaturesAPI_BooleanSmash(); - INTERFACE_2(FeaturesPlugin_BooleanSmash::ID(), + INTERFACE_3(FeaturesPlugin_BooleanSmash::ID(), mainObjects, FeaturesPlugin_BooleanSmash::OBJECT_LIST_ID(), ModelAPI_AttributeSelectionList, /** Main objects */, toolObjects, FeaturesPlugin_BooleanSmash::TOOL_LIST_ID(), - ModelAPI_AttributeSelectionList, /** Tool objects*/) + ModelAPI_AttributeSelectionList, /** Tool objects*/, + fuzzyParam, FeaturesPlugin_BooleanSmash::FUZZY_PARAM_ID(), + ModelAPI_AttributeDouble, /** Fuzzy parameter */) /// Set main objects. FEATURESAPI_EXPORT @@ -64,6 +68,10 @@ public: FEATURESAPI_EXPORT void setToolObjects(const std::list& theToolObjects); + /// Set fuzzy parameter. + FEATURESAPI_EXPORT + void setFuzzyValue(const ModelHighAPI_Double& theFuzzy); + /// Dump wrapped feature FEATURESAPI_EXPORT virtual void dump(ModelHighAPI_Dumper& theDumper) const; @@ -77,6 +85,8 @@ typedef std::shared_ptr BooleanSmashPtr; FEATURESAPI_EXPORT BooleanSmashPtr addSmash(const std::shared_ptr& thePart, const std::list& theMainObjects, - const std::list& theToolObjects); + const std::list& theToolObjects, + const ModelHighAPI_Double& fuzzyParam = ModelHighAPI_Double(1.e-8), + const bool keepSubResults = false); #endif // FeaturesAPI_BooleanSmash_H_