X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FBuildPlugin%2FBuildPlugin_Interpolation.h;h=91d5c9b10a6df934299b806de882994ca46169cc;hb=refs%2Fheads%2FCR35150;hp=a03b111abc65a82dcacbcd0d4e4f8204a6d9babf;hpb=c4eab94a20a0d93100549a210582d46409fec1cc;p=modules%2Fshaper.git diff --git a/src/BuildPlugin/BuildPlugin_Interpolation.h b/src/BuildPlugin/BuildPlugin_Interpolation.h index a03b111ab..91d5c9b10 100644 --- a/src/BuildPlugin/BuildPlugin_Interpolation.h +++ b/src/BuildPlugin/BuildPlugin_Interpolation.h @@ -1,4 +1,4 @@ -// Copyright (C) 2014-2019 CEA/DEN, EDF R&D +// Copyright (C) 2014-2023 CEA, EDF // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public @@ -40,6 +40,27 @@ public: return MY_ID; } + /// Attribute name of creation method. + inline static const std::string& CREATION_METHOD_ID() + { + static const std::string MY_CREATION_METHOD_ID("interpolation_method"); + return MY_CREATION_METHOD_ID; + } + + /// Attribute name of creation method by selection + inline static const std::string& CREATION_METHOD_BY_SELECTION_ID() + { + static const std::string MY_CREATION_METHOD_BY_SELECTION_ID("by_selection"); + return MY_CREATION_METHOD_BY_SELECTION_ID; + } + + /// Attribute name of creation method analytical + inline static const std::string& CREATION_METHOD_ANALYTICAL_ID() + { + static const std::string MY_CREATION_METHOD_ANALYTICAL_ID("analytical"); + return MY_CREATION_METHOD_ANALYTICAL_ID; + } + /// Attribute name of base objects. inline static const std::string& BASE_OBJECTS_ID() { @@ -82,9 +103,79 @@ public: return MY_TANGENT_END_ID; } + /// Attribute name of x(t) equation. + inline static const std::string& XT_ID() + { + static const std::string MY_XT_ID("xt"); + return MY_XT_ID; + } + + /// Attribute name of y(t) equation. + inline static const std::string& YT_ID() + { + static const std::string MY_YT_ID("yt"); + return MY_YT_ID; + } + + /// Attribute name of z(t) equation. + inline static const std::string& ZT_ID() + { + static const std::string MY_ZT_ID("zt"); + return MY_ZT_ID; + } + + /// Attribute name of min t. + inline static const std::string& MINT_ID() + { + static const std::string MY_MINT_ID("mint"); + return MY_MINT_ID; + } + + /// Attribute name of max t. + inline static const std::string& MAXT_ID() + { + static const std::string MY_MAXT_ID("maxt"); + return MY_MAXT_ID; + } + + /// Attribute of parameter name of variable + inline static const std::string& VARIABLE_ID() + { + static const std::string MY_VARIABLE_ID("variable"); + return MY_VARIABLE_ID; + } + + /// Attribute of parameter name of value + inline static const std::string& VALUE_ID() + { + static const std::string MY_VALUE_ID("value"); + return MY_VALUE_ID; + } + + /// Attribute of parameter expression error + inline static const std::string& EXPRESSION_ERROR_ID() + { + static const std::string MY_EXPRESSION_ERROR_ID("ExpressionError"); + return MY_EXPRESSION_ERROR_ID; + } + + /// Attribute name of number of steps + inline static const std::string& NUMSTEP_ID() + { + static const std::string MY_NUMSTEP_ID("numstep"); + return MY_NUMSTEP_ID; + } + /// Default value of the closed attribute inline static bool CLOSED_DEFAULT() { return false; } + /// List of references to the arguments of this expression + inline static const std::string& ARGUMENTS_ID() + { + static const std::string MY_ARGUMENTS_ID("arguments"); + return MY_ARGUMENTS_ID; + } + /// \return the kind of a feature. BUILDPLUGIN_EXPORT virtual const std::string& getKind() { @@ -97,6 +188,21 @@ public: /// Creates a new part document if needed. BUILDPLUGIN_EXPORT virtual void execute(); + + /// Called on change of any argument-attribute of this object. + /// \param[in] theID identifier of changed attribute. + BUILDPLUGIN_EXPORT virtual void attributeChanged(const std::string& theID); + + protected: + /// Evaluates the expression x(t), y(t),z(t) in value table. + void evaluate(std::string& theError); + + /// Update coordinates x,y,z + void updateCoordinates(); + + /// Output error for python interpreter + std::string outErrorMessage; + }; #endif