Generalizzazione del teorema di Pitagora.
Costruiamo sui lati di un triangolo rettangolo 
tre triangoli rettangoli simili, allora la somma 
delle aree di quelli costruiti sui cateti è uguale
all'area di quello costruito sull'ipotenusa.

A = (1.64, 0.52)
B_1 = (2.46, 0.52)
f = Line(A, B_1)
g = OrthogonalLine(A, f)
C = Point(g)
B = Point(f)
t1, d, a, c = Polygon(A, C, B)
α = Angle(B, A, C)
h = OrthogonalLine(C, a)
D = Point(h)
t2, d_1, b, c_1 = Polygon(B, C, D)
β = Angle(B, C, D)
i = OrthogonalLine(C, d)
j = OrthogonalLine(B, c)
k: b / a
e = Circle(C, (d * k))
E = Intersect(e, i, 2)
t3, a_1, c_2, e_1 = Polygon(C, E, A)
p = Circle(B, (c * k))
F = Intersect(p, j, 2)
t4, a_2, b_1, f_1 = Polygon(B, F, A)
γ = Angle(E, C, A)
δ = Angle(A, B, F)
Testot2: "Area di  " + (Name[B]) + (Name[C]) + (Name[D]) + " = " + t2
Puntot2 = PointIn(t2)
Testot3: "Area di  " + (Name[C]) + (Name[E]) + (Name[A]) + " = " + t3
Puntot3 = PointIn(t3)
Testot4: "Area di  " + (Name[B]) + (Name[F]) + (Name[A]) + " = " + t4
Puntot4 = PointIn(t4)
testo1: "" + Testot4 + "+" + Testot3 + "=" + Testot2 + ""

Tool: Circocerchio
Clicca sul triangolo
Input: poly1
Output: p, T

A = (-1.9867180309718853, 3.399206189848298)
B = (-3.080683477006394, 1.9442321466224008)
C = (-0.6192612234287485, 1.9004735287810202)
poly1, c, a, b = Polygon(A, B, C)
j = LineBisector(a)
l = LineBisector(c)
T = Intersect(j, l)
p = Circle(T, B)

Tool: Circonferenza inscrita (command Circonferenzainscrita)
Clicca sui vertici del triangolo
Input: N, P, Q
Output: c_1, R

poly2, q_1, n_1, p_1 = Polygon(N, P, Q)
r = AngularBisector(N, Q, P)
s = AngularBisector(P, N, Q)
R = Intersect(r, s)
t = OrthogonalLine(R, p_1)
S = Intersect(t, p_1)
c_1 = Circle(R, S)

Tool: Ortocentro
Clicca sui vertici del triangolo
Input: E_1, F_1, G_1
Output: H_1

j_1 = Line(F_1, G_1)
l_1 = Line(G_1, E_1)
m_1 = OrthogonalLine(F_1, l_1)
n_1 = OrthogonalLine(E_1, j_1)
H_1 = Intersect(m_1, n_1)