Dynamic Square Midpoint Problem Demo

Dynamic Square Midpoint Problem Demo
Loading the math board and drawing, please wait…
2018-03-14 03:55
This example dynamically demonstrates a geometric problem involving a square and the midpoints of two of its sides. Key math concepts include square properties, midpoints, rotation, dilation, polygon construction, etc. It utilizes GeoGebra commands and objects such as Rotate, Dilate, Polygon, Midpoint, CircleArc, Point, Segment, Intersect, Circle, CircleSector, Vector, Translate, Line, Angle, Mirror, and Ray. Suitable for high school mathematics teaching to understand geometric transformations and dynamic geometric relationships.

GeoGebra Commands & Parameters

  1. Rotate(A, If[1 < e ≤ 2, ((-(e - 1)) * π / 2), -1.5707963267948966], B_2) → A'_1
  2. Dilate(A, If[0 < e ≤ 1, 1 - e, 0], B_2) → A'
  3. Rotate(A', If[1 < e ≤ 2, ((-(e - 1)) * π / 2), -1.5707963267948966], B_2) → A''
  4. Polygon(A, B_2, 4) → poly1, a, b, c, d, C, D
  5. Midpoint(A, C) → V
  6. CircleArc(V, C, D) → g_2
  7. Point(g_2) → B
  8. Segment(C, B) → j_1
  9. Segment(A, B) → n
  10. Rotate(A'', If[2 < e ≤ 3, ((-(e - 2)) * π / 2), -1.5707963267948966], C) → A'''
  11. Rotate(A'_1, If[2 < e ≤ 3, ((-(e - 2)) * π / 2), -1.5707963267948966], C) → R
  12. Segment(R, A''') → f''
  13. Intersect(n, f'') → Z
  14. Segment(B, Z) → l_1
  15. Segment(A, A') → f
  16. Segment(A'_1, A'') → f'
  17. Segment(A, B_2) → g
  18. Segment(B_2, C) → h
  19. Segment(C, D) → i
  20. Segment(D, A) → j
  21. Circle(B_2, (0.15 * f)) → p
  22. Circle(C, Radius[p]) → k
  23. Circle(A, (0.1 * j)) → q
  24. Circle(D, (0.1 * j)) → r
  25. Segment(A, C) → l
  26. Segment(D, B_2) → m
  27. Intersect(r, j, 1) → F
  28. Intersect(r, m, 1) → G
  29. Intersect(r, i, 1) → H
  30. Intersect(k, i, 1) → I
  31. Intersect(k, l, 1) → J
  32. Intersect(k, h, 1) → K
  33. Intersect(p, h, 1) → L
  34. Intersect(p, m, 1) → M
  35. Intersect(p, g, 1) → N
  36. Intersect(q, g, 1) → O
  37. Intersect(q, l, 1) → P
  38. Intersect(q, j, 1) → Q
  39. CircleSector(B_2, L, N) → s
  40. Rotate(R, If[3 < e ≤ 4, ((-(e - 3)) * π / 2), -1.5707963267948966], D) → R'
  41. Rotate(A''', If[3 < e ≤ 4, ((-(e - 3)) * π / 2), -1.5707963267948966], D) → S
  42. Segment(R', S) → f'''
  43. Dilate(B_2, If[4 < e ≤ 5, 5 - e, 0], C) → B'
  44. Vector(B_2, B') → u
  45. Translate(s, u) → s'
  46. Rotate(s', If[5 < e ≤ 6, ((e - 5) * π / 2), 1.5707963267948966], C) → s''
  47. Dilate(C, If[6 < e ≤ 7, 7 - e, 0], D) → C'
  48. Vector(C, C') → v
  49. Translate(s'', v) → s'''
  50. Rotate(s''', If[7 < e ≤ 8, ((e - 7) * π / 2), 1.5707963267948966], D) → t
  51. Dilate(D, If[8 < e ≤ 9, 9 - e, 0], A) → D'
  52. Vector(D, D') → w
  53. Translate(t, w) → t'
  54. Rotate(t', If[9 < e ≤ 10, ((e - 9) * π / 2), 1.5707963267948966], A) → t''
  55. Dilate(B_2, If[18 < e ≤ 19, 19 - e, 0], C) → B'_1
  56. Dilate(B_2, If[18 < e ≤ 19, 19 - e, 0], A) → B'_2
  57. Dilate(B_2, If[18 < e ≤ 19, 19 - e, 0], D) → B'_3
  58. Vector(B_2, B'_1) → v_1
  59. Vector(B_2, B'_3) → w_1
  60. Vector(B_2, B'_2) → i_1
  61. Circle(A, n - j_1) → h_2
  62. Dilate(B, If[10 < e ≤ 11, 11 - e, 0], C) → W'
  63. Dilate(B_2, If[13 < e ≤ 14, 14 - e, 0], B) → B'_4
  64. Vector(B_2, B'_4) → u_1
  65. Translate(s, u_1) → s'_1
  66. Line(B, f') → a_1
  67. Point(a_1) → U
  68. Angle(U, B, C) → α
  69. Rotate(B, If[14 < e ≤ 15, ((-(e - 14)) * π / 2), ((-π)) / 2], B) → W'_2
  70. Rotate(W', If[14 < e ≤ 15, ((-(e - 14)) * π / 2), ((-π)) / 2], B) → W''
  71. Line(A, B_2) → h_1
  72. Angle(B, A, D) → β
  73. Dilate(D, If[19 < e ≤ 20, 20 - e, 0], B) → D'_1
  74. Mirror(C, D) → C'_1
  75. Rotate(C, ((-π)) / 3, B_2) → C'_2
  76. Segment(B_2, C'_2) → f_1
  77. Segment(C, C'_2) → g_1
  78. Intersect(k, g_1, 1) → E
  79. Intersect(k, h) → T,
  80. CircleSector(C, T, E) → d_1
  81. Rotate(D, 15°, C) → D'_2
  82. Angle(D, C, D'_2) → γ
  83. Ray(C, D'_2) → k_1
  84. Rotate(C, (-(15°)), D) → C'_3
  85. Angle(C'_3, D, C) → δ
  86. Ray(D, C'_3) → m_1
  87. Intersect(k_1, m_1) → W
  88. Rotate(B_2, If[10 < e ≤ 11, (((-π)) / 3 * (e - 10)), ((-π)) / 3], B_2) → A_1
  89. Rotate(C, If[10 < e ≤ 11, (((-π)) / 3 * (e - 10)), ((-π)) / 3], B_2) → C'_4
  90. Rotate(B_2, If[11 < e ≤ 12, (π / 3 * (e - 11)), π / 3], C) → B_1
  91. Rotate(C, If[11 < e ≤ 12, (π / 3 * (e - 11)), π / 3], C) → C'_5
  92. Rotate(E, If[12 < e ≤ 13, (((-π)) / 6 * (e - 12)), ((-π)) / 6], C) → E'
  93. Polygon(C, W, D) → poly2, d_2, c_2, w_2
  94. Polygon(A, W, D) → poly3, d_3, a_2, w_3
  95. Polygon(B_2, W, C) → poly4, c_3, b_2, w_4
  96. Polygon(A, B_2, W) → poly5, w_5, a_3, b_1
  97. Rotate(T, 15°, C) → T'
  98. Angle(T, C, T') → ε
  99. Ray(C, T') → q_1
  100. Dilate(C, If[21 < e ≤ 22, 22 - e, 0], D) → C'_8
  101. Vector(C, C'_8) → u_2
  102. Dilate(D, If[23 < e ≤ 24, 24 - e, 0], W) → D'_3
  103. Dilate(C, If[23 < e ≤ 24, 24 - e, 0], W) → C'_9
  104. Dilate(B_2, If[25 < e ≤ 26, 26 - e, 0], W) → G_1
  105. Dilate(A, If[25 < e ≤ 26, 26 - e, 0], W) → A'_2
  106. Rotate(B_2, If[26.75 < e ≤ 27.75, (π / 2 * (e - 26.75)), π / 2], B_2) → H_1
  107. Rotate(C'_2, If[26.75 < e ≤ 27.75, (π / 2 * (e - 26.75)), π / 2], B_2) → I_1
  108. Rotate(C, If[26.75 < e ≤ 27.75, (π / 2 * (e - 26.75)), π / 2], B_2) → C'_{10}
  109. Midpoint(A, D) → C_1
  110. Midpoint(D, R) → D_1
  111. Rotate(A, ((-π)) / 2, B_2) → A'_3
  112. Rotate(B_2, π / 2, A) → E_1
  113. Midpoint(A'_3, E_1) → F_1
  114. Segment(F_1, A) → n_1
  115. Segment(C_1, B_2) → p_1
  116. Segment(B_2, F_1) → r_1
  117. Intersect(n_1, p_1) → J_1
  118. Segment(F_1, J_1) → s_1
  119. Circle(F_1, s_1 / 3) → c_1
  120. Intersect(c_1, n_1, 1) → K_1
  121. Circle(K_1, s_1 / 3) → e_1
  122. Intersect(e_1, n_1, 2) → L_1
  123. Circle(J_1, s_1 / 3) → t_1
  124. Intersect(t_1, p_1, 2) → M_1
  125. Circle(M_1, s_1 / 3) → e_2
  126. Intersect(e_2, p_1, 2) → N_1
  127. Circle(N_1, s_1 / 3) → f_2
  128. Intersect(f_2, p_1, 2) → O_1
  129. Intersect(c_1, r_1) → P_1,
  130. Circle(P_1, s_1 / 3) → k_2
  131. Intersect(k_2, r_1, 1) → Q_1
  132. Circle(Q_1, s_1 / 3) → p_2
  133. Intersect(p_2, r_1, 1) → R_1
  134. Circle(R_1, s_1 / 3) → q_2
  135. Intersect(q_2, r_1, 1) → S_1
  136. Dilate(B_2, If[14 < e ≤ 15, 15 - e, 0], O_1) → T_1
  137. Dilate(B_2, If[14 < e ≤ 15, 15 - e, 0], S_1) → U_1
  138. Segment(B_2, T_1) → i_2
  139. Segment(B_2, U_1) → m_2
  140. Dilate(O_1, If[15 < e ≤ 16, 16 - e, 0], N_1) → V_1
  141. Dilate(S_1, If[15 < e ≤ 16, 16 - e, 0], R_1) → W_1
  142. Segment(O_1, V_1) → n_2
  143. Segment(S_1, W_1) → r_2
  144. Dilate(A, If[15 < e ≤ 16, 16 - e, 0], J_1) → A'_4
  145. Segment(A, A'_4) → s_2
  146. Dilate(A, If[10 < e ≤ 11, 11 - e, 0], C_1) → A'_5
  147. Segment(A, A'_5) → t_2
  148. Rotate(A, If[11 < e ≤ 12, ((e - 11) * π), π], C_1) → A'_6
  149. Rotate(A'_5, If[11 < e ≤ 12, ((e - 11) * π / 2), π / 2], C_1) → Z_1
  150. Segment(A'_6, Z_1) → f_3
  151. Rotate(A'_6, If[12 < e ≤ 13, ((e - 12) * π / 2), π / 2], D) → A_2
  152. Rotate(Z_1, If[12 < e ≤ 13, ((e - 12) * π / 2), π / 2], D) → C_2
  153. Segment(A_2, C_2) → g_3
  154. Rotate(A_2, If[13 < e ≤ 14, ((e - 13) * π), π], F_1) → D_2
  155. Rotate(C_2, If[13 < e ≤ 14, ((e - 13) * π), π], F_1) → E_2
  156. Segment(D_2, E_2) → j_3
  157. Polygon(A, F_1, D) → t1, d_4, a_4, f_4
  158. Polygon(F_1, B_2, A'_1) → t2, a'_1, f_5, b_3
  159. Polygon(A, J_1, B_2) → t3, b_4, a_5, j_4
  160. Polygon(F_1, J_1, B_2) → t4, b_5, f_6, j_5
  161. Dilate(N_1, If[16 < e ≤ 17, 17 - e, 0], M_1) → F_2
  162. Dilate(R_1, If[16 < e ≤ 17, 17 - e, 0], Q_1) → G_2
  163. Segment(N_1, F_2) → k_3
  164. Segment(R_1, G_2) → l_3
  165. Dilate(M_1, If[17 < e ≤ 18, 18 - e, 0], J_1) → H_2
  166. Dilate(Q_1, If[17 < e ≤ 18, 18 - e, 0], P_1) → I_2
  167. Segment(M_1, H_2) → m_3
  168. Segment(Q_1, I_2) → n_3
  169. Dilate(J_1, If[16 < e ≤ 17, 17 - e, 0], L_1) → J_2
  170. Segment(J_1, J_2) → p_3
  171. Dilate(L_1, If[17 < e ≤ 18, 18 - e, 0], K_1) → K_2
  172. Segment(L_1, K_2) → q_3
  173. Dilate(J_1, If[18 < e ≤ 19, 19 - e, 0], C_1) → L_2
  174. Dilate(K_1, If[18 < e ≤ 19, 19 - e, 0], F_1) → M_2
  175. Dilate(P_1, If[18 < e ≤ 19, 19 - e, 0], F_1) → N_2
  176. Segment(J_1, L_2) → r_3
  177. Segment(K_1, M_2) → s_3
  178. Segment(P_1, N_2) → t_3
  179. Rotate(K_1, If[20 < e ≤ 21, ((-(e - 20)) * π), (-π)], K_1) → O_2
  180. Rotate(M_2, If[20 < e ≤ 21, ((-(e - 20)) * π), (-π)], K_1) → P_2
  181. Segment(O_2, P_2) → e_3
  182. Rotate(O_2, If[21 < e ≤ 22, ((-(e - 21)) * π), (-π)], L_1) → Q_2
  183. Rotate(P_2, If[21 < e ≤ 22, ((-(e - 21)) * π), (-π)], L_1) → R_2
  184. Segment(Q_2, R_2) → g_4
  185. Rotate(Q_2, If[22 < e ≤ 23, ((-(e - 22)) * π / 2), ((-π)) / 2], J_1) → S_2
  186. Rotate(R_2, If[22 < e ≤ 23, ((-(e - 22)) * π / 2), ((-π)) / 2], J_1) → T_2
  187. Segment(S_2, T_2) → h_4
  188. Rotate(S_2, If[23 < e ≤ 24, ((-(e - 23)) * π), (-π)], M_1) → U_2
  189. Rotate(T_2, If[23 < e ≤ 24, ((-(e - 23)) * π), (-π)], M_1) → V_2
  190. Segment(U_2, V_2) → i_4
  191. Rotate(U_2, If[24 < e ≤ 25, ((-(e - 24)) * π), (-π)], N_1) → W_2
  192. Rotate(V_2, If[24 < e ≤ 25, ((-(e - 24)) * π), (-π)], N_1) → Z_2
  193. Segment(W_2, Z_2) → k_4
  194. Rotate(W_2, If[25 < e ≤ 26, ((-(e - 25)) * π), (-π)], O_1) → A_3
  195. Rotate(Z_2, If[25 < e ≤ 26, ((-(e - 25)) * π), (-π)], O_1) → B_3
  196. Segment(A_3, B_3) → j_2
  197. Rotate(A_3, If[26 < e ≤ 27, ((-(e - 26)) * atand(3 / 4)), (-atand(3 / 4))], B_2) → C_3
  198. Rotate(B_3, If[26 < e ≤ 27, ((-(e - 26)) * atand(3 / 4)), (-atand(3 / 4))], B_2) → D_3
  199. Segment(C_3, D_3) → l_2
  200. Rotate(C_3, If[27 < e ≤ 28, ((-(e - 27)) * π), (-π)], S_1) → E_3
  201. Rotate(D_3, If[27 < e ≤ 28, ((-(e - 27)) * π), (-π)], S_1) → F_3
  202. Segment(E_3, F_3) → h_3
  203. Rotate(E_3, If[28 < e ≤ 29, ((-(e - 28)) * π), (-π)], R_1) → G_3
  204. Rotate(F_3, If[28 < e ≤ 29, ((-(e - 28)) * π), (-π)], R_1) → H_3
  205. Segment(G_3, H_3) → i_3
  206. Rotate(G_3, If[29 < e ≤ 30, ((-(e - 29)) * π), (-π)], Q_1) → I_3
  207. Rotate(H_3, If[29 < e ≤ 30, ((-(e - 29)) * π), (-π)], Q_1) → J_3
  208. Segment(I_3, J_3) → l_4
  209. Rotate(I_3, If[30 < e ≤ 31, ((-(e - 30)) * π), (-π)], P_1) → K_3
  210. Rotate(J_3, If[30 < e ≤ 31, ((-(e - 30)) * π), (-π)], P_1) → L_3
  211. Segment(K_3, L_3) → m_4
  212. Polygon(J_1, B_2, F_1) → t5, f_7, j_6, b_6