Dynamic Geometry Phenomenon with Equilateral Triangles on a Parallelogram (GoGeo

Dynamic Geometry Phenomenon with Equilateral Triangles on a Parallelogram (GoGeo
Loading the math board and drawing, please wait…
2017-05-20 02:06
①This example dynamically illustrates a fascinating geometric phenomenon: when equilateral triangles are constructed outward on each side of any parallelogram, certain vertices or connecting lines form special shapes (such as squares, parabolas, etc.), and the configuration changes as the parallelogram is modified. ②Core mathematical concepts include equilateral triangles, parallelograms, rotation, translation, dilation, circles, parabolas, and compositions of geometric transformations. ③Construction highlights: using GeoGebra commands such as Rotate, Translate, Dilate, along with basic objects like Point, Intersect, Segment, Circle, Ray, Line, and controlled by Angle and Min parameters, the equilateral triangles and their derived figures are built; the object list includes many points, segments, circles, arcs, and vectors, showcasing interactive dynamic geometry. ④Suitable for middle/high school geometry classes, math exploration activities, or teacher training in dynamic geometry software, helping to understand properties of equilateral triangles, parallelogram symmetry, and the role of transformations in geometric proofs.

GeoGebra Commands & Parameters

  1. Rotate(B, a°, A) → B'
  2. Angle(B, A, B') → α
  3. Ray(A, B) → f
  4. Ray(A, B') → g
  5. Line(B, g) → h
  6. Point(g) → C
  7. Line(C, f) → i
  8. Intersect(h, i) → D
  9. Segment(C, D) → j
  10. Segment(A, B) → k
  11. Segment(B, D) → l
  12. Segment(A, C) → m
  13. Min(m, k) → b
  14. Circle(C, (0.2 * b)) → d
  15. Circle(A, (0.2 * b)) → e
  16. Circle(B, (0.2 * b)) → p
  17. Circle(D, (0.2 * b)) → c
  18. Intersect(e, k, 1) → E
  19. Intersect(e, m, 1) → F
  20. Intersect(p, k, 1) → G
  21. Intersect(p, l, 1) → H
  22. Intersect(d, g, 2) → I
  23. Ray(C, I) → q
  24. Intersect(c, h, 2) → J
  25. Ray(D, J) → r
  26. Intersect(c, i, 2) → K
  27. Ray(D, K) → s
  28. Dilate(A, If[0 < o ≤ 1, 1 - o, 0], B) → A'
  29. Segment(A, A') → t
  30. Rotate(E, If[1 < o ≤ 2, ((o - 1) * α), α], A) → E'
  31. CircleSector(A, E, E') → c_1
  32. Dilate(A, If[2 < o ≤ 3, 3 - o, 0], C) → A'_1
  33. Vector(A, A'_1) → u
  34. Translate(c_1, u) → d_1
  35. Segment(A, A'_1) → f_1
  36. Dilate(C, If[3 < o ≤ 4, 4 - o, 0], D) → C'
  37. Vector(C, C') → v
  38. Translate(d_1, v) → e_1
  39. Segment(C, C') → g_1
  40. Dilate(D, If[4 < o ≤ 5, 5 - o, 0], B) → D'
  41. Segment(D, D') → h_1
  42. Polygon(A, B, D, C) → poly1, a_1, b_1, d_2, c_2
  43. Dilate(A, If[5.5 < o ≤ 6.5, 6.5 - o, 0], C) → A'_2
  44. Vector(A, A'_2) → w
  45. Translate(A, w) → A'_3
  46. Translate(A', w) → A''
  47. Dilate(A, If[6.5 < o ≤ 7.5, 7.5 - o, 0], B) → A'_4
  48. Vector(A, A'_4) → u_1
  49. Translate(A, u_1) → A'_5
  50. Translate(A'_1, u_1) → L
  51. Rotate(B, π / 3, D) → B'_1
  52. Rotate(D, π / 3, C) → D'_1
  53. Rotate(A, π / 3, B) → A'_6
  54. Rotate(C, π / 3, A) → C'_1
  55. Rotate(D, If[6 < o ≤ 7, ((-(o - 6)) * π / 3), ((-π)) / 3], B) → D'_2
  56. Rotate(D', If[6 < o ≤ 7, ((-(o - 6)) * π / 3), ((-π)) / 3], B) → D''
  57. Segment(D'_2, D'') → i_1
  58. Rotate(C, If[6 < o ≤ 7, ((-(o - 6)) * π / 3), ((-π)) / 3], D) → C'_2
  59. Rotate(C', If[6 < o ≤ 7, ((-(o - 6)) * π / 3), ((-π)) / 3], D) → C''
  60. Segment(C'_2, C'') → j_1
  61. Rotate(A, If[6 < o ≤ 7, ((-(o - 6)) * π / 3), ((-π)) / 3], C) → A'_7
  62. Rotate(A'_1, If[6 < o ≤ 7, ((-(o - 6)) * π / 3), ((-π)) / 3], C) → M
  63. Segment(A'_7, M) → k_1
  64. Rotate(A, If[6 < o ≤ 7, ((-(o - 6)) * π / 3), ((-π)) / 3], A) → A'_8
  65. Rotate(A', If[6 < o ≤ 7, ((-(o - 6)) * π / 3), ((-π)) / 3], A) → A''_1
  66. Segment(A'_8, A''_1) → t'
  67. Rotate(D, If[7 < o ≤ 8, ((o - 7) * π / 3), π / 3], D) → D'_3
  68. Rotate(D', If[7 < o ≤ 8, ((o - 7) * π / 3), π / 3], D) → D''_1
  69. Segment(D'_3, D''_1) → l_1
  70. Rotate(C, If[7 < o ≤ 8, ((o - 7) * π / 3), π / 3], C) → C'_3
  71. Rotate(C', If[7 < o ≤ 8, ((o - 7) * π / 3), π / 3], C) → C''_1
  72. Segment(C'_3, C''_1) → m_1
  73. Rotate(A, If[7 < o ≤ 8, ((o - 7) * π / 3), π / 3], A) → A'_9
  74. Rotate(A'_1, If[7 < o ≤ 8, ((o - 7) * π / 3), π / 3], A) → N
  75. Segment(A'_9, N) → n_1
  76. Rotate(A, If[7 < o ≤ 8, ((o - 7) * π / 3), π / 3], B) → A'_{10}
  77. Rotate(A', If[7 < o ≤ 8, ((o - 7) * π / 3), π / 3], B) → A''_2
  78. Segment(A'_{10}, A''_2) → t'_1
  79. Polygon(B, B'_1, D) → poly2, d_3, b_2, b'_1
  80. Polygon(B, A, A'_6) → poly3, a'_6, b_3, a_2
  81. Polygon(A, C, C'_1) → poly4, c'_1, a_3, c_3
  82. Polygon(C, D, D'_1) → poly5, d'_1, c_4, d_4
  83. Dilate(A'_6, If[8 < o ≤ 9, 9 - o, 0], B'_1) → O
  84. Segment(A'_6, O) → p_1
  85. Dilate(B'_1, If[9 < o ≤ 10, 10 - o, 0], D'_1) → P
  86. Segment(B'_1, P) → q_1
  87. Dilate(A'_6, If[10 < o ≤ 11, 11 - o, 0], C'_1) → Q
  88. Vector(A'_6, Q) → v_1
  89. Translate(A'_6, v_1) → R
  90. Translate(O, v_1) → O'
  91. Segment(R, O') → r_1
  92. Dilate(B'_1, If[11 < o ≤ 12, 12 - o, 0], A'_6) → S
  93. Vector(B'_1, S) → w_1
  94. Translate(B'_1, w_1) → T
  95. Translate(P, w_1) → P'
  96. Segment(T, P') → s_1

AI Drawing Prompt Reference

Draw a parallelogram with equilateral triangles constructed outward on each side. Connect certain vertices of these triangles to reveal special shapes like squares and parabolas. Include circles, arcs, rays, and segments, with a slider controlling dynamic transformations such as rotation, translation, and scaling of the triangles. Emphasize symmetry and the interplay of geometric transformations.
The prompt above was compiled from the original drawing commands and is for reference only.