Quadratura del cerchio per trascinamento

a = 180 (slider from 0 to 180)
A: (2, 2)
c = Circle(A, 2)
B = Point(c)
B' = Rotate(B, ((-a))°, A)
f = Arc(c, B', B)
d = If(a ≤ 90, x(B'), 2 + x(B'))
C: (2, 2)
D: (2 + f, 2)
u = Vector(A, D)
c' = Translate(c, u)
b: x(B)
e = CircleSector(A, B', B)
g = Length(f)
E = Intersect(c, xAxis)
F = Intersect(c', xAxis)
G = Point(c')
i = Tangent(G, c')
H = Intersect(i, xAxis)
h = Semicircle(H, E)
j = OrthogonalLine(D, xAxis)
I = Intersect(j, xAxis)
J = Intersect(h, j)
poli1, k, l, m, n, K, L = Polygon(I, J, 4)
r: y(G)
t = Segment(L, K)
v = Length(t)
w: v^(2) / 4