Approximating the Area of a Circle by Jack D. Gittinger

Approximating the Area of a Circle by Jack D. Gittinger
Loading the math board and drawing, please wait…
2015-12-04 22:56
This example demonstrates how to approximate the area of a circle using similarity transformations and geometric constructions. Key math concepts include circle, similarity transformation, equilateral triangles, and differential equations. GeoGebra commands and objects like Circle, Point, Vector, Translate, Rotate, Line, Angle, Mirror, Polygon, OrthogonalLine, Segment are utilized in the construction. Suitable for high school and above students to understand circle area calculation methods.

GeoGebra Commands & Parameters

  1. Circle(A, a) → c
  2. Point(c) → B
  3. Vector(B, A) → u
  4. Translate(C, Vector[(-u)]) → C'_2
  5. Rotate(C'_2, ((g / 100 * 15))°, C'_2) → C''_2
  6. Line(B, A) → b
  7. Rotate(B, 30°, A) → B'
  8. Angle(B, A, B') → α
  9. Line(B', A) → d
  10. Circle(C, a) → e
  11. Vector(A, B') → v
  12. Vector(B, B') → w
  13. Translate(C, v) → C'_1
  14. Rotate(C'_2, 60°, C) → C''_1
  15. Rotate(C'_1, 60°, C) → D
  16. Line(C'_2, C) → f
  17. Mirror(C'_1, f) → E
  18. Mirror(C''_1, f) → C'''
  19. Mirror(D, f) → D'
  20. Polygon(E, C'_2, C) → poly1, c_1, e_1, c'
  21. Rotate(E, ((g / 100 * 15))°, C'_2) → E'_1
  22. Rotate(C, ((g / 100 * 15))°, C'_2) → C'_3
  23. Polygon(E'_1, C''_2, C'_3) → poly1', c'_1, e', c''
  24. Polygon(C''', E, C) → poly2, c_2, c''', e_2
  25. Rotate(C''', (g / 100 * β), F) → G
  26. Rotate(E, (g / 100 * β), F) → E'
  27. Rotate(C, (g / 100 * β), F) → C'_4
  28. Polygon(G, E', C'_4) → poly2', c'_2, g_1, e'_1
  29. Polygon(C, D', C''') → poly3, c'''_1, c_3, d'
  30. Rotate(C, (g / 100 * γ), H) → C'
  31. Rotate(D', (g / 100 * γ), H) → D''
  32. Rotate(C''', (g / 100 * γ), H) → I
  33. Polygon(C', D'', I) → poly3', i, c'_3, d''
  34. Mirror(C', f) → C''_3
  35. Mirror(D'', f) → D'''_1
  36. Mirror(I, f) → I'_1
  37. Polygon(C''_3, D'''_1, I'_1) → poly3''_1, i', c''_1, d'''
  38. Mirror(G, f) → G'_1
  39. Mirror(E', f) → E''_1
  40. Mirror(C'_4, f) → J
  41. Polygon(G'_1, E''_1, J) → poly2''_1, j, g', e''
  42. Mirror(E'_1, f) → K
  43. Mirror(C''_2, f) → L
  44. Mirror(C'_3, f) → M
  45. Polygon(K, L, M) → poly1''_1, m, k, l
  46. OrthogonalLine(C, f) → h
  47. Mirror(C', h) → C''
  48. Mirror(D'', h) → D'''
  49. Mirror(I, h) → I'
  50. Polygon(C'', D''', I') → poly3'', i'_1, c''_2, d'''_1
  51. Mirror(G, h) → G'
  52. Mirror(E', h) → E''
  53. Mirror(C'_4, h) → N
  54. Polygon(G', E'', N) → poly2'', n, g'_1, e''_1
  55. Mirror(E'_1, h) → O
  56. Mirror(C''_2, h) → P
  57. Mirror(C'_3, h) → Q
  58. Polygon(O, P, Q) → poly1'', q, o, p
  59. Mirror(K, h) → K'
  60. Mirror(L, h) → L'
  61. Mirror(M, h) → M'
  62. Polygon(K', L', M') → poly4, m', k', l'
  63. Mirror(G'_1, h) → R
  64. Mirror(E''_1, h) → S
  65. Mirror(J, h) → J'
  66. Polygon(R, S, J') → poly5, j', r, s
  67. Mirror(C''_3, h) → T
  68. Mirror(D'''_1, h) → U
  69. Mirror(I'_1, h) → V
  70. Polygon(T, U, V) → poly6, v_1, t, u_1
  71. Vector((0, 0), (-3.27, 2.09)) → offsetvector
  72. Point(c) → W
  73. Rotate(W, 30°, A) → W'
  74. Angle(W, A, W') → δ
  75. Vector(W', W) → z
  76. Vector(W', A) → w_1
  77. Polygon(TestPoint, E_1, D_1, J_1, TestB, Z, F_1, A_1, G_1, B_1, H_1, C_1, I_1) → poly7, testpoint, i_1, d_1, j_1, testb, e_3, z_1, f_1, a_1, g_2, b_1, h_1, c_4
  78. Translate(TestPoint, Vector[((g - 100) / 100 * w_1)]) → TestPoint'_1
  79. Translate(E_1, Vector[((g - 100) / 100 * w_1)]) → K_1
  80. Translate(Z, Vector[((g - 100) / 100 * w_1)]) → Z'_1
  81. Translate(F_1, Vector[((g - 100) / 100 * w_1)]) → L_1
  82. Translate(A_1, Vector[((g - 100) / 100 * w_1)]) → M_1
  83. Translate(G_1, Vector[((g - 100) / 100 * w_1)]) → N_1
  84. Translate(B_1, Vector[((g - 100) / 100 * w_1)]) → O_1
  85. Translate(H_1, Vector[((g - 100) / 100 * w_1)]) → P_1
  86. Translate(C_1, Vector[((g - 100) / 100 * w_1)]) → Q_1
  87. Translate(I_1, Vector[((g - 100) / 100 * w_1)]) → R_1
  88. Translate(D_1, Vector[((g - 100) / 100 * w_1)]) → S_1
  89. Translate(J_1, Vector[((g - 100) / 100 * w_1)]) → T_1
  90. Translate(TestB, Vector[((g - 100) / 100 * w_1)]) → TestB'_1
  91. Polygon(TestPoint'_1, K_1, S_1, T_1, TestB'_1, Z'_1, L_1, M_1, N_1, O_1, P_1, Q_1, R_1) → poly7'_1, testpoint', r_1, s_1, t_1, testb', k_1, z', l_1, m_1, n_1, o_1, p_1, q_1
  92. Mirror(TestPoint, h) → TestPoint'
  93. Mirror(E_1, h) → U_1
  94. Mirror(Z, h) → Z'
  95. Mirror(F_1, h) → V_1
  96. Mirror(A_1, h) → W_1
  97. Mirror(G_1, h) → Z_1
  98. Mirror(B_1, h) → A_2
  99. Mirror(H_1, h) → B_2
  100. Mirror(C_1, h) → C_2
  101. Mirror(I_1, h) → D_2
  102. Mirror(D_1, h) → E_2
  103. Mirror(J_1, h) → F_2
  104. Mirror(TestB, h) → TestB'
  105. Polygon(TestPoint', U_1, E_2, F_2, TestB', Z', V_1, W_1, Z_1, A_2, B_2, C_2, D_2) → poly7', testpoint'_1, d_2, e_4, f_2, testb'_1, u_2, z'_1, v_2, w_2, z_2, a_2, b_2, c_5
  106. Segment(G_2, H_2) → h_2
  107. Segment(I_2, J_2) → i_2
  108. Circle(C_3, a) → e_5