$a$

平方差公式

$a$

$b$

$b$

$a-b$

$a-b$

$b$

$a-b$

$b$

$b$

$a-b$

$b$

$b$

Forward

t2 = 0 (slider from 0 to 1, step 0.01)
α = 0 rad (slider from 0 to 90*°, step 0.1*°)
t = 0 (slider from 0 to 0.5, step 0.01)
O = (5.98, 0.72)
r_1 = Ray(O, O + (1, 0))
A = Point(r_1)
a_1 = Segment(O, A)
C: A + (0, a_1)
D: O + C - A
a_3 = Segment(D, C)
B = Point(a_3)
E: C - (Distance[B, C], Distance[B, C])
G: (x(E), y(A))
poly1, o, g, b, d = Polygon(O, G, B, D)
F: (x(C), y(E))
poly2, a, c, e, f = Polygon(A, F, E, G)
poly3, h, i, j, k = Polygon(Translate[A, Vector[(t * Vector[(0, 0), (0, (-a) - b - 1)])]], Translate[F, Vector[(t * Vector[(0, 0), (0, (-a) - b - 1)])]], Translate[E, Vector[(t * Vector[(0, 0), (0, (-a) - b - 1)])]], Translate[G, Vector[(t * Vector[(0, 0), (0, (-a) - b - 1)])]])
E' = Translate(E, Vector[(t * Vector[(0, 0), (0, (-a) - b - 1)])])
poly4 = Rotate(poly3, (-α), E')
F' = Translate(F, Vector[(t * Vector[(0, 0), (0, (-a) - b - 1)])])
s = 0 (slider from 0 to 13, step 1)
a_2 = Segment(A, C)
a_4 = Segment(D, O)
b_0 = Segment(B, C)
b_1 = Segment(B, E)
b_2 = Segment(F, E)
b_3 = Segment(C, F)
c_1 = Segment(B, D)
d_0 = Segment(G, B)
A' = Translate(A, Vector[(t * Vector[(0, 0), (0, (-a) - b - 1)])])
G' = Translate(G, Vector[(t * Vector[(0, 0), (0, (-a) - b - 1)])])
e_1 = Segment(A', F')
e_2 = Segment(E', F')
e_3 = Segment(E', G')
poly5 = Translate(poly4, Vector[(t2 * Vector[(0, 0), (0, Distance[A, F'])])])
e_4 = Segment(A', G')
A'' = Rotate(A', (-α), E')
F'' = Rotate(F', (-α), E')
f_1 = Segment(A'', F'')
E'' = Rotate(E', (-α), E')
F''_1 = Rotate(F', (-α), E')
f_2 = Segment(E'', F''_1)
E''_1 = Rotate(E', (-α), E')
G'' = Rotate(G', (-α), E')
f_3 = Segment(E''_1, G'')
A''_1 = Rotate(A', (-α), E')
G''_1 = Rotate(G', (-α), E')
f_4 = Segment(A''_1, G''_1)
A''' = Translate(A'', Vector[(t2 * Vector[(0, 0), (0, Distance[A, F'])])])
F''' = Translate(F'', Vector[(t2 * Vector[(0, 0), (0, Distance[A, F'])])])
g_1 = Segment(A''', F''')
E''' = Translate(E'', Vector[(t2 * Vector[(0, 0), (0, Distance[A, F'])])])
H = Translate(F''_1, Vector[(t2 * Vector[(0, 0), (0, Distance[A, F'])])])
g_2 = Segment(E''', H)
I = Translate(E''_1, Vector[(t2 * Vector[(0, 0), (0, Distance[A, F'])])])
G''' = Translate(G'', Vector[(t2 * Vector[(0, 0), (0, Distance[A, F'])])])
g_3 = Segment(I, G''')
J = Translate(A''_1, Vector[(t2 * Vector[(0, 0), (0, Distance[A, F'])])])
K = Translate(G''_1, Vector[(t2 * Vector[(0, 0), (0, Distance[A, F'])])])
g_4 = Segment(J, K)
text2: "" + (LaTeX[If[s ≥ 5, "a^2"]]) + "" + (LaTeX[If[s ≥ 10, "-b^2"]]) + "" + (LaTeX[If[s ≥ 13, "=(a+b)(a-b)"]]) + ""
poly6, o_1, a_5, c_2, d_1 = Polygon(O, A, C, D)
poly7, c_3, b_4, e_5, f_5 = Polygon(C, B, E, F)
poly8, l, m, n, p, q, r = Polygon(O, A, F, E, B, D)