GoGeometry Action 47: Dynamic Parallelogram Exploration

GoGeometry Action 47: Dynamic Parallelogram Exploration
Loading the math board and drawing, please wait…
2017-05-21 09:56
① This interactive GeoGebra example dynamically illustrates a parallelogram problem posted by Antonio Gutierrez on GoGeometry.com, allowing users to manipulate points and observe changing geometric relationships. ② Core mathematical concepts include properties of parallelograms, segment ratios, angle relationships, tangent lines, and possibly integer or exponent-based constraints. ③ Construction highlights: based on the summary, the construction uses commands such as Ray, Rotate, Line, Point, Intersect, Segment, Angle, Min, Circle, Dilate, CircleSector, Vector, Translate, Polygon, Midpoint, and OrthogonalLine, creating multiple points (A, B, C, D, etc.), circles, and auxiliary lines for dynamic exploration. ④ Suitable for middle/high school geometry classes or self-study, this example helps investigate parallelogram theorems and serves as a model for creating dynamic geometry worksheets.

GeoGebra Commands & Parameters

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