1 """Translation Interface
2 Author: Sergey Pokhodenko
3 Copyright (C) 2014-20xx CEA/DEN, EDF R&D
6 from model.roots import Interface
9 def addTranslation(part, *args):
10 """Add an Translation feature to the Part and return Translation.
12 Pass all args to Translation __init__ function.
15 feature = part.addFeature("Translation")
16 return Translation(feature, *args)
19 class Translation(Interface):
21 def __init__(self, feature, *args):
22 Interface.__init__(self, feature)
23 assert(self._feature.getKind() == "Translation")
25 self._main_objects = self._feature.data().selectionList("main_objects")
26 self._axis_object = self._feature.data().selection("axis_object")
27 self._distance = self._feature.data().real("distance")
29 assert(self._main_objects)
30 assert(self._axis_object)
31 assert(self._distance)
36 assert(len(args) == 3)
37 self.setMainObjects(args[0])
38 self.setAxisObject(args[1])
39 self.setDistance(args[2])
44 def setMainObjects(self, main_objects):
45 """Modify main_objects attribute of the feature.
49 self._fill_attribute(self._main_objects, main_objects)
52 def setAxisObject(self, axis_object):
53 """Modify axis_object attribute of the feature.
57 self._fill_attribute(self._axis_object, axis_object)
60 def setDistance(self, distance):
61 """Modify distance attribute of the feature.
65 self._fill_attribute(self._distance, distance)