cubique de Thompson

A = (2.9400000000000004, 4.9)
B = (0.5000000000000001, 0.9)
C = (5.820000000000001, -1.1400000000000001)
poly1, c, a, b = Polygon(A, B, C)
H = Orthocentre(A, B, C)
d = Circle(A, B, C)
O = Center(d)
e = Cinscrit(A, B, C)
I = Center(e)
D = Midpoint(c)
E = Midpoint(a)
F = Midpoint(b)
f = AngularBisector(C, B, A)
g = AngularBisector(A, C, B)
h = OrthogonalLine(B, f)
i = OrthogonalLine(C, g)
Jc = Intersect(g, h)
Jb = Intersect(f, i)
Ja = Intersect(h, i)
j = Line(B, F)
j' = Mirror(j, f)
k = Line(C, D)
k' = Mirror(k, g)
K = Intersect(j', k')
G: (A + B + C) / 3
l = AngularBisector(B, A, C)
Ic = Intersect(g, c)
Ib = Intersect(f, b)
Ia = Intersect(l, a)
ct = ImplicitCurve({A, B, C, D, E, F, Ja, Jb, Jc})
m = OrthogonalLine(A, a)
n = OrthogonalLine(B, b)
p = OrthogonalLine(C, c)
q = Line(A, B)
r = Line(B, C)
s = Line(C, A)
H1 = Intersect(r, m)
H2 = Intersect(p, q)
H3 = Intersect(n, s)
t = Circle(D, A)
c_1 = Circle(E, B)
d_1 = Circle(F, C)
a_1 = Line(A, E)
b_1 = Line(B, F)
e_1 = Line(C, D)
I1, I2 = Intersect(t, e_1)
I3, I4 = Intersect(d_1, b_1)
I5, I6 = Intersect(c_1, a_1)
f_1 = Line(A, B)
g_1 = Line(B, C)
h_1 = Conique2Tgtes(g_1, H1, f_1, H2, H3)
F1, F2 = Focus(h_1)
o = ImplicitCurve({A, B, C, I, Ja, Jb, Jc, G, H, H1, H2, H3, I1, I2, I3, I4, I5, I6, F1, F2})

Tool: Ellipse from segment and point on segment (command Ellipsefromsegmentandpointonsegment)
Creates an ellipse from a segment and a point on the segment
Input: a, C
Output: loc1, loc2

A = (-5.98, 5.320000000000002)
B = (-3.5999999999999996, 4.440000000000002)
a = Segment(A, B)
b = OrthogonalLine(A, a)
c = OrthogonalLine(C, a)
d = OrthogonalLine(B, a)
e = Line(C, a)
f = Circle(C, A)
g = Circle(B, C)
D = Intersect(f, c, 2)
E = Intersect(g, d, 2)
h = Line(D, E)
F = Intersect(h, e)
i = OrthogonalLine(F, e)
k = Circle(F, C)
G = Intersect(k, b, 2)
j = OrthogonalLine(G, b)
H = Intersect(i, j)
p = Circle(F, H)
I = Point(k)
l = Line(F, I)
J = Intersect(p, l, 2)
m = OrthogonalLine(J, i)
n = OrthogonalLine(I, e)
K = Intersect(m, n)
loc1 = Locus(K, I)
L = Intersect(k, d, 2)
q = OrthogonalLine(L, d)
M = Intersect(i, q)
r = Circle(F, M)
N = Point(k)
s = Line(F, N)
O = Intersect(r, s, 2)
t = OrthogonalLine(O, i)
a_1 = OrthogonalLine(N, e)
P = Intersect(t, a_1)
loc2 = Locus(P, N)

Tool: Orthocentre
Sélectionner 3 points
Input: A, B, C
Output: D

poly1, c, a, b = Polygon(A, B, C)
d = OrthogonalLine(B, b)
e = OrthogonalLine(A, a)
D = Intersect(d, e)

Tool: Cercle circonscrit (command Cerclecirconscrit)
Sélectionner 3 points
Input: A, B, C
Output: f

poly1, c, a, b = Polygon(A, B, C)
d = LineBisector(c)
e = LineBisector(b)
D = Intersect(d, e)
f = Circle(D, B)

Tool: Cercle inscrit (command Cinscrit)
Sélectionner 3 points
Input: A, B, C
Output: k

poly1, c, a, b = Polygon(A, B, C)
f = AngularBisector(C, A, B)
h = AngularBisector(A, B, C)
D = Intersect(f, h)
i = OrthogonalLine(D, c)
I = Intersect(c, i)
k = Circle(D, I)

Tool: Centre de gravité (command CentreGravité)
Sélectionner 3 points
Input: A, B, C
Output: L

J = Midpoint(B, C)
K = Midpoint(A, C)
p = Segment(A, J)
q = Segment(B, K)
L = Intersect(p, q)

Tool: Conique2Tgtes
Input: a, A, b, B, C
Output: k

A = Point(a)
B = Point(b)
c = Line(B, C)
M = Point(c)
K = Intersect(a, b)
d = Line(K, M)
e = Line(C, A)
L = Intersect(d, e)
f = Line(A, M)
g = Line(B, L)
D = Intersect(f, g)
G = Point(e)
h = Line(K, G)
H = Intersect(c, h)
i = Line(A, H)
j = Line(B, G)
E = Intersect(i, j)
k = Conic(A, B, C, D, E)