Axe orthique et tangentes
Author: Patrice Debart

V = (7.610945918828866, -1.2075239088596852)
O = (3.205022300829743, -1.0244374653939678)
c = Circle(O, V)
A = Point(c)
C = Point(c)
B = Point(c)
ABC, AB, BC, AC = Polygon(A, B, C)
h_3 = OrthogonalLine(C, Line[A, B])
h_2 = OrthogonalLine(B, Line[A, C])
dBC = Line(C, B)
B_1 = Intersect(h_2, Line[A, C])
C_1 = Intersect(h_3, Line[A, B])
h = Line(B_1, C_1)
h_1 = OrthogonalLine(A, Line[C, B])
A_2 = Intersect(c, h_1, 2.0)
B_2 = Intersect(c, h_2, 2.0)
C_2 = Intersect(c, h_3, 2.0)
H = Intersect(h_1, h_2)
A' = Midpoint(B, C)
B' = Midpoint(A, C)
C' = Midpoint(A, B)
Ω = Midpoint(O, H)
c' = Circle(Ω, B')
A_1 = Intersect(h_1, Line[C, B])
d_1 = Line(A_1, C_1)
e_1 = Line(A_1, B_1)
dAC = Line(C, A)
dAB = Line(B, A)
P = Intersect(dBC, h)
Q = Intersect(d_1, dAC)
R = Intersect(e_1, dAB)
Δ = Line(P, Q)
M = Point(c)
dMH = Line(M, H)
M' = Intersect(c', dMH, 2.0)
MM' = Segment(M, M')
g = OrthogonalLine(M, Segment[M, O])
m = OrthogonalLine(M', Line[M', Ω])
Δ' = Line(O, H)
S = Intersect(g, m)
A'' = Midpoint(H, A)
B'' = Midpoint(H, B)
C'' = Midpoint(H, C)