Animation 91: Equilateral Triangles and Linear Programming

Animation 91: Equilateral Triangles and Linear Programming
Loading the math board and drawing, please wait…
2016-07-07 04:56
This example demonstrates the dynamic integration of equilateral triangle rotation with linear programming problems. It involves core mathematical concepts such as equilateral triangle construction, linear programming, rotation, dilation, intersection calculation, and more. GeoGebra commands and objects like Segment, Point, Rotate, Min, Polygon, Dilate, Circle, Intersect, CircleSector, Vector, Translate, Line, Ray, Sort, and Angle are used in the construction. Suitable for high school and above mathematics learning, providing an intuitive understanding of geometric transformations and optimization problems.

GeoGebra Commands & Parameters

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