Minimiser la longueur...Introduction à la notion de fonction
Author: Vincent MAILLE
Date: 20/05/2006

Pour quelle(s) position(s) du point M, la longueur KL est-elle minimale ?

A = (7.466583628961693, 5.164181755124901)
B = Point(Circle[A, 7])
L_1 = Rotate(B, 90*°, A)
a = Segment(A, B)
b = OrthogonalLine(A, a)
C = Dilate(L_1, 0.7142857142857143, A)
d = Segment(C, B)
M = Point(d)
h = OrthogonalLine(M, a)
K = Intersect(a, h)
p = Segment(A, K)
c = Segment(C, A)
g = OrthogonalLine(M, c)
L = Intersect(c, g)
n = Segment(A, L)
k: If[n < p, n, p] / 7
D = Dilate(L, k / n, A)
e = Circle(A, D)
i = Segment(K, M)
j = Segment(M, L)
l = LineBisector(A, K)
A' = Mirror(A, l)
D' = Mirror(D, l)
m = LineBisector(L, A)
A'_1 = Mirror(A, m)
D'_1 = Mirror(D, m)
q = Segment(K, L)
H = Rotate(L, 15*°, K)
J = Dilate(H, 0.1, K)
r = Segment(J, K)
J' = Mirror(J, q)
E' = Mirror(K, q)
s = Segment(J', E')
K_1 = Midpoint(K, L)
J'' = Mirror(J', K_1)
E'' = Mirror(E', K_1)
t = Segment(J'', E'')
J''' = Mirror(J'', q)
E''' = Mirror(E'', q)
b_1 = Segment(J''', E''')
abs = Length(Vector[C, M])
N: (abs, q)
F = Rotate(C, 90*°, B)
C' = Translate(C, Vector[F, B] / 20)
M' = Translate(M, Vector[F, B] / 20)
fl = Segment(C', M')
f1 = Dilate(Rotate[C', 15*°, M'], 0.1, M')
f = Segment(M', f1)
M'' = Mirror(M', fl)
f1' = Mirror(f1, fl)
a_1 = Segment(M'', f1')
I = Midpoint(C', M')
M''_1 = Mirror(M', I)
f1'_1 = Mirror(f1, I)
c_1 = Segment(M''_1, f1'_1)
M''' = Mirror(M'', I)
f1'' = Mirror(f1', I)
d_1 = Segment(M''', f1'')
N1: (abs, 0)
N2: (0, q)
e_1 = Segment(N2, N)
f_1 = Segment(N, N1)
T3: q + ""
g_1 = Circle(A, D)
O = Intersect(g_1, a, 1)
Q = Mirror(A, Midpoint[O, D])
P, q_1, o, a_2, d_2 = Polygon(Q, O, A, D)
Q' = Mirror(Q, LineBisector[A, K])
O' = Mirror(O, LineBisector[A, K])
A'_2 = Mirror(A, LineBisector[A, K])
D'_2 = Mirror(D, LineBisector[A, K])
P', q', o', a'_2, d'_2 = Polygon(Q', O', A'_2, D'_2)
Q'_1 = Mirror(Q, LineBisector[A, L])
O'_1 = Mirror(O, LineBisector[A, L])
A'_3 = Mirror(A, LineBisector[A, L])
D'_3 = Mirror(D, LineBisector[A, L])
P'', q'_1, o'_1, a'_3, d'_3 = Polygon(Q'_1, O'_1, A'_3, D'_3)
T4: abs + ""