A = (2.3, -6.04)
B = Point(Circle[A, 4])
f = segment(A, B)
g = Line(A, B)
h = OrthogonalLine(A, g)
i = OrthogonalLine(B, g)
c = Circle(A, 5)
C, D = Intersect(c, h)
j = OrthogonalLine(D, h)
E = Intersect(i, j)
q1, d, e, b, a = Polygon(D, E, B, A)
F = (0.66, 1.28)
k = Line(F, j)
G = Point(k)
q2, f_1, d_1, e_1, g_1 = Polygon(F, D, E, G)
H = Midpoint(D, A)
l = Line(H, j)
F' = Mirror(F, l)
D' = Mirror(D, l)
E' = Mirror(E, l)
G' = Mirror(G, l)
q2', f', d', e', g' = Polygon(F', D', E', G')
p = Circle(E, G)
I = Intersect(p, j, 1)
m = Line(I, e)
J = Intersect(m, g)
q = Circle(I, segment[G, F])
K = Intersect(q, j, 1)
n = Line(K, m)
L = Intersect(g, n)
r = Circle(D, F)
M = Intersect(r, j, 2)
s = Line(M, m)
N = Intersect(s, g)
q3, m_1, d_2, a_1, n_1 = Polygon(M, D, A, N)
q4, e_2, i_1, j_1, b_1 = Polygon(E, I, J, B)
q5, i_2, k_1, l_1, j_2 = Polygon(I, K, L, J)
t, h_1, p_1, q_1, r_1 = languette3(E, I)
s_1, t_1, c_1, f_2, g_2 = languette3(M, D)
c_2, h_2, k_2, l_2, m_2, n_2, p_2, q_2, r_2 = languette(D, F)
s_2, t_2, a_2, b_2, f_3, g_3, h_3, i_3, j_3 = languette(G, E)
c_3, d_3, k_3, l_3, m_3, n_3, p_3, q_3, r_3 = languette(F', A)
e_3, s_3, t_3, a_3, b_3, f_4, g_4, h_4, i_4 = languette(B, G')
j_4, k_4, l_4, m_4, n_4 = languette3(A, N)
p_4, q_4, r_4, s_4, t_4 = languette3(J, B)
a_4 = segment2(D, E)
b_4 = segment2(E, B)
c_4 = segment2(B, A)
d_4 = segment2(A, D)
e_4 = segment2(I, J)
c_5, f_5, g_5, h_5, i_5, j_5, k_5, l_5, m_5, n_5, p_5, q_5 = languettes(N, M)
d_5, r_5, s_5, t_5, a_5, b_5, e_5, f_6, g_6, h_6, i_6, j_6 = languettes(I, K)
c_6, k_6, l_6, m_6, n_6, p_6, q_6, r_6, s_6, t_6, a_6, b_6 = languettes(F, G)
d_6, e_6, f_7, g_7, h_7, i_7, j_7, k_7, l_7, m_7, n_7, p_7 = languettes(L, J)
c_7, q_7, r_7, s_7, t_7, a_7, b_7, d_7, e_7, f_8, g_8, h_8 = languettes(G', F')
c_8, i_8, j_8, k_8, l_8, m_8, n_8, p_8, q_8, r_8, s_8, t_8 = languettes(K, L)

Tool: segment-trait-plein (command segment)
segment[ <Point>, <Point> ]
Input: F, G
Output: g

g = Segment(F, G)

Tool: languette-ronde-1pour2 (command Languette1)
deux points
Input: A, B
Output: C, D, D', E, E', F, F', G, G', H, I, c, f, h, g, k, l

C = Midpoint(A, B)
D = Midpoint(A, C)
E = Midpoint(D, C)
F = Midpoint(D, E)
G = Midpoint(D, F)
D' = Mirror(D, C)
E' = Mirror(E, C)
F' = Mirror(F, C)
G' = Mirror(G, C)
c = Semicircle(D, D')
f = segment(G, G')
g = segment(G, A)
h = segment(G', B)
i = OrthogonalLine(G, g)
j = OrthogonalLine(G', h)
H = Intersect(c, i, 1)
I = Intersect(c, j, 1)
k = segment(H, G)
l = segment(I, G')

Tool: languette-trapeze-2pour1 (command languette2)
deux points [créés ou non]
Input: A, B
Output: i, j, k, l, m, n

poly1, f, g, h, C = Polygon(A, B, 3)
D = Midpoint(C, B)
E = Midpoint(B, D)
H = Midpoint(C, A)
I = Midpoint(H, A)
L = Midpoint(A, B)
M = Midpoint(L, B)
N = Midpoint(L, A)
l = segment(N, M)
m = segment(A, N)
n = segment(M, B)
i = segment(A, I)
j = segment(I, E)
k = segment(E, B)

Tool: languette-triangle-4pour3 (command languette3)
deux points [créés ou non]
Input: A, B
Output: h, j, l, i, k

B' = Rotate(B, 18°, A)
f = Ray(A, B')
A' = Rotate(A, -18°, B)
g = Ray(B, A')
C = Intersect(f, g)
D = Midpoint(A, B)
E = Midpoint(A, D)
F = Midpoint(D, B)
h = segment(A, C)
i = segment(C, B)
j = segment(B, F)
k = segment(F, E)
l = segment(E, A)

Tool: languette-triangle-arrondi-3pour4 (command languette)
deux points [créés ou non]
Input: A, B
Output: c_1, d, t, s, r, q, a, b, f_1

f, g, h, i, j = languette3(A, B)
C, D, E, F, G, H, I, J, K, L, M, c, k, l, m, n, p = Languette1(A, B)
N = Intersect(c, f, 1)
O = Intersect(c, i, 1)
P = Intersect(f, i)
Q = Intersect(f, n)
R = Intersect(i, p)
T = Intersect(n, m)
U = Intersect(p, l)
V = Intersect(c, m, 1)
Z = Midpoint(A, B)
d = CircleArc(Z, N, V)
q = segment(N, P)
r = segment(P, O)
s = segment(T, Q)
t = segment(U, R)
a = segment(A, J)
b = segment(K, B)
f_1 = segment(J, K)
c_1 = CircleArc(C, E, O)

Tool: languettes-ronde-trapeze (command languettes)
deux points (créés ou non]
Input: A, B
Output: c, f, g, h, i, j, k, l, m, n, p, q

C = Midpoint(A, B)
D, E, F, G, H, I, J, K, L, M, N, c, f, g, h, i, j = Languette1(A, C)
k, l, m, n, p, q = languette2(C, B)

Tool: ouverture-pour-languettes-1et3 (command ouverture)
ouverture[ <Point>, <Point> ]
Input: A, B
Output: f

C = Midpoint(A, B)
D = Midpoint(A, C)
E = Midpoint(C, B)
f = segment(D, E)

Tool: segment-pointillé (command segment2)
segment2[ <Point>, <Point> ]
Input: H, I
Output: h

h = segment(H, I)

Tool: languette-trapeze-colle (command languette5)
Input: J, K
Output: i, j, k, p

i, j, k, l, m, n = languette2(J, K)
p = segment(J, K)

Tool: languette-triangle-colle (command languette6)
Input: P, Q
Output: b, e, g_1

b, c, d, e, f_1 = languette3(P, Q)
g_1 = segment(P, Q)