-# 6.1. Projection des centres et de l'axe
- SketchProjection_1 = sketch.addProjection(model.selection("VERTEX", nom_centre_1), False)
- SketchProjection_1.execute(True)
- SketchPoint_1 = SketchProjection_1.createdFeature()
- SketchPoint_1.execute(True)
- sk_coo_x_1 = SketchAPI_Point(SketchPoint_1).coordinates().x()
- sk_coo_y_1 = SketchAPI_Point(SketchPoint_1).coordinates().y()
-
- SketchProjection_2 = sketch.addProjection(model.selection("VERTEX", nom_centre_2), False)
- SketchProjection_2.execute(True)
- SketchPoint_2 = SketchProjection_2.createdFeature()
- SketchPoint_2.execute(True)
- sk_coo_x_2 = SketchAPI_Point(SketchPoint_2).coordinates().x()
- sk_coo_y_2 = SketchAPI_Point(SketchPoint_2).coordinates().y()
-
- SketchProjection_3 = sketch.addProjection(model.selection("EDGE", nom_axe), False)
- SketchProjection_3.execute(True)
- SketchLine_0 = SketchProjection_3.createdFeature()
- SketchLine_0.execute(True)
-
-# 6.2. Lignes perpendiculaires à l'axe passant par les centres
- SketchLine_1 = sketch.addLine(sk_coo_x_1, sk_coo_y_1, sk_coo_x_1+rayon_1, sk_coo_y_1)
- SketchLine_1.execute(True)
- SketchLine_1.setAuxiliary(True)
- contrainte = sketch.setCoincident(SketchAPI_Point(SketchPoint_1).coordinates(), SketchLine_1.startPoint())
- contrainte.execute(True)
- contrainte = sketch.setPerpendicular(SketchLine_0.result(), SketchLine_1.result())
- contrainte.execute(True)
- contrainte = sketch.setLength(SketchLine_1.result(), nom_par_1)
- contrainte.execute(True)
-
- SketchLine_2 = sketch.addLine(sk_coo_x_2, sk_coo_y_2, sk_coo_x_2+rayon_2, sk_coo_y_2)
- SketchLine_2.execute(True)
- SketchLine_2.setAuxiliary(True)
- contrainte = sketch.setCoincident(SketchAPI_Point(SketchPoint_2).coordinates(), SketchLine_2.startPoint())
- contrainte.execute(True)
- contrainte = sketch.setPerpendicular(SketchLine_0.result(), SketchLine_2.result())
- contrainte.execute(True)
- contrainte = sketch.setLength(SketchLine_2.result(), nom_par_2)
- contrainte.execute(True)
-
-# 6.3. Ligne joignant les extrémités des précédentes et point milieu
- SketchLine_3 = sketch.addLine(sk_coo_x_1+rayon_1, sk_coo_y_1, sk_coo_x_2+rayon_2, sk_coo_y_2)
- SketchLine_3.execute(True)
- contrainte = sketch.setCoincident(SketchLine_3.startPoint(), SketchLine_1.endPoint())
- contrainte.execute(True)
- contrainte = sketch.setCoincident(SketchLine_3.endPoint(), SketchLine_2.endPoint())
- contrainte.execute(True)
- SketchLine_3.setAuxiliary(True)
- SketchPoint_3 = sketch.addPoint(sk_coo_x_1, sk_coo_y_1)
- SketchPoint_3.execute(True)
- contrainte = sketch.setMiddlePoint(SketchLine_3.result(), SketchPoint_3.coordinates())
- contrainte.execute(True)
-
-# 6.4. Ligne support de la future révolution
- SketchLine_4 = sketch.addLine(sk_coo_x_1+rayon_1, sk_coo_y_1, sk_coo_x_2+rayon_2, sk_coo_y_2)
- SketchLine_4.execute(True)
- contrainte = sketch.setMiddlePoint(SketchLine_4.result(), SketchPoint_3.coordinates())
- contrainte.execute(True)
- contrainte = sketch.setCoincident(SketchLine_1.endPoint(), SketchLine_4.result())
- contrainte.execute(True)
- contrainte = sketch.setLength(SketchLine_4.result(), "1.2*{}".format(nom_par_3))
- contrainte.execute(True)