Dynamic Transformation of Equilateral Triangle

Dynamic Transformation of Equilateral Triangle
Loading the math board and drawing, please wait…
2016-06-17 03:24
This example demonstrates the dynamic transformation of an equilateral triangle. Key mathematical concepts include the properties of equilateral triangles, reflection transformations, and exponential functions. Using GeoGebra commands such as Polygon, Dilate, Rotate, etc., the changes in the equilateral triangle under different transformations can be visually illustrated. Suitable for students at junior high school level and above to learn about geometric transformations and function applications.

GeoGebra Commands & Parameters

  1. Polygon(A, B, 3) → poly1, a, b, c, C
  2. Dilate(A, If[0 < d ≤ 1, 1 - d, 0], B) → A'
  3. Segment(A, A') → e
  4. Dilate(B, If[1 < d ≤ 2, 2 - d, 0], C) → B'
  5. Segment(B, B') → f
  6. Dilate(C, If[2 < d ≤ 3, 3 - d, 0], A) → C'
  7. Segment(C, C') → g
  8. Segment(A, B) → h
  9. Segment(A, C) → i
  10. Segment(B, C) → j
  11. Circle(A, (0.15 * h)) → k
  12. Intersect(k, i, 1) → D
  13. Intersect(k, h, 1) → E
  14. Rotate(A, If[3.5 < d ≤ 4.5, ((d - 3.5) * π / 3), 1.0471975511965976], A) → A'_1
  15. Rotate(A', If[3.5 < d ≤ 4.5, ((d - 3.5) * π / 3), 1.0471975511965976], A) → A''
  16. Segment(A'_1, A'') → e'
  17. Rotate(A, If[4.5 < d ≤ 5.5, ((-(d - 4.5)) * π / 3), -1.0471975511965976], B) → A'_2
  18. Rotate(A', If[4.5 < d ≤ 5.5, ((-(d - 4.5)) * π / 3), -1.0471975511965976], B) → A''_1
  19. Segment(A'_2, A''_1) → e'_1
  20. Dilate(A, If[6 < d ≤ 7, 7 - d, 0], B) → A'_3
  21. Vector(A, A'_3) → u
  22. Circle(B, (0.15 * h)) → r
  23. Intersect(f, e'_1) → G
  24. Intersect(f, e'_1) → H
  25. Intersect(f, e'_1) → I
  26. Intersect(f, e'_1) → J
  27. Intersect(r, j, 1) → F
  28. Intersect(r, h, 1) → K
  29. Dilate(B, If[8 < d ≤ 9, 9 - d, 0], C) → B'_1
  30. Vector(B, B'_1) → v
  31. Intersect(g, e') → L
  32. Midpoint(h) → O
  33. Circle(O, (0.05 * h)) → d_1
  34. Segment(C, O) → m
  35. Intersect(d_1, m, 1) → P
  36. Intersect(d_1, h) → Q, R
  37. CircleSector(O, R, P) → f_1
  38. Polygon(A, B, C) → poly2, c_2, a_1, b_1
  39. PointIn(poly2) → T
  40. OrthogonalLine(T, h) → n
  41. OrthogonalLine(T, i) → g_1
  42. OrthogonalLine(T, j) → h_1
  43. Intersect(g_1, i) → U
  44. Intersect(n, h) → V
  45. Intersect(h_1, j) → W
  46. Angle(T, U, C) → α
  47. Angle(T, V, A) → β
  48. Angle(T, W, B) → γ
  49. Circle(W, (0.05 * h)) → q
  50. Circle(V, (0.05 * h)) → s
  51. Circle(U, (0.05 * h)) → t
  52. Intersect(q, j, 2) → Z
  53. Intersect(q, h_1, 2) → A_1
  54. Intersect(s, h, 2) → B_1
  55. Intersect(s, n, 2) → C_1
  56. Intersect(t, i, 1) → D_1
  57. Intersect(t, g_1, 1) → E_1
  58. CircleSector(W, Z, A_1) → k_1
  59. CircleSector(V, B_1, C_1) → p_1
  60. CircleSector(U, D_1, E_1) → q_1
  61. Dilate(T, If[10 < d ≤ 11, 11 - d, 0], U) → T'
  62. Segment(T, T') → i_1
  63. Segment(T, U) → j_1
  64. Segment(T, W) → l_1
  65. Segment(T, V) → m_1
  66. Circle(C, j_1) → c_1
  67. Segment(C, O) → e_1
  68. Intersect(c_1, e_1, 1) → M
  69. Circle(M, m_1) → s_1
  70. Intersect(s_1, e_1, 1) → N
  71. Dilate(C, If[5.5 < d ≤ 6.5, 6.5 - d, 0], M) → C'_1
  72. Segment(C, C'_1) → l
  73. Dilate(M, If[6.5 < d ≤ 7.5, 7.5 - d, 0], N) → M'
  74. Segment(M, M') → n_1
  75. Dilate(N, If[7.5 < d ≤ 8.5, 8.5 - d, 0], O) → N'
  76. Segment(N, N') → t_1
  77. Rotate(f_1, If[9 < d ≤ 10, ((d - 9) * π / 2), 1.5708], O) → p
  78. Dilate(T, If[10 < d ≤ 11, 11 - d, 0], V) → T'_1
  79. Dilate(T, If[10 < d ≤ 11, 11 - d, 0], W) → T'_2
  80. Segment(T, T'_1) → a_2
  81. Segment(T, T'_2) → b_2
  82. Rotate(q_1, If[11.5 < d ≤ 12.5, ((d - 11.5) * π / 2), 1.5708], U) → r_1
  83. Rotate(p_1, If[11.5 < d ≤ 12.5, ((d - 11.5) * π / 2), 1.5708], V) → d_2
  84. Rotate(k_1, If[11.5 < d ≤ 12.5, ((d - 11.5) * π / 2), 1.5708], W) → e_2
  85. Dilate(U, If[13 < d ≤ 14, 14 - d, 0], C) → U'
  86. Vector(U, U') → w
  87. Translate(T, w) → T'_3
  88. Translate(T', w) → T''
  89. Segment(T'_3, T'') → f_2
  90. Rotate(T'_3, If[14 < d ≤ 15, (((d - 14) * 2) * π / 3), 2.0943951023931953], M) → S
  91. Rotate(T'', If[14 < d ≤ 15, (((d - 14) * 2) * π / 3), 2.0943951023931953], M) → T'''
  92. Rotate(T'_3, If[14 < d ≤ 15, d - 14 - π / 3, -1.0471975511965976], C) → F_1
  93. Rotate(T'', If[14 < d ≤ 15, d - 14 - π / 3, -1.0471975511965976], C) → T'''_1
  94. Rotate(T'_3, If[14 < d ≤ 15, ((-(d - 14)) * π / 3), -1.0472], C) → G_1
  95. Rotate(T'', If[14 < d ≤ 15, d - 14 - π / 3, -1.0471975511965976], C) → T'''_2
  96. Segment(G_1, T'''_2) → g_2
  97. Dilate(T, If[15 < d ≤ 16, 16 - d, 0], M) → T'_4
  98. Vector(T, T'_4) → u_1
  99. Translate(T, u_1) → T'_5
  100. Translate(T'_1, u_1) → H_1
  101. Segment(T'_5, H_1) → h_2
  102. Dilate(T, If[16 < d ≤ 17, 17 - d, 0], N) → T'_6
  103. Vector(T, T'_6) → v_1
  104. Translate(T, v_1) → T'_7
  105. Translate(T'_2, v_1) → I_1
  106. Segment(T'_7, I_1) → i_2
  107. Rotate(T'_7, If[17 < d ≤ 18, (((d - 17) * 4) * π / 3), 4.1887902047863905], N) → J_1
  108. Rotate(I_1, If[17 < d ≤ 18, (((-(d - 17)) * 2) * π / 3), -2.0943951023931953], N) → K_1
  109. Segment(J_1, K_1) → j_2
  110. Rotate(J_1, If[18 < d ≤ 19, (((-(d - 18)) * 5) * π / 3), -5.235987755982988], N) → L_1
  111. Rotate(L_1, If[20 < d ≤ 21, ((-(d - 20)) * π / 18), -0.17453292519943295], N) → N_1

AI Drawing Prompt Reference

Draw an equilateral triangle and dynamically transform it around a point. Start by drawing an equilateral triangle, then perform scaling transformations around its vertices, followed by translation transformations. Finally, use rotation and reflection transformations to further adjust the triangle's position and size.
The prompt above was compiled from the original drawing commands and is for reference only.