Polygon Transformation Animation

Polygon Transformation Animation
Loading the math board and drawing, please wait…
2017-01-22 03:54
This example demonstrates polygon transformations (poly1-poly7) and their properties through animation. It involves core math concepts like polygon construction, centroid, midpoint, dilation, line segments, and rotation. GeoGebra commands used include Polygon, Centroid, Midpoint, Dilate, Segment, Rotate. Suitable for high school and above to explore solid geometry and transformation principles.

GeoGebra Commands & Parameters

  1. Polygon(A, B, C, D, E, F) → poly1, a, b, c, d, e, f
  2. Polygon(E, D, 3) → poly2, g, h, i, G
  3. Polygon(F, E, 3) → poly3, j, k, l, H
  4. Polygon(A, F, 3) → poly4, m, n, p, I
  5. Polygon(B, A, 3) → poly5, q, r, s, J
  6. Polygon(C, B, 3) → poly6, t, f_1, g_1, K
  7. Polygon(D, C, 3) → poly7, h_1, i_1, j_1, L
  8. Centroid(poly2) → M
  9. Centroid(poly3) → N
  10. Centroid(poly4) → O
  11. Centroid(poly5) → P
  12. Centroid(poly6) → Q
  13. Centroid(poly7) → R
  14. Midpoint(O, R) → S
  15. Midpoint(Q, N) → T
  16. Midpoint(M, P) → U
  17. Dilate(A, If[0 < o ≤ 1, 1 - o, 0], B) → A'
  18. Dilate(B, If[0 < o ≤ 1, 1 - o, 0], C) → B'
  19. Dilate(C, If[0 < o ≤ 1, 1 - o, 0], D) → C'
  20. Dilate(D, If[0 < o ≤ 1, 1 - o, 0], E) → D'
  21. Dilate(E, If[0 < o ≤ 1, 1 - o, 0], F) → E'
  22. Dilate(F, If[0 < o ≤ 1, 1 - o, 0], A) → F'
  23. Segment(A, A') → k_1
  24. Segment(B, B') → l_1
  25. Segment(C, C') → m_1
  26. Segment(D, D') → n_1
  27. Segment(E, E') → p_1
  28. Segment(F, F') → q_1
  29. Midpoint(G, E) → V
  30. Midpoint(G, D) → W
  31. Midpoint(L, D) → Z
  32. Midpoint(C, L) → A_1
  33. Midpoint(C, K) → B_1
  34. Midpoint(B, K) → C_1
  35. Midpoint(B, J) → D_1
  36. Midpoint(J, A) → E_1
  37. Midpoint(A, I) → F_1
  38. Midpoint(I, F) → G_1
  39. Midpoint(F, H) → H_1
  40. Midpoint(H, E) → I_1
  41. Rotate(C, If[1.5 < o ≤ 2.5, ((-(o - 1.5)) * π / 3), ((-π)) / 3], C) → C'_1
  42. Rotate(C', If[1.5 < o ≤ 2.5, ((-(o - 1.5)) * π / 3), ((-π)) / 3], C) → C''
  43. Segment(C'_1, C'') → r_1
  44. Rotate(D, If[1.5 < o ≤ 2.5, ((-(o - 1.5)) * π / 3), ((-π)) / 3], D) → D'_1
  45. Rotate(D', If[1.5 < o ≤ 2.5, ((-(o - 1.5)) * π / 3), ((-π)) / 3], D) → D''
  46. Segment(D'_1, D'') → s_1
  47. Rotate(E, If[1.5 < o ≤ 2.5, ((-(o - 1.5)) * π / 3), ((-π)) / 3], E) → E'_1
  48. Rotate(E', If[1.5 < o ≤ 2.5, ((-(o - 1.5)) * π / 3), ((-π)) / 3], E) → E''
  49. Segment(E'_1, E'') → t_1
  50. Rotate(F, If[1.5 < o ≤ 2.5, ((-(o - 1.5)) * π / 3), ((-π)) / 3], F) → F'_1
  51. Rotate(F', If[1.5 < o ≤ 2.5, ((-(o - 1.5)) * π / 3), ((-π)) / 3], F) → F''
  52. Segment(F'_1, F'') → a_1
  53. Rotate(A, If[1.5 < o ≤ 2.5, ((-(o - 1.5)) * π / 3), ((-π)) / 3], A) → A'_1
  54. Rotate(A', If[1.5 < o ≤ 2.5, ((-(o - 1.5)) * π / 3), ((-π)) / 3], A) → A''
  55. Segment(A'_1, A'') → b_1
  56. Rotate(B, If[1.5 < o ≤ 2.5, ((-(o - 1.5)) * π / 3), ((-π)) / 3], B) → B'_1
  57. Rotate(B', If[1.5 < o ≤ 2.5, ((-(o - 1.5)) * π / 3), ((-π)) / 3], B) → B''
  58. Segment(B'_1, B'') → c_1
  59. Rotate(C, If[2.5 < o ≤ 3.5, ((o - 2.5) * π / 3), π / 3], D) → C'_2
  60. Rotate(C', If[2.5 < o ≤ 3.5, ((o - 2.5) * π / 3), π / 3], D) → C''_1
  61. Segment(C'_2, C''_1) → d_1
  62. Rotate(D, If[2.5 < o ≤ 3.5, ((o - 2.5) * π / 3), π / 3], E) → D'_2
  63. Rotate(D', If[2.5 < o ≤ 3.5, ((o - 2.5) * π / 3), π / 3], E) → D''_1
  64. Segment(D'_2, D''_1) → e_1
  65. Rotate(E, If[2.5 < o ≤ 3.5, ((o - 2.5) * π / 3), π / 3], F) → E'_2
  66. Rotate(E', If[2.5 < o ≤ 3.5, ((o - 2.5) * π / 3), π / 3], F) → E''_1
  67. Segment(E'_2, E''_1) → f_2
  68. Rotate(F, If[2.5 < o ≤ 3.5, ((o - 2.5) * π / 3), π / 3], A) → F'_2
  69. Rotate(F', If[2.5 < o ≤ 3.5, ((o - 2.5) * π / 3), π / 3], A) → F''_1
  70. Segment(F'_2, F''_1) → g_2
  71. Rotate(A, If[2.5 < o ≤ 3.5, ((o - 2.5) * π / 3), π / 3], B) → A'_2
  72. Rotate(A', If[2.5 < o ≤ 3.5, ((o - 2.5) * π / 3), π / 3], B) → A''_1
  73. Segment(A'_2, A''_1) → h_2
  74. Rotate(B, If[2.5 < o ≤ 3.5, ((o - 2.5) * π / 3), π / 3], C) → B'_2
  75. Rotate(B', If[2.5 < o ≤ 3.5, ((o - 2.5) * π / 3), π / 3], C) → B''_1
  76. Segment(B'_2, B''_1) → i_2
  77. Dilate(D, If[4.5 < o ≤ 5.5, 5.5 - o, 0], A_1) → C'_3
  78. Dilate(E, If[4.5 < o ≤ 5.5, 5.5 - o, 0], W) → E'_3
  79. Dilate(F, If[4.5 < o ≤ 5.5, 5.5 - o, 0], I_1) → F'_3
  80. Dilate(A, If[4.5 < o ≤ 5.5, 5.5 - o, 0], G_1) → A'_3
  81. Dilate(B, If[4.5 < o ≤ 5.5, 5.5 - o, 0], E_1) → B'_3
  82. Dilate(C, If[4.5 < o ≤ 5.5, 5.5 - o, 0], C_1) → C'_4
  83. Segment(B, B'_3) → j_2
  84. Segment(C, C'_4) → k_2
  85. Segment(D, C'_3) → l_2
  86. Segment(E, E'_3) → m_2
  87. Segment(F, F'_3) → n_2
  88. Segment(A, A'_3) → p_2
  89. Segment(L, A_1) → q_2
  90. Segment(G, W) → r_2
  91. Segment(H, I_1) → s_2
  92. Segment(I, G_1) → t_2
  93. Segment(J, E_1) → a_2
  94. Segment(K, C_1) → b_2
  95. Rotate(L, If[5.5 < o ≤ 6.5, ((-(o - 5.5)) * π), (-π)], A_1) → L'
  96. Rotate(A_1, If[5.5 < o ≤ 6.5, ((-(o - 5.5)) * π), (-π)], A_1) → J_1
  97. Segment(L', J_1) → c_2
  98. Rotate(G, If[5.5 < o ≤ 6.5, ((-(o - 5.5)) * π), (-π)], W) → G'
  99. Rotate(W, If[5.5 < o ≤ 6.5, ((-(o - 5.5)) * π), (-π)], W) → W'
  100. Segment(G', W') → d_2
  101. Rotate(H, If[5.5 < o ≤ 6.5, ((-(o - 5.5)) * π), (-π)], I_1) → H'
  102. Rotate(I_1, If[5.5 < o ≤ 6.5, ((-(o - 5.5)) * π), (-π)], I_1) → K_1
  103. Segment(H', K_1) → e_2
  104. Rotate(I, If[5.5 < o ≤ 6.5, ((-(o - 5.5)) * π), (-π)], G_1) → I'
  105. Rotate(G_1, If[5.5 < o ≤ 6.5, ((-(o - 5.5)) * π), (-π)], G_1) → L_1
  106. Segment(I', L_1) → f_3
  107. Rotate(J, If[5.5 < o ≤ 6.5, ((-(o - 5.5)) * π), (-π)], E_1) → J'
  108. Rotate(E_1, If[5.5 < o ≤ 6.5, ((-(o - 5.5)) * π), (-π)], E_1) → M_1
  109. Segment(J', M_1) → g_3
  110. Rotate(K, If[5.5 < o ≤ 6.5, ((-(o - 5.5)) * π), (-π)], C_1) → K'
  111. Rotate(C_1, If[5.5 < o ≤ 6.5, ((-(o - 5.5)) * π), (-π)], C_1) → N_1
  112. Segment(K', N_1) → h_3
  113. Dilate(C, If[6.5 < o ≤ 7.5, 7.5 - o, 0], Z) → C'_5
  114. Dilate(D, If[6.5 < o ≤ 7.5, 7.5 - o, 0], V) → D'_3
  115. Dilate(E, If[6.5 < o ≤ 7.5, 7.5 - o, 0], H_1) → E'_4
  116. Dilate(F, If[6.5 < o ≤ 7.5, 7.5 - o, 0], F_1) → F'_4
  117. Dilate(A, If[6.5 < o ≤ 7.5, 7.5 - o, 0], D_1) → A'_4
  118. Dilate(B, If[6.5 < o ≤ 7.5, 7.5 - o, 0], B_1) → B'_4
  119. Segment(B, B'_4) → i_3
  120. Segment(C, C'_5) → j_3
  121. Segment(D, D'_3) → k_3
  122. Segment(E, E'_4) → l_3
  123. Segment(F, F'_4) → m_3
  124. Segment(A, A'_4) → n_3
  125. Segment(D, Z) → p_3
  126. Segment(E, V) → q_3
  127. Segment(F, H_1) → r_3
  128. Segment(A, F_1) → s_3
  129. Segment(B, D_1) → t_3
  130. Segment(C, B_1) → a_3
  131. Rotate(D, If[7.5 < o ≤ 8.5, ((-(o - 7.5)) * π), (-π)], Z) → D'_4
  132. Rotate(Z, If[7.5 < o ≤ 8.5, ((-(o - 7.5)) * π), (-π)], Z) → Z'
  133. Segment(D'_4, Z') → b_3
  134. Rotate(E, If[7.5 < o ≤ 8.5, ((-(o - 7.5)) * π), (-π)], V) → E'_5
  135. Rotate(V, If[7.5 < o ≤ 8.5, ((-(o - 7.5)) * π), (-π)], V) → V'
  136. Segment(E'_5, V') → c_3
  137. Rotate(F, If[7.5 < o ≤ 8.5, ((-(o - 7.5)) * π), (-π)], H_1) → F'_5
  138. Rotate(H_1, If[7.5 < o ≤ 8.5, ((-(o - 7.5)) * π), (-π)], H_1) → O_1
  139. Segment(F'_5, O_1) → d_3
  140. Rotate(A, If[7.5 < o ≤ 8.5, ((-(o - 7.5)) * π), (-π)], F_1) → A'_5
  141. Rotate(F_1, If[7.5 < o ≤ 8.5, ((-(o - 7.5)) * π), (-π)], F_1) → P_1
  142. Segment(A'_5, P_1) → e_3
  143. Rotate(B, If[7.5 < o ≤ 8.5, ((-(o - 7.5)) * π), (-π)], D_1) → B'_5
  144. Rotate(D_1, If[7.5 < o ≤ 8.5, ((-(o - 7.5)) * π), (-π)], D_1) → Q_1
  145. Segment(B'_5, Q_1) → f_4
  146. Rotate(C, If[7.5 < o ≤ 8.5, ((-(o - 7.5)) * π), (-π)], B_1) → C'_6
  147. Rotate(B_1, If[7.5 < o ≤ 8.5, ((-(o - 7.5)) * π), (-π)], B_1) → R_1
  148. Segment(C'_6, R_1) → g_4
  149. Dilate(O, If[9 < o ≤ 10, 10 - o, 0], S) → O'
  150. Segment(O, O') → h_4
  151. Dilate(S, If[10 < o ≤ 11, 11 - o, 0], R) → S'
  152. Segment(S, S') → i_4
  153. Rotate(O, If[11 < o ≤ 12, ((-(o - 11)) * π), (-π)], S) → O'_1
  154. Rotate(O', If[11 < o ≤ 12, ((-(o - 11)) * π), (-π)], S) → O''
  155. Segment(O'_1, O'') → j_4
  156. Dilate(N, If[12 < o ≤ 13, 13 - o, 0], T) → N'
  157. Segment(N, N') → k_4
  158. Dilate(T, If[13 < o ≤ 14, 14 - o, 0], Q) → T'
  159. Segment(T, T') → l_4
  160. Rotate(N, If[14 < o ≤ 15, ((-(o - 14)) * π), (-π)], T) → N'_1
  161. Rotate(N', If[14 < o ≤ 15, ((-(o - 14)) * π), (-π)], T) → N''
  162. Segment(N'_1, N'') → m_4
  163. Dilate(M, If[15 < o ≤ 16, 16 - o, 0], U) → M'
  164. Segment(M, M') → n_4
  165. Dilate(U, If[16 < o ≤ 17, 17 - o, 0], P) → U'
  166. Segment(U, U') → p_4
  167. Rotate(M, If[17 < o ≤ 18, ((-(o - 17)) * π), (-π)], U) → M'_1
  168. Rotate(M', If[17 < o ≤ 18, ((-(o - 17)) * π), (-π)], U) → M''
  169. Segment(M'_1, M'') → q_4
  170. Polygon(U, T, S) → poly8, s_4, u, t_4
  171. Dilate(U, If[18.5 < o ≤ 19.5, 19.5 - o, 0], T) → U'_1
  172. Segment(U, U'_1) → r_4
  173. Rotate(U, If[19.5 < o ≤ 20.5, (((o - 19.5) * 5) * π / 3), (5 * π / 3)], T) → U'_2
  174. Rotate(U'_1, If[19.5 < o ≤ 20.5, (((o - 19.5) * 5) * π / 3), (5 * π / 3)], T) → S_1
  175. Segment(U'_2, S_1) → a_4
  176. Rotate(U, If[20.5 < o ≤ 21.5, (((-(o - 20.5)) * 5) * π / 3), (-5 * π / 3)], U) → U'_3
  177. Rotate(U'_1, If[20.5 < o ≤ 21.5, (((-(o - 20.5)) * 5) * π / 3), (-5 * π / 3)], U) → T_1
  178. Segment(U'_3, T_1) → b_4

AI Drawing Prompt Reference

Draw a hexagon ABCDEF, then construct its inscribed triangles, centroids, midpoints, and scaled points and segments, and finally perform rotation transformations. Start by drawing the hexagon ABCDEF, then construct the inscribed triangles, find the centroids of each triangle, and then find the midpoints of the centroids. Next, perform scaling transformations on each vertex to construct the scaled segments. Finally, perform rotation transformations on certain vertices to construct the rotated segments.
The prompt above was compiled from the original drawing commands and is for reference only.