Dynamic Demonstration of the '2-Squares-Theorem'
Loading the math board and drawing, please wait…
This example dynamically illustrates the well-known '2-Squares-Theorem', visually showcasing the geometric principles through transformations. It involves core mathematical concepts such as translation, cosine rule, dilation, 3D vectors, and arithmetic mean. The construction leverages GeoGebra commands and objects like Polygon, Segment, Dilate, Rotate, Circle, Ray, Intersect, Point, OrthogonalLine, Line, Midpoint, CircleArc, CircleSector, Vector, Translate, Angle, and Mirror as detailed in the construction summary. Suitable for high school and above students to explore geometric transformations and theorem proofs dynamically.
GeoGebra Commands & Parameters
Polygon(A, B_2, 4) → poly1, a, b, c, d, C, DSegment(B_2, C) → hDilate(A, If[0 < e ≤ 1, 1 - e, 0], B_2) → A'Rotate(A', If[1 < e ≤ 2, ((-(e - 1)) * π / 2), -1.5707963267948966], B_2) → A''Rotate(A'', If[2 < e ≤ 3, ((-(e - 2)) * π / 2), -1.5707963267948966], C) → A'''Rotate(A, If[1 < e ≤ 2, ((-(e - 1)) * π / 2), -1.5707963267948966], B_2) → A'_1Rotate(A'_1, If[2 < e ≤ 3, ((-(e - 2)) * π / 2), -1.5707963267948966], C) → RSegment(R, A''') → f''Segment(A, B_2) → gCircle(B_2, g) → q_2Ray(A, B_2) → m_2Intersect(q_2, m_2, 2) → J_1Segment(B_2, J_1) → n_2Point(n_2) → K_1Segment(B_2, K_1) → r_2Circle(K_1, r_2) → t_2OrthogonalLine(K_1, r_2) → s_2Intersect(t_2, s_2, 2) → L_1OrthogonalLine(L_1, h) → f_3Intersect(f_3, h) → M_1Dilate(A, If[17 < e ≤ 18, 18 - e, 0], M_1) → A'_4Segment(A, A'_4) → j_3Line(K_1, M_1) → i_2Intersect(i_2, f'') → V_1OrthogonalLine(V_1, j_3) → n_3Intersect(n_3, j_3) → C_2Midpoint(A, C) → VCircleArc(V, C, D) → g_2Point(g_2) → BSegment(C, B) → j_1Segment(A, B) → nIntersect(n, f'') → ZSegment(B, Z) → l_1Segment(A, A') → fSegment(A'_1, A'') → f'Segment(C, D) → iCircle(B_2, (0.2 * r_2)) → pSegment(D, A) → jCircle(C, Radius[p]) → kCircle(A, (0.1 * j)) → qCircle(D, (0.1 * j)) → rSegment(A, C) → lSegment(D, B_2) → mIntersect(r, j, 1) → FIntersect(r, m, 1) → GIntersect(r, i, 1) → HIntersect(k, i, 1) → IIntersect(k, l, 1) → JIntersect(k, h, 1) → KIntersect(p, h, 1) → LIntersect(p, m, 1) → MIntersect(p, g, 1) → NIntersect(q, g, 1) → OIntersect(q, l, 1) → PIntersect(q, j, 1) → QCircleSector(B_2, L, N) → sRotate(R, If[3 < e ≤ 4, ((-(e - 3)) * π / 2), -1.5707963267948966], D) → R'Rotate(A''', If[3 < e ≤ 4, ((-(e - 3)) * π / 2), -1.5707963267948966], D) → SSegment(R', S) → f'''Dilate(B_2, If[4 < e ≤ 5, 5 - e, 0], C) → B'Vector(B_2, B') → uTranslate(s, u) → s'Rotate(s', If[5 < e ≤ 6, ((e - 5) * π / 2), 1.5707963267948966], C) → s''Dilate(C, If[6 < e ≤ 7, 7 - e, 0], D) → C'Vector(C, C') → vTranslate(s'', v) → s'''Rotate(s''', If[7 < e ≤ 8, ((e - 7) * π / 2), 1.5707963267948966], D) → tDilate(D, If[8 < e ≤ 9, 9 - e, 0], A) → D'Vector(D, D') → wTranslate(t, w) → t'Rotate(t', If[9 < e ≤ 10, ((e - 9) * π / 2), 1.5707963267948966], A) → t''Dilate(B_2, If[18 < e ≤ 19, 19 - e, 0], C) → B'_1Dilate(B_2, If[18 < e ≤ 19, 19 - e, 0], A) → B'_2Dilate(B_2, If[18 < e ≤ 19, 19 - e, 0], D) → B'_3Vector(B_2, B'_1) → v_1Vector(B_2, B'_3) → w_1Vector(B_2, B'_2) → i_1Circle(A, n - j_1) → h_2Dilate(B, If[10 < e ≤ 11, 11 - e, 0], C) → W'Dilate(B_2, If[13 < e ≤ 14, 14 - e, 0], B) → B'_4Vector(B_2, B'_4) → u_1Translate(s, u_1) → s'_1Line(B, f') → a_1Point(a_1) → UAngle(U, B, C) → αRotate(B, If[14 < e ≤ 15, ((-(e - 14)) * π / 2), ((-π)) / 2], B) → W'_2Rotate(W', If[14 < e ≤ 15, ((-(e - 14)) * π / 2), ((-π)) / 2], B) → W''Line(A, B_2) → h_1Angle(B, A, D) → βDilate(D, If[19 < e ≤ 20, 20 - e, 0], B) → D'_1Mirror(C, D) → C'_1Rotate(C, ((-π)) / 3, B_2) → C'_2Segment(B_2, C'_2) → f_1Segment(C, C'_2) → g_1Intersect(k, g_1, 1) → EIntersect(k, h) → T,CircleSector(C, T, E) → d_1Rotate(D, 15°, C) → D'_2Angle(D, C, D'_2) → γRay(C, D'_2) → k_1Rotate(C, (-(15°)), D) → C'_3Angle(C'_3, D, C) → δRay(D, C'_3) → m_1Intersect(k_1, m_1) → WRotate(B_2, If[10 < e ≤ 11, (((-π)) / 3 * (e - 10)), ((-π)) / 3], B_2) → A_1Rotate(C, If[10 < e ≤ 11, (((-π)) / 3 * (e - 10)), ((-π)) / 3], B_2) → C'_4Rotate(B_2, If[11 < e ≤ 12, (π / 3 * (e - 11)), π / 3], C) → B_1Rotate(C, If[11 < e ≤ 12, (π / 3 * (e - 11)), π / 3], C) → C'_5Rotate(E, If[12 < e ≤ 13, (((-π)) / 6 * (e - 12)), ((-π)) / 6], C) → E'Polygon(C, W, D) → poly2, d_2, c_2, w_2Polygon(A, W, D) → poly3, d_3, a_2, w_3Polygon(B_2, W, C) → poly4, c_3, b_2, w_4Polygon(A, B_2, W) → poly5, w_5, a_3, b_1Rotate(T, 15°, C) → T'Angle(T, C, T') → εRay(C, T') → q_1Dilate(C, If[21 < e ≤ 22, 22 - e, 0], D) → C'_8Vector(C, C'_8) → u_2Dilate(D, If[23 < e ≤ 24, 24 - e, 0], W) → D'_3Dilate(C, If[23 < e ≤ 24, 24 - e, 0], W) → C'_9Dilate(B_2, If[25 < e ≤ 26, 26 - e, 0], W) → G_1Dilate(A, If[25 < e ≤ 26, 26 - e, 0], W) → A'_2Segment(A, A'_2) → j_2Segment(B_2, G_1) → l_2Rotate(B_2, If[26.75 < e ≤ 27.75, (π / 2 * (e - 26.75)), π / 2], B_2) → H_1Rotate(C'_2, If[26.75 < e ≤ 27.75, (π / 2 * (e - 26.75)), π / 2], B_2) → I_1Rotate(C, If[26.75 < e ≤ 27.75, (π / 2 * (e - 26.75)), π / 2], B_2) → C'_{10}Polygon(H_1, I_1, C'_{10}) → poly6', c'_{10}, h_3, i_3Dilate(B_2, If[10 < e ≤ 11, 11 - e, 0], K_1) → C_1Segment(B_2, C_1) → n_1Rotate(B_2, If[11 < e ≤ 12, ((-(e - 11)) * π / 2), ((-π)) / 2], K_1) → D_1Rotate(C_1, If[11 < e ≤ 12, ((-(e - 11)) * π / 2), ((-π)) / 2], K_1) → E_1Segment(D_1, E_1) → p_1Rotate(D_1, If[12 < e ≤ 13, ((-(e - 12)) * π / 2), ((-π)) / 2], L_1) → F_1Rotate(E_1, If[12 < e ≤ 13, ((-(e - 12)) * π / 2), ((-π)) / 2], L_1) → N_1Segment(F_1, N_1) → r_1Rotate(F_1, If[13 < e ≤ 14, ((-(e - 13)) * π / 2), ((-π)) / 2], M_1) → O_1Rotate(N_1, If[13 < e ≤ 14, ((-(e - 13)) * π / 2), ((-π)) / 2], M_1) → P_1Segment(O_1, P_1) → s_1Polygon(B_2, K_1, L_1, M_1) → poly6, b_3, k_2, l_3, m_3Dilate(B_2, If[14 < e ≤ 15, 15 - e, 0], K_1) → Q_1Vector(B_2, Q_1) → c_1Translate(s, c_1) → s'_2Segment(C, K_1) → e_1Line(A, M_1) → t_1Intersect(t_1, e_1) → R_1Segment(A, R_1) → f_2Dilate(C, If[15 < e ≤ 16, 16 - e, 0], K_1) → C'_6Dilate(A, If[16 < e ≤ 17, 17 - e, 0], M_1) → A'_3Dilate(M_1, If[17 < e ≤ 18, 18 - e, 0], R_1) → S_1Dilate(B_2, If[18 < e ≤ 19, 19 - e, 0], C_2) → T_1Vector(B_2, T_1) → v_2Translate(s, v_2) → s'_3Line(R_1, p_1) → g_3Point(g_3) → U_1Angle(U_1, R_1, K_1) → ζPolygon(A, B_2, C, D) → poly7, a_4, b_4, c_4, d_4Dilate(K_1, If[15 < e ≤ 16, 16 - e, 0], M_1) → W_1Segment(K_1, W_1) → p_2Dilate(M_1, If[16 < e ≤ 17, 17 - e, 0], V_1) → Z_1Segment(M_1, Z_1) → e_2Line(A, K_1) → k_3Intersect(n_3, k_3) → A_2Dilate(V_1, If[18 < e ≤ 19, 19 - e, 0], C_2) → D_2Segment(V_1, D_2) → p_3Line(C_2, p_1) → q_3Point(q_3) → F_2Angle(F_2, C_2, V_1) → θRotate(s'_3, If[18 < e ≤ 19, ((e - 18) * θ), θ], T_1) → e_3Dilate(C_2, If[19 < e ≤ 20, 20 - e, 0], A_2) → E_2Segment(C_2, E_2) → r_3Dilate(A, If[20 < e ≤ 21, 21 - e, 0], V_1) → A'_5Segment(A, A'_5) → s_3Angle(A, V_1, A_2) → κRotate(A, If[21 < e ≤ 22, ((e - 21) * κ), κ], V_1) → A'_6Rotate(A'_5, If[21 < e ≤ 22, ((e - 21) * κ), κ], V_1) → G_2Segment(A'_6, G_2) → t_3
AI Drawing Prompt Reference
Draw a dynamic demonstration of the 2-Squares-Theorem, featuring two squares ABCD and A'B'C'D'. Use transformations like translation, rotation, and dilation to show their relationships. Start by drawing square ABCD, then obtain A'B'C'D' through translation and rotation. Construct several segments and circles, and finally use intersections and midpoints to demonstrate the theorem's proof.
The prompt above was compiled from the original drawing commands and is for reference only.