Salome HOME
Removed Sketch DOF from checking at Python dump as it may be changed unexpectedly
authordbv <dbv@opencascade.com>
Thu, 6 Apr 2017 08:57:01 +0000 (11:57 +0300)
committerdbv <dbv@opencascade.com>
Thu, 6 Apr 2017 08:57:20 +0000 (11:57 +0300)
src/ModelHighAPI/ModelHighAPI_FeatureStore.cpp
test.models/bearing_puller.py

index c42072510617eaa52e828893798bc993e3092c8b..a900563c41340d74b499127f6a463db76b8a2211 100644 (file)
@@ -187,6 +187,10 @@ std::string ModelHighAPI_FeatureStore::dumpAttr(const AttributePtr& theAttr) {
     aResult<<anAttr->value();
   } else if (aType == ModelAPI_AttributeString::typeId()) {
     AttributeStringPtr anAttr = std::dynamic_pointer_cast<ModelAPI_AttributeString>(theAttr);
+    // do not dump solver DOF for sketch as it may be changed unexpectedly
+    if(anAttr->id() == "SolverDOF") {
+      return "";
+    }
     aResult<<anAttr->value();
   } else if (aType == ModelAPI_AttributeReference::typeId()) {
     AttributeReferencePtr anAttr =
index 99b36f6b41cb7a7e8615f93dc7bbd49253d8493f..def5fb606a409486c900677be1de0dc2c4c346aa 100644 (file)
@@ -484,491 +484,11 @@ Extrusion_4 = model.addExtrusion(Part_2_doc, [model.selection("FACE", "Sketch_2/
 Boolean_7 = model.addCut(Part_2_doc, [model.selection("SOLID", "Boolean_1_1")], [model.selection("SOLID", "Extrusion_2_1")])
 Translation_1 = model.addTranslation(Part_2_doc, [model.selection("SOLID", "Boolean_2_1")], model.selection("VERTEX", "Sketch_2/Vertex-SketchArc_3_2s"), model.selection("VERTEX", "Sketch_2/Vertex-SketchLine_21e"))
 model.do()
-Part_3 = model.addPart(partSet)
+Part_3 = model.duplicatePart(Part_2)
 Part_3.setName("Arm 2")
-Part_3_doc = Part_3.document()
-model.addParameter(Part_3_doc, "a", "7.5")
-model.addParameter(Part_3_doc, "b", "12.5")
-model.addParameter(Part_3_doc, "c", "(a-b)/4")
-Sketch_6 = model.addSketch(Part_3_doc, model.defaultPlane("XOY"))
-SketchLine_51 = Sketch_6.addLine(-7.563632736215193e-032, -5.762896622594646, 0, 3.75)
-SketchLine_51.setAuxiliary(True)
-SketchLine_52 = Sketch_6.addLine(0, 3.75, 4.894344934278314, 2.394344934278312)
-SketchLine_52.setAuxiliary(True)
-SketchConstraintCoincidence_98 = Sketch_6.setCoincident(SketchLine_51.endPoint(), SketchLine_52.startPoint())
-SketchLine_53 = Sketch_6.addLine(4.894344934278314, 2.394344934278312, -7.563632736215193e-032, -5.762896622594646)
-SketchLine_53.setAuxiliary(True)
-SketchConstraintCoincidence_99 = Sketch_6.setCoincident(SketchLine_52.endPoint(), SketchLine_53.startPoint())
-SketchConstraintCoincidence_100 = Sketch_6.setCoincident(SketchLine_51.startPoint(), SketchLine_53.endPoint())
-SketchConstraintVertical_7 = Sketch_6.setVertical(SketchLine_51.result())
-SketchLine_54 = Sketch_6.addLine(0, 3.75, 6.25, 3.75)
-SketchLine_54.setAuxiliary(True)
-SketchConstraintCoincidence_101 = Sketch_6.setCoincident(SketchLine_51.endPoint(), SketchLine_54.startPoint())
-SketchConstraintCoincidence_102 = Sketch_6.setCoincident(SketchLine_52.startPoint(), SketchLine_54.startPoint())
-SketchLine_55 = Sketch_6.addLine(6.25, 3.75, 6.25, 0)
-SketchLine_55.setAuxiliary(True)
-SketchConstraintCoincidence_103 = Sketch_6.setCoincident(SketchLine_54.endPoint(), SketchLine_55.startPoint())
-SketchLine_56 = Sketch_6.addLine(6.25, 0, 0, 0)
-SketchLine_56.setAuxiliary(True)
-SketchConstraintCoincidence_104 = Sketch_6.setCoincident(SketchLine_55.endPoint(), SketchLine_56.startPoint())
-SketchConstraintCoincidence_105 = Sketch_6.setCoincident(SketchLine_56.endPoint(), SketchLine_51.result())
-SketchConstraintHorizontal_8 = Sketch_6.setHorizontal(SketchLine_56.result())
-SketchConstraintHorizontal_9 = Sketch_6.setHorizontal(SketchLine_54.result())
-SketchConstraintVertical_8 = Sketch_6.setVertical(SketchLine_55.result())
-SketchLine_57 = Sketch_6.addLine(-7.563632736215193e-032, -5.762896622594646, 2.447172467139156, 3.072172467139157)
-SketchLine_57.setAuxiliary(True)
-SketchConstraintCoincidence_106 = Sketch_6.setCoincident(SketchLine_51.startPoint(), SketchLine_57.startPoint())
-SketchConstraintCoincidence_107 = Sketch_6.setCoincident(SketchLine_53.endPoint(), SketchLine_57.startPoint())
-SketchConstraintCoincidence_108 = Sketch_6.setCoincident(SketchLine_57.endPoint(), SketchLine_52.result())
-SketchConstraintPerpendicular_3 = Sketch_6.setPerpendicular(SketchLine_57.result(), SketchLine_52.result())
-SketchPoint_5 = Sketch_6.addPoint(model.selection("VERTEX", "PartSet/Origin"))
-SketchConstraintCoincidence_109 = Sketch_6.setCoincident(SketchLine_56.endPoint(), SketchPoint_5.coordinates())
-SketchConstraintCoincidence_109.setName("SketchConstraintCoincidence_20")
-SketchConstraintLength_3 = Sketch_6.setLength(SketchLine_54.result(), "b/2")
-SketchConstraintLength_4 = Sketch_6.setLength(SketchLine_55.result(), "a/2")
-SketchCircle_8 = Sketch_6.addCircle(1.25, -1.25, 1.25)
-SketchCircle_8.setAuxiliary(True)
-SketchConstraintRadius_10 = Sketch_6.setRadius(SketchCircle_8.results()[1], "(b-a)/4")
-SketchConstraintTangent_9 = Sketch_6.setTangent(SketchCircle_8.results()[1], SketchLine_56.result())
-SketchConstraintTangent_10 = Sketch_6.setTangent(SketchCircle_8.results()[1], SketchLine_51.result())
-SketchConstraintTangent_11 = Sketch_6.setTangent(SketchCircle_8.results()[1], SketchLine_53.result())
-SketchConstraintCoincidence_110 = Sketch_6.setCoincident(SketchCircle_8.center(), SketchLine_57.result())
-SketchConstraintCoincidence_110.setName("SketchConstraintCoincidence_21")
-SketchLine_58 = Sketch_6.addLine(4.894344934278314, 2.394344934278312, 6.25, 0)
-SketchLine_58.setAuxiliary(True)
-SketchConstraintCoincidence_111 = Sketch_6.setCoincident(SketchLine_52.endPoint(), SketchLine_58.startPoint())
-SketchConstraintCoincidence_112 = Sketch_6.setCoincident(SketchLine_53.startPoint(), SketchLine_58.startPoint())
-SketchConstraintCoincidence_113 = Sketch_6.setCoincident(SketchLine_55.endPoint(), SketchLine_58.endPoint())
-SketchConstraintCoincidence_114 = Sketch_6.setCoincident(SketchLine_56.startPoint(), SketchLine_58.endPoint())
-SketchLine_59 = Sketch_6.addLine(0, 3.75, 6.25, 0)
-SketchLine_59.setName("SketchLine_10")
-SketchLine_59.result().setName("SketchLine_10")
-SketchLine_59.setAuxiliary(True)
-SketchConstraintCoincidence_115 = Sketch_6.setCoincident(SketchLine_51.endPoint(), SketchLine_59.startPoint())
-SketchConstraintCoincidence_115.setName("SketchConstraintCoincidence_23")
-SketchConstraintCoincidence_116 = Sketch_6.setCoincident(SketchLine_52.startPoint(), SketchLine_59.startPoint())
-SketchConstraintCoincidence_116.setName("SketchConstraintCoincidence_24")
-SketchConstraintCoincidence_117 = Sketch_6.setCoincident(SketchLine_54.startPoint(), SketchLine_59.startPoint())
-SketchConstraintCoincidence_117.setName("SketchConstraintCoincidence_25")
-SketchConstraintCoincidence_118 = Sketch_6.setCoincident(SketchLine_55.endPoint(), SketchLine_59.endPoint())
-SketchConstraintCoincidence_118.setName("SketchConstraintCoincidence_26")
-SketchConstraintCoincidence_119 = Sketch_6.setCoincident(SketchLine_56.startPoint(), SketchLine_59.endPoint())
-SketchConstraintCoincidence_119.setName("SketchConstraintCoincidence_27")
-SketchConstraintCoincidence_120 = Sketch_6.setCoincident(SketchLine_58.endPoint(), SketchLine_59.endPoint())
-SketchConstraintCoincidence_120.setName("SketchConstraintCoincidence_28")
-SketchConstraintPerpendicular_4 = Sketch_6.setPerpendicular(SketchLine_53.result(), SketchLine_59.result())
-SketchConstraintPerpendicular_4.setName("SketchConstraintPerpendicular_3")
-SketchLine_60 = Sketch_6.addLine(model.selection("EDGE", "PartSet/OY"))
-SketchLine_60.setName("SketchLine_11")
-SketchLine_60.result().setName("SketchLine_11")
-SketchLine_61 = Sketch_6.addLine(model.selection("EDGE", "PartSet/OX"))
-SketchLine_61.setName("SketchLine_12")
-SketchLine_61.result().setName("SketchLine_12")
-SketchArc_21 = Sketch_6.addArc(-7.563632736215193e-032, -5.762896622594646, 0, 3.75, 4.894344934278314, 2.394344934278312, True)
-SketchConstraintCoincidence_121 = Sketch_6.setCoincident(SketchLine_51.endPoint(), SketchArc_21.startPoint())
-SketchConstraintCoincidence_121.setName("SketchConstraintCoincidence_30")
-SketchConstraintCoincidence_122 = Sketch_6.setCoincident(SketchLine_52.startPoint(), SketchArc_21.startPoint())
-SketchConstraintCoincidence_122.setName("SketchConstraintCoincidence_31")
-SketchConstraintCoincidence_123 = Sketch_6.setCoincident(SketchLine_54.startPoint(), SketchArc_21.startPoint())
-SketchConstraintCoincidence_123.setName("SketchConstraintCoincidence_32")
-SketchConstraintCoincidence_124 = Sketch_6.setCoincident(SketchLine_59.startPoint(), SketchArc_21.startPoint())
-SketchConstraintCoincidence_124.setName("SketchConstraintCoincidence_33")
-SketchConstraintCoincidence_125 = Sketch_6.setCoincident(SketchArc_21.endPoint(), SketchLine_52.endPoint())
-SketchConstraintCoincidence_125.setName("SketchConstraintCoincidence_34")
-SketchConstraintCoincidence_126 = Sketch_6.setCoincident(SketchArc_21.center(), SketchLine_53.endPoint())
-SketchConstraintCoincidence_126.setName("SketchConstraintCoincidence_35")
-SketchArc_22 = Sketch_6.addArc(3.457737973711348, 3.788069295318559e-014, 6.25, 0, 4.894344934278314, 2.394344934278312, False)
-SketchArc_22.setName("SketchArc_4")
-SketchArc_22.result().setName("SketchArc_4")
-SketchArc_22.results()[1].setName("SketchArc_4_2")
-SketchConstraintCoincidence_127 = Sketch_6.setCoincident(SketchArc_22.startPoint(), SketchLine_56.startPoint())
-SketchConstraintCoincidence_127.setName("SketchConstraintCoincidence_48")
-SketchConstraintCoincidence_128 = Sketch_6.setCoincident(SketchArc_22.endPoint(), SketchArc_21.endPoint())
-SketchConstraintCoincidence_128.setName("SketchConstraintCoincidence_49")
-SketchConstraintMirror_3 = Sketch_6.addMirror(SketchLine_61.result(), [SketchArc_22.results()[1], SketchArc_21.results()[1]])
-[SketchArc_23, SketchArc_24] = SketchConstraintMirror_3.mirrored()
-SketchArc_24.setName("SketchArc_6")
-SketchArc_24.result().setName("SketchArc_6")
-SketchArc_24.results()[1].setName("SketchArc_6_2")
-SketchArc_23.setName("SketchArc_5")
-SketchArc_23.result().setName("SketchArc_5")
-SketchArc_23.results()[1].setName("SketchArc_5_2")
-SketchConstraintMirror_4_objects = [SketchArc_21.results()[1], SketchArc_22.results()[1], SketchArc_23.results()[1], SketchArc_24.results()[1]]
-SketchConstraintMirror_4 = Sketch_6.addMirror(SketchLine_60.result(), SketchConstraintMirror_4_objects)
-[SketchArc_25, SketchArc_26, SketchArc_27, SketchArc_28] = SketchConstraintMirror_4.mirrored()
-SketchArc_28.setName("SketchArc_10")
-SketchArc_28.result().setName("SketchArc_10")
-SketchArc_28.results()[1].setName("SketchArc_10_2")
-SketchArc_27.setName("SketchArc_9")
-SketchArc_27.result().setName("SketchArc_9")
-SketchArc_27.results()[1].setName("SketchArc_9_2")
-SketchArc_26.setName("SketchArc_8")
-SketchArc_26.result().setName("SketchArc_8")
-SketchArc_26.results()[1].setName("SketchArc_8_2")
-SketchArc_25.setName("SketchArc_7")
-SketchArc_25.result().setName("SketchArc_7")
-SketchArc_25.results()[1].setName("SketchArc_7_2")
 model.do()
-Sketch_7 = model.addSketch(Part_3_doc, model.defaultPlane("XOZ"))
-SketchArc_29 = Sketch_7.addArc(75, 0, 21.9522369740045, 53.01825004597796, 20.93617039352901, -51.98174995402206, False)
-SketchArc_29.setName("SketchArc_3")
-SketchArc_29.result().setName("SketchArc_3")
-SketchArc_29.results()[1].setName("SketchArc_3_2")
-SketchArc_29.setAuxiliary(True)
-SketchConstraintRadius_11 = Sketch_7.setRadius(SketchArc_29.results()[1], 75)
-SketchLine_62 = Sketch_7.addLine(model.selection("EDGE", "PartSet/OX"))
-SketchLine_62.setName("SketchLine_13")
-SketchLine_62.result().setName("SketchLine_13")
-SketchConstraintCoincidence_140 = Sketch_7.setCoincident(SketchArc_29.center(), SketchLine_62.result())
-SketchConstraintCoincidence_140.setName("SketchConstraintCoincidence_38")
-SketchConstraintCoincidence_141 = Sketch_7.setCoincident(SketchLine_62.startPoint(), SketchArc_29.results()[1])
-SketchConstraintCoincidence_141.setName("SketchConstraintCoincidence_39")
-SketchLine_63 = Sketch_7.addLine(16.9522369740045, -56.98174995402205, 16.9522369740045, -46.98174995402206)
-SketchLine_63.setName("SketchLine_14")
-SketchLine_63.result().setName("SketchLine_14")
-SketchLine_64 = Sketch_7.addLine(16.9522369740045, -46.98174995402206, 36.95223697400451, -46.98174995402206)
-SketchLine_64.setName("SketchLine_15")
-SketchLine_64.result().setName("SketchLine_15")
-SketchConstraintCoincidence_142 = Sketch_7.setCoincident(SketchLine_63.endPoint(), SketchLine_64.startPoint())
-SketchConstraintCoincidence_142.setName("SketchConstraintCoincidence_40")
-SketchLine_65 = Sketch_7.addLine(36.95223697400451, -46.98174995402206, 31.17873428210827, -56.98174995402205)
-SketchLine_65.setName("SketchLine_16")
-SketchLine_65.result().setName("SketchLine_16")
-SketchConstraintCoincidence_143 = Sketch_7.setCoincident(SketchLine_64.endPoint(), SketchLine_65.startPoint())
-SketchConstraintCoincidence_143.setName("SketchConstraintCoincidence_41")
-SketchLine_66 = Sketch_7.addLine(31.17873428210827, -56.98174995402205, 16.9522369740045, -56.98174995402205)
-SketchLine_66.setName("SketchLine_17")
-SketchLine_66.result().setName("SketchLine_17")
-SketchConstraintCoincidence_144 = Sketch_7.setCoincident(SketchLine_65.endPoint(), SketchLine_66.startPoint())
-SketchConstraintCoincidence_144.setName("SketchConstraintCoincidence_42")
-SketchConstraintCoincidence_145 = Sketch_7.setCoincident(SketchLine_63.startPoint(), SketchLine_66.endPoint())
-SketchConstraintCoincidence_145.setName("SketchConstraintCoincidence_43")
-SketchConstraintHorizontal_10 = Sketch_7.setHorizontal(SketchLine_64.result())
-SketchConstraintHorizontal_11 = Sketch_7.setHorizontal(SketchLine_66.result())
-SketchConstraintVertical_9 = Sketch_7.setVertical(SketchLine_63.result())
-SketchConstraintAngle_5 = Sketch_7.setAngleComplementary(SketchLine_65.result(), SketchLine_66.result(), 60.00000000000006)
-SketchConstraintDistance_20 = Sketch_7.setDistance(SketchLine_64.endPoint(), SketchLine_63.result(), 20)
-SketchConstraintDistance_21 = Sketch_7.setDistance(SketchLine_63.startPoint(), SketchLine_64.result(), 10)
-SketchLine_67 = Sketch_7.addLine(21.9522369740045, 53.01825004597796, 21.9522369740045, 0)
-SketchLine_67.setName("SketchLine_18")
-SketchLine_67.result().setName("SketchLine_18")
-SketchLine_67.setAuxiliary(True)
-SketchConstraintCoincidence_146 = Sketch_7.setCoincident(SketchArc_29.startPoint(), SketchLine_67.startPoint())
-SketchConstraintCoincidence_146.setName("SketchConstraintCoincidence_44")
-SketchConstraintCoincidence_147 = Sketch_7.setCoincident(SketchLine_67.endPoint(), SketchLine_62.result())
-SketchConstraintCoincidence_147.setName("SketchConstraintCoincidence_45")
-SketchConstraintVertical_10 = Sketch_7.setVertical(SketchLine_67.result())
-SketchConstraintDistance_22 = Sketch_7.setDistance(SketchLine_63.endPoint(), SketchLine_67.result(), 5)
-SketchConstraintDistance_23 = Sketch_7.setDistance(SketchArc_29.startPoint(), SketchLine_64.result(), 100)
-SketchCircle_9 = Sketch_7.addCircle(21.9522369740045, 53.01825004597796, 8)
-SketchConstraintCoincidence_148 = Sketch_7.setCoincident(SketchArc_29.startPoint(), SketchCircle_9.center())
-SketchConstraintCoincidence_148.setName("SketchConstraintCoincidence_46")
-SketchConstraintCoincidence_149 = Sketch_7.setCoincident(SketchLine_67.startPoint(), SketchCircle_9.center())
-SketchConstraintCoincidence_149.setName("SketchConstraintCoincidence_47")
-SketchConstraintRadius_12 = Sketch_7.setRadius(SketchCircle_9.results()[1], 8)
-SketchCircle_10 = Sketch_7.addCircle(21.9522369740045, 53.01825004597796, 4)
-SketchConstraintCoincidence_150 = Sketch_7.setCoincident(SketchArc_29.startPoint(), SketchCircle_10.center())
-SketchConstraintCoincidence_150.setName("SketchConstraintCoincidence_61")
-SketchConstraintCoincidence_151 = Sketch_7.setCoincident(SketchLine_67.startPoint(), SketchCircle_10.center())
-SketchConstraintCoincidence_151.setName("SketchConstraintCoincidence_62")
-SketchConstraintCoincidence_152 = Sketch_7.setCoincident(SketchCircle_9.center(), SketchCircle_10.center())
-SketchConstraintCoincidence_152.setName("SketchConstraintCoincidence_63")
-SketchConstraintRadius_13 = Sketch_7.setRadius(SketchCircle_10.results()[1], 4)
-SketchLine_68 = Sketch_7.addLine(21.9522369740045, 53.01825004597796, 39.68353296044558, 53.01825004597796)
-SketchLine_68.setName("SketchLine_19")
-SketchLine_68.result().setName("SketchLine_19")
-SketchLine_68.setAuxiliary(True)
-SketchConstraintCoincidence_153 = Sketch_7.setCoincident(SketchArc_29.startPoint(), SketchLine_68.startPoint())
-SketchConstraintCoincidence_153.setName("SketchConstraintCoincidence_64")
-SketchConstraintCoincidence_154 = Sketch_7.setCoincident(SketchLine_67.startPoint(), SketchLine_68.startPoint())
-SketchConstraintCoincidence_154.setName("SketchConstraintCoincidence_65")
-SketchConstraintCoincidence_155 = Sketch_7.setCoincident(SketchCircle_9.center(), SketchLine_68.startPoint())
-SketchConstraintCoincidence_155.setName("SketchConstraintCoincidence_66")
-SketchConstraintCoincidence_156 = Sketch_7.setCoincident(SketchCircle_10.center(), SketchLine_68.startPoint())
-SketchConstraintCoincidence_156.setName("SketchConstraintCoincidence_67")
-SketchConstraintHorizontal_12 = Sketch_7.setHorizontal(SketchLine_68.result())
-SketchConstraintDistance_24 = Sketch_7.setDistance(SketchArc_29.endPoint(), SketchLine_68.result(), 105)
-SketchLine_69 = Sketch_7.addLine(75, 0, 20.93617039352901, -51.98174995402206)
-SketchLine_69.setName("SketchLine_20")
-SketchLine_69.result().setName("SketchLine_20")
-SketchLine_69.setAuxiliary(True)
-SketchConstraintCoincidence_157 = Sketch_7.setCoincident(SketchArc_29.center(), SketchLine_69.startPoint())
-SketchConstraintCoincidence_157.setName("SketchConstraintCoincidence_68")
-SketchConstraintCoincidence_158 = Sketch_7.setCoincident(SketchArc_29.endPoint(), SketchLine_69.endPoint())
-SketchConstraintCoincidence_158.setName("SketchConstraintCoincidence_69")
-SketchLine_70 = Sketch_7.addLine(21.9522369740045, 53.01825004597796, 0, 10)
-SketchLine_70.setName("SketchLine_21")
-SketchLine_70.result().setName("SketchLine_21")
-SketchLine_70.setAuxiliary(True)
-SketchConstraintCoincidence_159 = Sketch_7.setCoincident(SketchArc_29.startPoint(), SketchLine_70.startPoint())
-SketchConstraintCoincidence_159.setName("SketchConstraintCoincidence_70")
-SketchConstraintCoincidence_160 = Sketch_7.setCoincident(SketchLine_67.startPoint(), SketchLine_70.startPoint())
-SketchConstraintCoincidence_160.setName("SketchConstraintCoincidence_71")
-SketchConstraintCoincidence_161 = Sketch_7.setCoincident(SketchCircle_9.center(), SketchLine_70.startPoint())
-SketchConstraintCoincidence_161.setName("SketchConstraintCoincidence_72")
-SketchConstraintCoincidence_162 = Sketch_7.setCoincident(SketchCircle_10.center(), SketchLine_70.startPoint())
-SketchConstraintCoincidence_162.setName("SketchConstraintCoincidence_73")
-SketchConstraintCoincidence_163 = Sketch_7.setCoincident(SketchLine_68.startPoint(), SketchLine_70.startPoint())
-SketchConstraintCoincidence_163.setName("SketchConstraintCoincidence_74")
-SketchLine_71 = Sketch_7.addLine(model.selection("EDGE", "PartSet/OZ"))
-SketchLine_71.setName("SketchLine_22")
-SketchLine_71.result().setName("SketchLine_22")
-SketchConstraintCoincidence_164 = Sketch_7.setCoincident(SketchLine_70.endPoint(), SketchLine_71.result())
-SketchConstraintCoincidence_164.setName("SketchConstraintCoincidence_75")
-SketchConstraintDistance_25 = Sketch_7.setDistance(SketchLine_70.endPoint(), SketchLine_62.result(), 10)
-model.do()
-Face_2 = model.addFace(Part_3_doc, [model.selection("WIRE", "Sketch_1/Wire-SketchArc_1_2f-SketchArc_4_2f-SketchArc_5_2f-SketchArc_6_2f-SketchArc_7_2f-SketchArc_8_2f-SketchArc_9_2f-SketchArc_10_2f")])
-Axis_5 = model.addAxis(Part_3_doc, model.selection("FACE", "PartSet/XOZ"), model.selection("VERTEX", "Sketch_2/Vertex-SketchArc_3-SketchLine_20s"))
-Rotation_4 = model.addRotation(Part_3_doc, [model.selection("FACE", "Face_1_1")], model.selection("EDGE", "Axis_1"), -43.8752)
-Pipe_2 = model.addPipe(Part_3_doc, [model.selection("FACE", "Rotation_1_1")], model.selection("EDGE", "Sketch_2/Edge-SketchArc_3_2"))
-Extrusion_5 = model.addExtrusion(Part_3_doc, [model.selection("WIRE", "Sketch_2/Wire-SketchCircle_2_2f"), model.selection("WIRE", "Sketch_2/Wire-SketchLine_14r-SketchLine_15r-SketchLine_16r-SketchLine_17r")], model.selection(), "Gap/2", "Gap/2")
-Boolean_8 = model.addFuse(Part_3_doc, [model.selection("SOLID", "Pipe_1_1")], [model.selection("SOLID", "Extrusion_1_1"), model.selection("SOLID", "Extrusion_1_2")])
-Extrusion_6 = model.addExtrusion(Part_3_doc, [model.selection("FACE", "Sketch_2/Face-SketchCircle_3_2f")], model.selection(), "Gap", "Gap")
-Boolean_9 = model.addCut(Part_3_doc, [model.selection("SOLID", "Boolean_1_1")], [model.selection("SOLID", "Extrusion_2_1")])
-Translation_2 = model.addTranslation(Part_3_doc, [model.selection("SOLID", "Boolean_2_1")], model.selection("VERTEX", "Sketch_2/Vertex-SketchArc_3_2s"), model.selection("VERTEX", "Sketch_2/Vertex-SketchLine_21e"))
-model.do()
-Part_4 = model.addPart(partSet)
+Part_4 = model.duplicatePart(Part_3)
 Part_4.setName("Arm 3")
-Part_4_doc = Part_4.document()
-model.addParameter(Part_4_doc, "a", "7.5")
-model.addParameter(Part_4_doc, "b", "12.5")
-model.addParameter(Part_4_doc, "c", "(a-b)/4")
-Sketch_8 = model.addSketch(Part_4_doc, model.defaultPlane("XOY"))
-SketchLine_72 = Sketch_8.addLine(-7.563632736215193e-032, -5.762896622594646, 0, 3.75)
-SketchLine_72.setAuxiliary(True)
-SketchLine_73 = Sketch_8.addLine(0, 3.75, 4.894344934278314, 2.394344934278312)
-SketchLine_73.setAuxiliary(True)
-SketchConstraintCoincidence_165 = Sketch_8.setCoincident(SketchLine_72.endPoint(), SketchLine_73.startPoint())
-SketchLine_74 = Sketch_8.addLine(4.894344934278314, 2.394344934278312, -7.563632736215193e-032, -5.762896622594646)
-SketchLine_74.setAuxiliary(True)
-SketchConstraintCoincidence_166 = Sketch_8.setCoincident(SketchLine_73.endPoint(), SketchLine_74.startPoint())
-SketchConstraintCoincidence_167 = Sketch_8.setCoincident(SketchLine_72.startPoint(), SketchLine_74.endPoint())
-SketchConstraintVertical_11 = Sketch_8.setVertical(SketchLine_72.result())
-SketchLine_75 = Sketch_8.addLine(0, 3.75, 6.25, 3.75)
-SketchLine_75.setAuxiliary(True)
-SketchConstraintCoincidence_168 = Sketch_8.setCoincident(SketchLine_72.endPoint(), SketchLine_75.startPoint())
-SketchConstraintCoincidence_169 = Sketch_8.setCoincident(SketchLine_73.startPoint(), SketchLine_75.startPoint())
-SketchLine_76 = Sketch_8.addLine(6.25, 3.75, 6.25, 0)
-SketchLine_76.setAuxiliary(True)
-SketchConstraintCoincidence_170 = Sketch_8.setCoincident(SketchLine_75.endPoint(), SketchLine_76.startPoint())
-SketchLine_77 = Sketch_8.addLine(6.25, 0, 0, 0)
-SketchLine_77.setAuxiliary(True)
-SketchConstraintCoincidence_171 = Sketch_8.setCoincident(SketchLine_76.endPoint(), SketchLine_77.startPoint())
-SketchConstraintCoincidence_172 = Sketch_8.setCoincident(SketchLine_77.endPoint(), SketchLine_72.result())
-SketchConstraintHorizontal_13 = Sketch_8.setHorizontal(SketchLine_77.result())
-SketchConstraintHorizontal_14 = Sketch_8.setHorizontal(SketchLine_75.result())
-SketchConstraintVertical_12 = Sketch_8.setVertical(SketchLine_76.result())
-SketchLine_78 = Sketch_8.addLine(-7.563632736215193e-032, -5.762896622594646, 2.447172467139156, 3.072172467139157)
-SketchLine_78.setAuxiliary(True)
-SketchConstraintCoincidence_173 = Sketch_8.setCoincident(SketchLine_72.startPoint(), SketchLine_78.startPoint())
-SketchConstraintCoincidence_174 = Sketch_8.setCoincident(SketchLine_74.endPoint(), SketchLine_78.startPoint())
-SketchConstraintCoincidence_175 = Sketch_8.setCoincident(SketchLine_78.endPoint(), SketchLine_73.result())
-SketchConstraintPerpendicular_5 = Sketch_8.setPerpendicular(SketchLine_78.result(), SketchLine_73.result())
-SketchPoint_6 = Sketch_8.addPoint(model.selection("VERTEX", "PartSet/Origin"))
-SketchConstraintCoincidence_176 = Sketch_8.setCoincident(SketchLine_77.endPoint(), SketchPoint_6.coordinates())
-SketchConstraintCoincidence_176.setName("SketchConstraintCoincidence_20")
-SketchConstraintLength_5 = Sketch_8.setLength(SketchLine_75.result(), "b/2")
-SketchConstraintLength_6 = Sketch_8.setLength(SketchLine_76.result(), "a/2")
-SketchCircle_11 = Sketch_8.addCircle(1.25, -1.25, 1.25)
-SketchCircle_11.setAuxiliary(True)
-SketchConstraintRadius_14 = Sketch_8.setRadius(SketchCircle_11.results()[1], "(b-a)/4")
-SketchConstraintTangent_12 = Sketch_8.setTangent(SketchCircle_11.results()[1], SketchLine_77.result())
-SketchConstraintTangent_13 = Sketch_8.setTangent(SketchCircle_11.results()[1], SketchLine_72.result())
-SketchConstraintTangent_14 = Sketch_8.setTangent(SketchCircle_11.results()[1], SketchLine_74.result())
-SketchConstraintCoincidence_177 = Sketch_8.setCoincident(SketchCircle_11.center(), SketchLine_78.result())
-SketchConstraintCoincidence_177.setName("SketchConstraintCoincidence_21")
-SketchLine_79 = Sketch_8.addLine(4.894344934278314, 2.394344934278312, 6.25, 0)
-SketchLine_79.setAuxiliary(True)
-SketchConstraintCoincidence_178 = Sketch_8.setCoincident(SketchLine_73.endPoint(), SketchLine_79.startPoint())
-SketchConstraintCoincidence_179 = Sketch_8.setCoincident(SketchLine_74.startPoint(), SketchLine_79.startPoint())
-SketchConstraintCoincidence_180 = Sketch_8.setCoincident(SketchLine_76.endPoint(), SketchLine_79.endPoint())
-SketchConstraintCoincidence_181 = Sketch_8.setCoincident(SketchLine_77.startPoint(), SketchLine_79.endPoint())
-SketchLine_80 = Sketch_8.addLine(0, 3.75, 6.25, 0)
-SketchLine_80.setName("SketchLine_10")
-SketchLine_80.result().setName("SketchLine_10")
-SketchLine_80.setAuxiliary(True)
-SketchConstraintCoincidence_182 = Sketch_8.setCoincident(SketchLine_72.endPoint(), SketchLine_80.startPoint())
-SketchConstraintCoincidence_182.setName("SketchConstraintCoincidence_23")
-SketchConstraintCoincidence_183 = Sketch_8.setCoincident(SketchLine_73.startPoint(), SketchLine_80.startPoint())
-SketchConstraintCoincidence_183.setName("SketchConstraintCoincidence_24")
-SketchConstraintCoincidence_184 = Sketch_8.setCoincident(SketchLine_75.startPoint(), SketchLine_80.startPoint())
-SketchConstraintCoincidence_184.setName("SketchConstraintCoincidence_25")
-SketchConstraintCoincidence_185 = Sketch_8.setCoincident(SketchLine_76.endPoint(), SketchLine_80.endPoint())
-SketchConstraintCoincidence_185.setName("SketchConstraintCoincidence_26")
-SketchConstraintCoincidence_186 = Sketch_8.setCoincident(SketchLine_77.startPoint(), SketchLine_80.endPoint())
-SketchConstraintCoincidence_186.setName("SketchConstraintCoincidence_27")
-SketchConstraintCoincidence_187 = Sketch_8.setCoincident(SketchLine_79.endPoint(), SketchLine_80.endPoint())
-SketchConstraintCoincidence_187.setName("SketchConstraintCoincidence_28")
-SketchConstraintPerpendicular_6 = Sketch_8.setPerpendicular(SketchLine_74.result(), SketchLine_80.result())
-SketchConstraintPerpendicular_6.setName("SketchConstraintPerpendicular_3")
-SketchLine_81 = Sketch_8.addLine(model.selection("EDGE", "PartSet/OY"))
-SketchLine_81.setName("SketchLine_11")
-SketchLine_81.result().setName("SketchLine_11")
-SketchLine_82 = Sketch_8.addLine(model.selection("EDGE", "PartSet/OX"))
-SketchLine_82.setName("SketchLine_12")
-SketchLine_82.result().setName("SketchLine_12")
-SketchArc_30 = Sketch_8.addArc(-7.563632736215193e-032, -5.762896622594646, 0, 3.75, 4.894344934278314, 2.394344934278312, True)
-SketchConstraintCoincidence_188 = Sketch_8.setCoincident(SketchLine_72.endPoint(), SketchArc_30.startPoint())
-SketchConstraintCoincidence_188.setName("SketchConstraintCoincidence_30")
-SketchConstraintCoincidence_189 = Sketch_8.setCoincident(SketchLine_73.startPoint(), SketchArc_30.startPoint())
-SketchConstraintCoincidence_189.setName("SketchConstraintCoincidence_31")
-SketchConstraintCoincidence_190 = Sketch_8.setCoincident(SketchLine_75.startPoint(), SketchArc_30.startPoint())
-SketchConstraintCoincidence_190.setName("SketchConstraintCoincidence_32")
-SketchConstraintCoincidence_191 = Sketch_8.setCoincident(SketchLine_80.startPoint(), SketchArc_30.startPoint())
-SketchConstraintCoincidence_191.setName("SketchConstraintCoincidence_33")
-SketchConstraintCoincidence_192 = Sketch_8.setCoincident(SketchArc_30.endPoint(), SketchLine_73.endPoint())
-SketchConstraintCoincidence_192.setName("SketchConstraintCoincidence_34")
-SketchConstraintCoincidence_193 = Sketch_8.setCoincident(SketchArc_30.center(), SketchLine_74.endPoint())
-SketchConstraintCoincidence_193.setName("SketchConstraintCoincidence_35")
-SketchArc_31 = Sketch_8.addArc(3.457737973711348, 3.788069295318559e-014, 6.25, 0, 4.894344934278314, 2.394344934278312, False)
-SketchArc_31.setName("SketchArc_4")
-SketchArc_31.result().setName("SketchArc_4")
-SketchArc_31.results()[1].setName("SketchArc_4_2")
-SketchConstraintCoincidence_194 = Sketch_8.setCoincident(SketchArc_31.startPoint(), SketchLine_77.startPoint())
-SketchConstraintCoincidence_194.setName("SketchConstraintCoincidence_48")
-SketchConstraintCoincidence_195 = Sketch_8.setCoincident(SketchArc_31.endPoint(), SketchArc_30.endPoint())
-SketchConstraintCoincidence_195.setName("SketchConstraintCoincidence_49")
-SketchConstraintMirror_5 = Sketch_8.addMirror(SketchLine_82.result(), [SketchArc_31.results()[1], SketchArc_30.results()[1]])
-[SketchArc_32, SketchArc_33] = SketchConstraintMirror_5.mirrored()
-SketchArc_33.setName("SketchArc_6")
-SketchArc_33.result().setName("SketchArc_6")
-SketchArc_33.results()[1].setName("SketchArc_6_2")
-SketchArc_32.setName("SketchArc_5")
-SketchArc_32.result().setName("SketchArc_5")
-SketchArc_32.results()[1].setName("SketchArc_5_2")
-SketchConstraintMirror_6_objects = [SketchArc_30.results()[1], SketchArc_31.results()[1], SketchArc_32.results()[1], SketchArc_33.results()[1]]
-SketchConstraintMirror_6 = Sketch_8.addMirror(SketchLine_81.result(), SketchConstraintMirror_6_objects)
-[SketchArc_34, SketchArc_35, SketchArc_36, SketchArc_37] = SketchConstraintMirror_6.mirrored()
-SketchArc_37.setName("SketchArc_10")
-SketchArc_37.result().setName("SketchArc_10")
-SketchArc_37.results()[1].setName("SketchArc_10_2")
-SketchArc_36.setName("SketchArc_9")
-SketchArc_36.result().setName("SketchArc_9")
-SketchArc_36.results()[1].setName("SketchArc_9_2")
-SketchArc_35.setName("SketchArc_8")
-SketchArc_35.result().setName("SketchArc_8")
-SketchArc_35.results()[1].setName("SketchArc_8_2")
-SketchArc_34.setName("SketchArc_7")
-SketchArc_34.result().setName("SketchArc_7")
-SketchArc_34.results()[1].setName("SketchArc_7_2")
-model.do()
-Sketch_9 = model.addSketch(Part_4_doc, model.defaultPlane("XOZ"))
-SketchArc_38 = Sketch_9.addArc(75, 0, 21.9522369740045, 53.01825004597796, 20.93617039352901, -51.98174995402206, False)
-SketchArc_38.setName("SketchArc_3")
-SketchArc_38.result().setName("SketchArc_3")
-SketchArc_38.results()[1].setName("SketchArc_3_2")
-SketchArc_38.setAuxiliary(True)
-SketchConstraintRadius_15 = Sketch_9.setRadius(SketchArc_38.results()[1], 75)
-SketchLine_83 = Sketch_9.addLine(model.selection("EDGE", "PartSet/OX"))
-SketchLine_83.setName("SketchLine_13")
-SketchLine_83.result().setName("SketchLine_13")
-SketchConstraintCoincidence_207 = Sketch_9.setCoincident(SketchArc_38.center(), SketchLine_83.result())
-SketchConstraintCoincidence_207.setName("SketchConstraintCoincidence_38")
-SketchConstraintCoincidence_208 = Sketch_9.setCoincident(SketchLine_83.startPoint(), SketchArc_38.results()[1])
-SketchConstraintCoincidence_208.setName("SketchConstraintCoincidence_39")
-SketchLine_84 = Sketch_9.addLine(16.9522369740045, -56.98174995402205, 16.9522369740045, -46.98174995402206)
-SketchLine_84.setName("SketchLine_14")
-SketchLine_84.result().setName("SketchLine_14")
-SketchLine_85 = Sketch_9.addLine(16.9522369740045, -46.98174995402206, 36.95223697400451, -46.98174995402206)
-SketchLine_85.setName("SketchLine_15")
-SketchLine_85.result().setName("SketchLine_15")
-SketchConstraintCoincidence_209 = Sketch_9.setCoincident(SketchLine_84.endPoint(), SketchLine_85.startPoint())
-SketchConstraintCoincidence_209.setName("SketchConstraintCoincidence_40")
-SketchLine_86 = Sketch_9.addLine(36.95223697400451, -46.98174995402206, 31.17873428210827, -56.98174995402205)
-SketchLine_86.setName("SketchLine_16")
-SketchLine_86.result().setName("SketchLine_16")
-SketchConstraintCoincidence_210 = Sketch_9.setCoincident(SketchLine_85.endPoint(), SketchLine_86.startPoint())
-SketchConstraintCoincidence_210.setName("SketchConstraintCoincidence_41")
-SketchLine_87 = Sketch_9.addLine(31.17873428210827, -56.98174995402205, 16.9522369740045, -56.98174995402205)
-SketchLine_87.setName("SketchLine_17")
-SketchLine_87.result().setName("SketchLine_17")
-SketchConstraintCoincidence_211 = Sketch_9.setCoincident(SketchLine_86.endPoint(), SketchLine_87.startPoint())
-SketchConstraintCoincidence_211.setName("SketchConstraintCoincidence_42")
-SketchConstraintCoincidence_212 = Sketch_9.setCoincident(SketchLine_84.startPoint(), SketchLine_87.endPoint())
-SketchConstraintCoincidence_212.setName("SketchConstraintCoincidence_43")
-SketchConstraintHorizontal_15 = Sketch_9.setHorizontal(SketchLine_85.result())
-SketchConstraintHorizontal_16 = Sketch_9.setHorizontal(SketchLine_87.result())
-SketchConstraintVertical_13 = Sketch_9.setVertical(SketchLine_84.result())
-SketchConstraintAngle_6 = Sketch_9.setAngleComplementary(SketchLine_86.result(), SketchLine_87.result(), 60.00000000000006)
-SketchConstraintDistance_26 = Sketch_9.setDistance(SketchLine_85.endPoint(), SketchLine_84.result(), 20)
-SketchConstraintDistance_27 = Sketch_9.setDistance(SketchLine_84.startPoint(), SketchLine_85.result(), 10)
-SketchLine_88 = Sketch_9.addLine(21.9522369740045, 53.01825004597796, 21.9522369740045, 0)
-SketchLine_88.setName("SketchLine_18")
-SketchLine_88.result().setName("SketchLine_18")
-SketchLine_88.setAuxiliary(True)
-SketchConstraintCoincidence_213 = Sketch_9.setCoincident(SketchArc_38.startPoint(), SketchLine_88.startPoint())
-SketchConstraintCoincidence_213.setName("SketchConstraintCoincidence_44")
-SketchConstraintCoincidence_214 = Sketch_9.setCoincident(SketchLine_88.endPoint(), SketchLine_83.result())
-SketchConstraintCoincidence_214.setName("SketchConstraintCoincidence_45")
-SketchConstraintVertical_14 = Sketch_9.setVertical(SketchLine_88.result())
-SketchConstraintDistance_28 = Sketch_9.setDistance(SketchLine_84.endPoint(), SketchLine_88.result(), 5)
-SketchConstraintDistance_29 = Sketch_9.setDistance(SketchArc_38.startPoint(), SketchLine_85.result(), 100)
-SketchCircle_12 = Sketch_9.addCircle(21.9522369740045, 53.01825004597796, 8)
-SketchConstraintCoincidence_215 = Sketch_9.setCoincident(SketchArc_38.startPoint(), SketchCircle_12.center())
-SketchConstraintCoincidence_215.setName("SketchConstraintCoincidence_46")
-SketchConstraintCoincidence_216 = Sketch_9.setCoincident(SketchLine_88.startPoint(), SketchCircle_12.center())
-SketchConstraintCoincidence_216.setName("SketchConstraintCoincidence_47")
-SketchConstraintRadius_16 = Sketch_9.setRadius(SketchCircle_12.results()[1], 8)
-SketchCircle_13 = Sketch_9.addCircle(21.9522369740045, 53.01825004597796, 4)
-SketchConstraintCoincidence_217 = Sketch_9.setCoincident(SketchArc_38.startPoint(), SketchCircle_13.center())
-SketchConstraintCoincidence_217.setName("SketchConstraintCoincidence_61")
-SketchConstraintCoincidence_218 = Sketch_9.setCoincident(SketchLine_88.startPoint(), SketchCircle_13.center())
-SketchConstraintCoincidence_218.setName("SketchConstraintCoincidence_62")
-SketchConstraintCoincidence_219 = Sketch_9.setCoincident(SketchCircle_12.center(), SketchCircle_13.center())
-SketchConstraintCoincidence_219.setName("SketchConstraintCoincidence_63")
-SketchConstraintRadius_17 = Sketch_9.setRadius(SketchCircle_13.results()[1], 4)
-SketchLine_89 = Sketch_9.addLine(21.9522369740045, 53.01825004597796, 39.68353296044558, 53.01825004597796)
-SketchLine_89.setName("SketchLine_19")
-SketchLine_89.result().setName("SketchLine_19")
-SketchLine_89.setAuxiliary(True)
-SketchConstraintCoincidence_220 = Sketch_9.setCoincident(SketchArc_38.startPoint(), SketchLine_89.startPoint())
-SketchConstraintCoincidence_220.setName("SketchConstraintCoincidence_64")
-SketchConstraintCoincidence_221 = Sketch_9.setCoincident(SketchLine_88.startPoint(), SketchLine_89.startPoint())
-SketchConstraintCoincidence_221.setName("SketchConstraintCoincidence_65")
-SketchConstraintCoincidence_222 = Sketch_9.setCoincident(SketchCircle_12.center(), SketchLine_89.startPoint())
-SketchConstraintCoincidence_222.setName("SketchConstraintCoincidence_66")
-SketchConstraintCoincidence_223 = Sketch_9.setCoincident(SketchCircle_13.center(), SketchLine_89.startPoint())
-SketchConstraintCoincidence_223.setName("SketchConstraintCoincidence_67")
-SketchConstraintHorizontal_17 = Sketch_9.setHorizontal(SketchLine_89.result())
-SketchConstraintDistance_30 = Sketch_9.setDistance(SketchArc_38.endPoint(), SketchLine_89.result(), 105)
-SketchLine_90 = Sketch_9.addLine(75, 0, 20.93617039352901, -51.98174995402206)
-SketchLine_90.setName("SketchLine_20")
-SketchLine_90.result().setName("SketchLine_20")
-SketchLine_90.setAuxiliary(True)
-SketchConstraintCoincidence_224 = Sketch_9.setCoincident(SketchArc_38.center(), SketchLine_90.startPoint())
-SketchConstraintCoincidence_224.setName("SketchConstraintCoincidence_68")
-SketchConstraintCoincidence_225 = Sketch_9.setCoincident(SketchArc_38.endPoint(), SketchLine_90.endPoint())
-SketchConstraintCoincidence_225.setName("SketchConstraintCoincidence_69")
-SketchLine_91 = Sketch_9.addLine(21.9522369740045, 53.01825004597796, 0, 10)
-SketchLine_91.setName("SketchLine_21")
-SketchLine_91.result().setName("SketchLine_21")
-SketchLine_91.setAuxiliary(True)
-SketchConstraintCoincidence_226 = Sketch_9.setCoincident(SketchArc_38.startPoint(), SketchLine_91.startPoint())
-SketchConstraintCoincidence_226.setName("SketchConstraintCoincidence_70")
-SketchConstraintCoincidence_227 = Sketch_9.setCoincident(SketchLine_88.startPoint(), SketchLine_91.startPoint())
-SketchConstraintCoincidence_227.setName("SketchConstraintCoincidence_71")
-SketchConstraintCoincidence_228 = Sketch_9.setCoincident(SketchCircle_12.center(), SketchLine_91.startPoint())
-SketchConstraintCoincidence_228.setName("SketchConstraintCoincidence_72")
-SketchConstraintCoincidence_229 = Sketch_9.setCoincident(SketchCircle_13.center(), SketchLine_91.startPoint())
-SketchConstraintCoincidence_229.setName("SketchConstraintCoincidence_73")
-SketchConstraintCoincidence_230 = Sketch_9.setCoincident(SketchLine_89.startPoint(), SketchLine_91.startPoint())
-SketchConstraintCoincidence_230.setName("SketchConstraintCoincidence_74")
-SketchLine_92 = Sketch_9.addLine(model.selection("EDGE", "PartSet/OZ"))
-SketchLine_92.setName("SketchLine_22")
-SketchLine_92.result().setName("SketchLine_22")
-SketchConstraintCoincidence_231 = Sketch_9.setCoincident(SketchLine_91.endPoint(), SketchLine_92.result())
-SketchConstraintCoincidence_231.setName("SketchConstraintCoincidence_75")
-SketchConstraintDistance_31 = Sketch_9.setDistance(SketchLine_91.endPoint(), SketchLine_83.result(), 10)
-model.do()
-Face_3 = model.addFace(Part_4_doc, [model.selection("WIRE", "Sketch_1/Wire-SketchArc_1_2f-SketchArc_4_2f-SketchArc_5_2f-SketchArc_6_2f-SketchArc_7_2f-SketchArc_8_2f-SketchArc_9_2f-SketchArc_10_2f")])
-Axis_6 = model.addAxis(Part_4_doc, model.selection("FACE", "PartSet/XOZ"), model.selection("VERTEX", "Sketch_2/Vertex-SketchArc_3-SketchLine_20s"))
-Rotation_5 = model.addRotation(Part_4_doc, [model.selection("FACE", "Face_1_1")], model.selection("EDGE", "Axis_1"), -43.8752)
-Pipe_3 = model.addPipe(Part_4_doc, [model.selection("FACE", "Rotation_1_1")], model.selection("EDGE", "Sketch_2/Edge-SketchArc_3_2"))
-Extrusion_7 = model.addExtrusion(Part_4_doc, [model.selection("WIRE", "Sketch_2/Wire-SketchCircle_2_2f"), model.selection("WIRE", "Sketch_2/Wire-SketchLine_14r-SketchLine_15r-SketchLine_16r-SketchLine_17r")], model.selection(), "Gap/2", "Gap/2")
-Boolean_10 = model.addFuse(Part_4_doc, [model.selection("SOLID", "Pipe_1_1")], [model.selection("SOLID", "Extrusion_1_1"), model.selection("SOLID", "Extrusion_1_2")])
-Extrusion_8 = model.addExtrusion(Part_4_doc, [model.selection("FACE", "Sketch_2/Face-SketchCircle_3_2f")], model.selection(), "Gap", "Gap")
-Boolean_11 = model.addCut(Part_4_doc, [model.selection("SOLID", "Boolean_1_1")], [model.selection("SOLID", "Extrusion_2_1")])
-Translation_3 = model.addTranslation(Part_4_doc, [model.selection("SOLID", "Boolean_2_1")], model.selection("VERTEX", "Sketch_2/Vertex-SketchArc_3_2s"), model.selection("VERTEX", "Sketch_2/Vertex-SketchLine_21e"))
 model.do()
 Translation_4 = model.addTranslation(partSet, [model.selection("COMPOUND", "Part_2/"), model.selection("COMPOUND", "Part_3/"), model.selection("COMPOUND", "Part_4/")], model.selection("EDGE", "OX"), -40)
 Rotation_6 = model.addRotation(partSet, [model.selection("COMPOUND", "Translation_1_2/")], model.selection("EDGE", "OZ"), 120)
@@ -976,6 +496,7 @@ Rotation_7 = model.addRotation(partSet, [model.selection("COMPOUND", "Translatio
 Part_5 = model.addPart(partSet)
 Part_5.setName("Rod part")
 Part_5_doc = Part_5.document()
+Parameter_H = model.addParameter(partSet, "H", "110")
 Sketch_10 = model.addSketch(Part_5_doc, model.defaultPlane("YOZ"))
 SketchLine_93 = Sketch_10.addLine(0, 25, 6, 25)
 SketchLine_94 = Sketch_10.addLine(6, 25, 6, -75)
@@ -998,7 +519,7 @@ SketchConstraintAngle_7 = Sketch_10.setAngle(SketchLine_97.result(), SketchLine_
 SketchConstraintDistance_32 = Sketch_10.setDistance(SketchLine_97.endPoint(), SketchLine_95.result(), 10)
 SketchConstraintDistance_33 = Sketch_10.setDistance(SketchLine_97.startPoint(), SketchLine_98.result(), 4)
 SketchConstraintLength_7 = Sketch_10.setLength(SketchLine_93.result(), "Rod/2")
-SketchConstraintDistance_34 = Sketch_10.setDistance(SketchLine_97.endPoint(), SketchLine_93.result(), 110)
+SketchConstraintDistance_34 = Sketch_10.setDistance(SketchLine_97.endPoint(), SketchLine_93.result(), "H")
 SketchPoint_7 = Sketch_10.addPoint(model.selection("VERTEX", "PartSet/Origin"))
 SketchConstraintCoincidence_238 = Sketch_10.setCoincident(SketchPoint_7.coordinates(), SketchLine_98.result())
 SketchLine_99 = Sketch_10.addLine(model.selection("EDGE", "PartSet/OY"))
@@ -1058,6 +579,12 @@ model.do()
 Revolution_3 = model.addRevolution(Part_5_doc, [model.selection("FACE", "Sketch_3/Face-SketchLine_14f-SketchLine_15f-SketchLine_16f")], model.selection("EDGE", "PartSet/OZ"), 360, 0)
 Boolean_12 = model.addCut(Part_5_doc, [model.selection("SOLID", "Extrusion_1_1")], [model.selection("SOLID", "Revolution_2_1")])
 Boolean_13 = model.addFuse(Part_5_doc, [model.selection("SOLID", "Boolean_1_1"), model.selection("SOLID", "Revolution_1_1")], [])
+
+# Test reexecution after parameter change
+Parameter_H.setValue(120)
+model.do()
+model.testResultsVolumes(Part_5, [19052.771316640515578910708427429])
+Parameter_H.setValue(110)
 model.do()
 model.end()