Segment Length Relationships from Intersections of Secants, Chords, and Tangents

Segment Length Relationships from Intersections of Secants, Chords, and Tangents
Loading the math board and drawing, please wait…
2016-11-23 04:43
This interactive GeoGebra example dynamically illustrates the relationships among segment lengths formed when secants, chords, and tangents intersect a circle, demonstrating the power-of-a-point theorems (intersecting chords, secant-secant, and tangent-secant). Core mathematical concepts include circle power, similar triangles, proportional segments, and the constancy of products of segment lengths. The construction uses GeoGebra commands such as Intersect, Point, Line, Circle, Segment, Angle, and Radius, along with conditional If statements and sliders (e.g., Steps, inside_outside) to animate different configurations. It is suitable for high school geometry or introductory college geometry courses, serving as a visual proof and exploration tool for the power of a point, helping students grasp how segment products remain equal whether the intersection lies inside or outside the circle. Ideal for classroom demonstrations, student inquiry, or mathematical experimentation.

GeoGebra Commands & Parameters

  1. Intersect(xAxis, yAxis) → A
  2. Point(xAxis) → B
  3. Line(C, B) → a
  4. Circle(A, B) → c
  5. Intersect(c, a, 2) → F
  6. Point(c) → D
  7. If((x(F) > x(D)) ∧ (x(F) < x(B)) ∧ ((y(F) > y(D)) ∨ (y(F) > y(B))), 1, 0) → F_ top
  8. Line(C, D) → b
  9. Intersect(c, b, 2) → E
  10. If((x(E) > x(D)) ∧ (x(E) < x(B)) ∧ ((y(E) > y(D)) ∨ (y(E) > y(B))), 1, 0) → E_ top
  11. If(E_ top + F_ top ≟ 1, 1, 0) → EFone_ top
  12. Segment(D, C) → d
  13. Segment(C, E) → e
  14. If(EFone_ top ≟ 0, Segment[C, F], Segment[C, B]) → g
  15. If(EFone_ top ≟ 0, Segment[C, B], Segment[C, F]) → h
  16. If(EFone_ top ≟ 0, Polygon[D, F, C], Polygon[D, C, B]) → poly1
  17. If(EFone_ top ≟ 0, Polygon[B, C, E], Polygon[C, E, F]) → poly2
  18. Angle(E, C, B) → α
  19. Angle(D, C, F) → β
  20. Angle(C, F, D) → γ
  21. Segment(D, E) → q
  22. Segment(F, B) → r
  23. Segment(D, C) → s
  24. Segment(C, B) → t
  25. Segment(C, E) → a_1
  26. Segment(C, F) → b_1
  27. Radius(c) → radius
  28. If(x(C)^(2) + y(C)^(2) ≤ radius^(2), 1, 0) → inside_ outside
  29. Angle(B, E, C) → δ
  30. Angle(C, D, F) → ε
  31. Angle(E, B, C) → ζ
  32. Angle(E, F, C) → η
  33. Angle(C, D, B) → θ
  34. If(E_ top ≟ 1 ∧ F_ top ≟ 1, 1, 0) → EFboth_ top
  35. If(inside_ outside ≟ 1, CircleArc[A, B, D], If[EFone_ top ≟ 0, If[EFboth_ top ≟ 0, CircleArc[A, E, F], CircleArc[A, F, E]], If[E_ top ≟ 1, If[x(C) < x(E), CircleArc[A, D, F], CircleArc[A, B, E]], If[x(C) < x(F), CircleArc[A, F, D], CircleArc[A, E, B]]]]) → f
  36. If(inside_ outside ≟ 1, Segment[D, F], If[EFone_ top ≟ 0, Segment[D, F], Segment[D, B]]) → i
  37. If(inside_ outside ≟ 1, Segment[E, B], If[EFone_ top ≟ 0, Segment[E, B], Segment[F, E]]) → j
  38. Angle(C, E, F) → ι
  39. Angle(D, B, F) → κ
  40. If(inside_ outside ≟ 1, Segment[D, F], If[EFone_ top ≟ 0, Segment[B, E], Segment[F, E]]) → k
  41. If(inside_ outside ≟ 1, Segment[B, F], If[EFone_ top ≟ 0, Segment[F, B], If[x(C) < x(F), Segment[D, E], Segment[F, B]]]) → m
  42. If(inside_ outside ≟ 1, Segment[B, E], If[EFone_ top ≟ 0, Segment[D, F], Segment[D, B]]) → p
  43. If(inside_ outside ≟ 1, Segment[D, E], If[EFone_ top ≟ 0, Segment[D, E], If[x(C) < x(F), Segment[F, B], Segment[D, E]]]) → n