Cut-The-Knot Action 19: Dynamic Exploration of Quadrilaterals and Quadratic Equa
Loading the math board and drawing, please wait…
① This example is a dynamic and modifiable geometric illustration of a problem posted by Alexander Bogomolny on Twitter, demonstrating hidden relationships within a general quadrilateral (including kites) through interactive manipulation. ② Core mathematical concepts include general quadrilaterals, kites, quadratic equations, standard deviation, secant lines, and constraints among angles and segments, highlighting the interplay between algebra and geometry. ③ Construction highlights: Based on the construction summary, the GeoGebra commands used include Segment, Rotate, Ray, Point, Line, Angle, Intersect, OrthogonalLine, Polygon, Min, Circle, CircleSector, Dilate, Vector, and Translate, building multiple points (e.g., A, B, C, D, E, F, G), segments, circles, sectors, vectors, and translated objects, with sliders or dynamic points enabling real-time changes. ④ Suitable for high school and above students or math enthusiasts, this example serves to explore quadrilateral properties, quadratic equations, and geometric constraints, and can be used for classroom demonstrations or independent student inquiry.
GeoGebra Commands & Parameters
Segment(A, B) → fRotate(A, (a * π / 180), B) → A'Ray(B, A') → gPoint(g) → CLine(C, A) → n_2Segment(C, A) → iAngle(B, C, A) → γRotate(B, γ / 2, C) → B'Ray(C, B') → kIntersect(f, k) → IAngle(C, A, B) → βRotate(C, β / 2, A) → C'Ray(A, C') → jSegment(B, C) → hIntersect(h, j) → JSegment(J, I) → lPoint(l) → KOrthogonalLine(K, i) → h_1Line(C, B) → m_2OrthogonalLine(K, h) → g_2Line(B, A) → l_2OrthogonalLine(K, f) → nAngle(A, B, A') → αPolygon(B, A, C) → t1, c, b, a_1Angle(C, A, C') → δAngle(B, C, B') → εIntersect(j, k) → DMin({f, i, h}) → dCircle(B, (0.15 * d)) → eCircle(A, (0.15 * d)) → pCircle(C, (0.15 * d)) → qIntersect(q, h, 1) → EIntersect(p, i) → F,Intersect(e, f) → G,Intersect(e, h, 1) → HCircleSector(B, G, H) → rOrthogonalLine(K, l) → mOrthogonalLine(K, h) → sIntersect(s, h) → NIntersect(n, l_2) → MSegment(K, M) → tSegment(K, N) → f_1Angle(K, N, C) → ζAngle(A, M, K) → ηOrthogonalLine(D, i) → g_1Circle(K, f_1) → c_1Intersect(n_2, h_1) → LAngle(K, L, A) → θRay(K, L) → i_1Circle(K, f_1) → d_1Intersect(d_1, i_1, 1) → ODilate(A, If[0 < u ≤ 1, 1 - u, 0], D) → A'_1Dilate(C, If[0 < u ≤ 1, 1 - u, 0], D) → C'_1Segment(A, A'_1) → j_1Segment(C, C'_1) → k_1Dilate(D, If[1 < u ≤ 2, 2 - u, 0], J) → D'Dilate(D, If[1 < u ≤ 2, 2 - u, 0], I) → D'_1Segment(D, D') → l_1Segment(D, D'_1) → m_1Rotate(F, If[1 < u ≤ 2, ((u - 1) * δ), δ], A) → F'Rotate(E, If[1 < u ≤ 2, ((u - 1) * ε), ε], C) → E'CircleSector(A, F, F') → e_1CircleSector(C, E, E') → p_1Rotate(p_1, If[3 < u ≤ 4, ((u - 3) * ε), ε], C) → q_1Rotate(e_1, If[3 < u ≤ 4, ((u - 3) * δ), δ], A) → r_1Dilate(J, If[4 < u ≤ 5, 5 - u, 0], I) → J'Segment(J, J') → n_1Dilate(K, If[7 < u ≤ 8, 8 - u, 0], M) → K'Dilate(K, If[7 < u ≤ 8, 8 - u, 0], N) → K'_1Segment(K, K') → s_1Segment(K, K'_1) → t_1Dilate(K, If[7 < u ≤ 8, 8 - u, 0], O) → K'_2Segment(K, K'_2) → b_1Dilate(O, If[8 < u ≤ 9, 9 - u, 0], L) → O'Segment(O, O') → f_2Intersect(g_2, m_2) → PAngle(L, K, P) → κRotate(K, If[10 < u ≤ 11, ((-(u - 10)) * κ), (-κ)], K) → K'_3Rotate(K'_1, If[10 < u ≤ 11, ((-(u - 10)) * κ), (-κ)], K) → QSegment(K'_3, Q) → h_2Line(O, s_1) → i_2Point(i_2) → RAngle(R, O, L) → λDilate(K, If[11 < u ≤ 12, 12 - u, 0], O) → K'_4Vector(K, K'_4) → vTranslate(K, v) → K'_5Translate(K', v) → K''Segment(K'_5, K'') → j_2Rotate(K'_5, If[12 < u ≤ 13, ((u - 12) * λ), λ], O) → SRotate(K'', If[12 < u ≤ 13, ((u - 12) * λ), λ], O) → K'''Segment(S, K''') → k_2