Droite de Simson
Author: Daniel Mentrard

Sea ABC un triángulo y M un punto 
de la circunferencia circunscrita a ABC.

Entonces, las proyecciones ortogonales 
M_1, M_2 y M_3 de M sobre los lados del triángulo 
están alineadas. 

La recta que las contiene se llama 
recta de Simson del triángulo.

A = (1.975757575757579, -8.64242424242424)
B = (-3.824242424242421, 1.3242424242424249)
C = (12.109090909090913, 4.224242424242425)
P, c, a, b = Polygon(A, B, C)
d = Circle(B, A, C)
M = Point(d)
e = OrthogonalLine(M, a)
f = OrthogonalLine(M, c)
g = OrthogonalLine(M, b)
h = Line(A, B)
s = Line(B, C)
t = Line(C, A)
i = Line(A, B)
M_1 = Intersect(e, s)
M_2 = Intersect(g, t)
M_3 = Intersect(f, i)
k = Circle(M_1, 1.0)
p = Circle(M_2, 1.0)
q = Circle(M_3, 1.0)
G = Intersect(a, s)
H, I = Intersect(k, e)
J = Intersect(a, s)
K, L = Intersect(k, s)
N, O = Intersect(p, g)
Q, R = Intersect(p, t)
S, T = Intersect(q, i)
U, V = Intersect(q, f)
j = Line(L, e)
l = Line(Q, g)
m = Line(S, f)
n = Line(U, i)
W = Intersect(m, n)
r = Line(I, s)
a1 = Line(O, t)
Z = Intersect(r, j)
A1 = Intersect(a1, l)
b1 = Segment(M_3, B)
poly1, f_1, u, w, s_1 = Polygon(M_3, U, W, S)
poly2, i_1, z, l_1, d_1 = Polygon(I, Z, L, M_1)
poly3, e_1, q_1, a1_1, o = Polygon(M_2, Q, A1, O)
c1 = Line(N, b)
d1 = Line(Q, o)
B1 = Intersect(d1, c1)
poly4, n_1, e_2, q_2, b1_1 = Polygon(N, M_2, Q, B1)
e1 = Segment(M, M_1)
f1 = Segment(M, M_3)
g1 = Segment(M, M_2)
h1 = Segment(C, M_1)
i1 = Segment(M_2, A)
j1 = Line(M_3, M_1)