Projective Geometry of the GeoGebra Ellipse: Construction and Properties

Projective Geometry of the GeoGebra Ellipse: Construction and Properties
Loading the math board and drawing, please wait…
2020-05-02 23:02
This GeoGebra example dynamically illustrates the projective geometry of an ellipse, showing how the conic arises as a section of a cylinder or pyramid and how projective correspondences are built using mirrors, midpoints, and lines. The core mathematical concepts include projective geometry, cross-ratio, involution, pole-polar relationships, and the unified treatment of conics as projections of circles. The construction uses GeoGebra commands such as Intersect, Mirror, Polygon, PointIn, Midpoint, Segment, Point, Line, Conic, Sphere, and Sequence, involving objects like b, E_1, a, F_1, G_1, FF, poly5, ff', ff, f_2, g_2, u, v, A, D, D', B, B', poly1, d', b', d, b_1, L, F, c, G, w, R, e, H, Q, poly3, r, q, h, g, E, and t. It is suitable for high school to university students studying analytic geometry, projective geometry, or using dynamic geometry software for exploratory learning, and serves as a powerful demonstration for teachers to visualize the connection between conics and projective transformations.

GeoGebra Commands & Parameters

  1. Intersect(xAxis, yAxis) → E_1
  2. Mirror(F_1, yAxis) → G_1
  3. Mirror(FF, yAxis) → FF'
  4. Polygon(FF', FF, F_1, G_1) → poly5, ff', ff, f_2, g_2
  5. Mirror(D, A) → D'
  6. Mirror(B, A) → B'
  7. Polygon(D', B', D, B) → poly1, d', b', d, b_1
  8. PointIn(poly1) → L
  9. Midpoint(d) → F
  10. Segment(F, D) → c
  11. Point(c) → G
  12. Line(G, b') → e
  13. Intersect(e, d') → H
  14. Polygon(R, Q, H, G) → poly3, r, q, h, g
  15. Point(b') → E
  16. Segment(L, E) → t
  17. Intersect(t, e) → U
  18. Segment(E, O) → f
  19. Line(U, f) → c_1
  20. Point(f) → P
  21. Segment(P, L) → i
  22. Intersect(c_1, i) → V
  23. Line(V, q) → r_2
  24. Intersect(r_2, h) → B_2
  25. Segment(V, B_2) → t_2
  26. Mirror(H, D') → H'
  27. Midpoint(D', F) → I
  28. Midpoint(d') → J
  29. PointIn(poly1) → K
  30. PointIn(poly1) → M
  31. PointIn(poly1) → N
  32. Polygon(L, N, M, K) → poly2, l, n, m, k
  33. Segment(P, N) → j
  34. Segment(P, M) → p
  35. Segment(P, K) → s
  36. Segment(K, E) → a_1
  37. Intersect(a_1, e) → S
  38. Intersect(e, h) → T
  39. Line(S, f) → d_1
  40. Intersect(d_1, s) → W
  41. Segment(N, E) → e_1
  42. Segment(M, E) → f_1
  43. Intersect(e_1, e) → A_1
  44. Intersect(f_1, e) → B_1
  45. Line(A_1, f) → g_1
  46. Intersect(j, g_1) → C_1
  47. Line(B_1, f) → h_1
  48. Intersect(h_1, p) → D_1
  49. Polygon(V, C_1, D_1, W) → poly4, v_1, c_2, d_2, w_1
  50. Segment(P, E) → i_1
  51. Segment(D, E) → j_1
  52. Line(C_1, V) → l_1
  53. Intersect(l_1, r) → J_1
  54. Intersect(l_1, h) → K_1
  55. Segment(R, J_1) → m_1
  56. Segment(G, K_1) → n_1
  57. Line(D_1, W) → q_1
  58. Intersect(r, q_1) → L_1
  59. Intersect(h, n_1) → M_1
  60. Intersect(q_1, h) → N_1
  61. Segment(R, L_1) → r_1
  62. Line(V, W) → a_2
  63. Intersect(g, a_2) → O_1
  64. Line(C_1, D_1) → e_2
  65. Intersect(e_2, g) → P_1
  66. Intersect(l_1, q_1) → U_1
  67. Segment(N_1, U_1) → k_2
  68. Line(W, r) → k_1
  69. Line(W, g) → p_1
  70. Intersect(k_1, g) → I_1
  71. Intersect(p_1, h) → Q_1
  72. Segment(I_1, G) → t_1
  73. Segment(G, Q_1) → i_2
  74. Line(D_1, g) → s_1
  75. Line(D_1, r) → b_2
  76. Intersect(b_2, g) → R_1
  77. Intersect(h, poly1) → S_1, S_2
  78. Intersect(s_1, h) → T_1
  79. Segment(R_1, D_1) → h_2
  80. Segment(D_1, T_1) → j_2
  81. Line(WH, ff') → l_2
  82. Line(WL, g_2) → m_2
  83. Intersect(l_2, m_2) → V_1
  84. Line(DH, ff') → n_2
  85. Line(DL, g_2) → p_2
  86. Intersect(p_2, n_2) → W_1
  87. Line(V, r) → q_2
  88. Intersect(q_2, poly3) → Z_1, A_2
  89. Segment(V, A_2) → s_2
  90. Line(VD, g_2) → a_3
  91. Line(VH, ff') → b_3
  92. Intersect(a_3, b_3) → C_2
  93. Line(C_1, r) → c_3
  94. Line(C_1, g) → d_3
  95. Intersect(h, poly1) → D_2, D_3
  96. Intersect(h, poly1) → E_2, E_3
  97. Intersect(c_3, q) → F_2
  98. Intersect(h, poly1) → G_2, G_3
  99. Intersect(d_3, h) → H_2
  100. Segment(F_2, C_1) → e_3
  101. Segment(C_1, H_2) → f_3
  102. Line(CH, ff') → g_3
  103. Line(CL, g_2) → h_3
  104. Intersect(g_3, h_3) → I_2
  105. Polygon(C_2, V_1, W_1, I_2) → poly6, c_4, v_2, w_2, i_3
  106. PointIn(poly1) → L_2
  107. Conic(L_2, K, L, N, M) → k_3
  108. Segment(L_2, P) → j_3
  109. Segment(E, L_2) → l_3
  110. Intersect(l_3, poly1) → M_2, M_3
  111. Intersect(l_3, poly1) → N_2, N_3
  112. Intersect(e, l_3) → O_2
  113. Line(O_2, g) → m_3
  114. Intersect(m_3, j_3) → P_2
  115. Conic(W, V, C_1, D_1, P_2) → p_3
  116. Line(P_2, r) → n_3
  117. Line(P_2, g) → q_3
  118. Intersect(n_3, g) → Q_2
  119. Intersect(q_3, h) → R_2
  120. Segment(P_2, R_2) → r_3
  121. Segment(P_2, Q_2) → s_3
  122. Conic(ZH, V_1, C_2, I_2, W_1) → t_3
  123. Line(P, A) → f_4
  124. Point(f_4) → C
  125. Sphere(C - (0, 0.13, -0.05), 0.3) → o_1
  126. Sphere(C, 0.2) → u_1
  127. Sequence(R + (i * Vector[R, Q]), i, 0, 1, 1 / o_2) → l1
  128. Sequence(G + (i * Vector[R, Q]), i, 0, 1, 1 / o_2) → l2
  129. Sequence(G + (i * Vector[G, R]), i, 0, 1, 1 / u_2) → l3
  130. Sequence(H + (i * Vector[G, R]), i, 0, 1, 1 / u_2) → l4
  131. Sequence(Segment[Element[l3, i], Element[l4, i]], i, 1, Length[l3]) → l5
  132. Sequence(Segment[Element[l1, i], Element[l2, i]], i, 1, Length[l1]) → l6

AI Drawing Prompt Reference

Draw an ellipse with its projective geometry construction. Start with coordinate axes and two symmetric points about the vertical axis, forming a quadrilateral. Add another symmetric quadrilateral and pick a point inside it. Connect this point to a midpoint of one side, then take a point on this segment and draw a line through it intersecting another side. Continue constructing intersections and lines to form triangles and quadrilaterals. Finally, select several random interior points and connect them to exterior points, creating intersecting segments. Mark all intersection points. The result is a complex geometric network illustrating the ellipse's projective properties.
The prompt above was compiled from the original drawing commands and is for reference only.