Merci à Cédric pour l'idée

base = 7 (slider from 1 to 10, step 1)
P1 = Sequence((0 + i, 0), i, 0, base)
S1 = Sequence(Segment[(0 + i, 0), (1 + i, 0)], i, 0, base - 1)
gauche = 1.2217304763960306 rad (slider from 0 to 180*°, step 0.017453292519943295)
allumg = 2 (slider from 0 to 7, step 1)
A = Intersect(xAxis, yAxis)
P2 = Rotate(Element[P1, 2], gauche, A)
droite = 1.0471975511965976 rad (slider from 0 to 180*°, step 0.017453292519943295)
P3 = Rotate(Element[P1, base], -droite, Element[P1, base + 1])
allumd = 4 (slider from 0 to 7, step 1)
a = Segment(Element[P1, base + 1], P3)
b = Segment(Element[P1, 1], P2)
b' = Mirror(b, P2)
B = Point(P1)
B' = Mirror(B, P2)
P2' = Mirror(P2, B')
B'' = Mirror(B', P2')
P2'' = Mirror(P2', B'')
B''' = Mirror(B'', P2'')
P2''' = Mirror(P2'', B''')
c = Segment(B', P2')
d = Segment(P2', B'')
e = Segment(B'', P2'')
f = Segment(P2'', B''')
g = Segment(B''', P2''')
C = Point(P1)
C' = Mirror(Element[P1, base + 1], P3)
P3' = Mirror(P3, C')
C'' = Mirror(C', P3')
P3'' = Mirror(P3', C'')
C''' = Mirror(C'', P3'')
P3''' = Mirror(P3'', C''')
h = Segment(P3, C')
i = Segment(C', P3')
j = Segment(P3', C'')
k = Segment(C'', P3'')
l = Segment(P3'', C''')
m = Segment(C''', P3''')