2 Author: Sergey Pokhodenko
3 Copyright (C) 2014-20xx CEA/DEN, EDF R&D
6 from model.roots import Interface
9 def addParameter(part, *args):
10 """Add a Parameter feature to the Part and return Parameter.
12 Pass all args to Parameter __init__ function.
14 feature = part.addFeature("Parameter")
15 return Parameter(feature, *args)
18 class Parameter(Interface):
19 """Interface on a Parameter feature."""
21 def __init__(self, feature, *args):
22 """Initialize a Parameter feature with given parameters.
24 Expected arguments for all modes:
25 feature -- a Parameter feature
27 For initialization (expect 2 arguments):
29 expression -- Python expression
31 Interface.__init__(self, feature)
32 assert(self._feature.getKind() == "Parameter")
34 self._variable = self._feature.data().selection("variable")
35 self._expression = self._feature.data().real("expression")
37 assert(self._variable)
38 assert(self._expression)
43 assert(len(args) == 2)
45 self.setExpression(args[1])
48 def setName(self, name):
49 """Modify variable name attribute of the feature.
53 self._fill_attribute(self._name, name)
56 def setExpression(self, expression):
57 """Modify expression attribute of the feature.
61 self._fill_attribute(self._expression, expression)