Animation 30: Hyperbola, Matrix, and Cuboid Transformations
Loading the math board and drawing, please wait…
① This GeoGebra example, titled 'Animation 30', is a dynamic demonstration that integrates hyperbolas, matrix transformations, cuboids, quadrilaterals, secant lines, and set-theoretic concepts in a single geometric construction. ② Core mathematical concepts include foci and vertices of a hyperbola, linear transformations (translation, scaling, rotation) applied via matrices, properties of secant lines, quadrilaterals and cuboids in space, and the set-theoretic organization of geometric objects. ③ Construction highlights: from the summary, commands such as Focus, Vertex, Segment, Translate, Point, Vector, Dilate, Angle, Rotate, Circle, Intersect, and Center are used to create foci F_1, F_2, vertices C, D, E, F, and derived points (C', D', C'_1, C'_2, A'', etc.) through translations, rotations, and dilations, along with auxiliary lines (secants d, e, f, g, h, i, j, k, n, u, v, l, m, p, q) and slider-driven animation. ④ Suitable for high school to undergraduate mathematics education, this example helps visualize conic sections and linear transformations, and serves as a reference for designing dynamic geometry lessons.
GeoGebra Commands & Parameters
Focus(c) → F_1, F_2Vertex(c) → C, D, E, FSegment(C, D) → dTranslate(C, (0, b + 4)) → C'Translate(D, (0, b + 4)) → D'Point(c) → GSegment(G, F_1) → eSegment(G, F_2) → fTranslate(C, (b + 4, 0)) → C'_1Vector(C, C') → uVector(D, D') → vDilate(C, If[0 < n < 1, 1 - n, 0], C') → C'_2Dilate(D, If[0 < n < 1, 1 - n, 0], D') → D'_2Segment(C'_2, D'_2) → lDilate(F_1, If[1 < n < 2, 2 - n, 1], C') → A'Vector(F_1, A') → wTranslate(G, w) → G'Segment(A', G') → mSegment(C, D) → pAngle(F_2, F_1, G) → αRotate(A', If[1 < n < 2, ((-(2 - n)) * α)], A') → A''Rotate(A', If[1 < n < 2, ((-(n - 2)) * α), 0], A'') → A''_1Rotate(A', If[1 < n < 2, ((-(n - 1)) * α), (-α)], A') → A''_2Rotate(G', If[1 < n < 2, ((-(n - 1)) * α), (-α)], A') → G''Segment(A''_2, G'') → m'Circle(C', e) → qIntersect(q, l, 1) → HSegment(C', H) → rSegment(F_1, G) → sDilate(F_2, If[2 < n < 3, 3 - n, 1], D') → B'Vector(F_2, B') → tTranslate(G, t) → G'_1Translate(G, t) → G'_2Translate(F_2, t) → B'_1Segment(G'_2, B'_1) → f'Angle(G, F_2, F_1) → βSegment(H, D') → a_1Segment(G, F_2) → b_1Center(c) → ADilate(A, If[1 < n < 2, 2 - n, 0], C') → A'_1Vector(F_1, A'_1) → u_1Translate(A, u_1) → A'_2Translate(G, u_1) → G'_3Segment(A'_2, G'_3) → e_1Angle(D, F_1, G) → γRotate(A'_2, ((-(n - 1)) * γ), A'_2) → BRotate(G'_3, ((-(n - 1)) * γ), A'_2) → IDilate(G, If[2 < n < 3, 3 - n, 0], D') → G'_4Vector(G, G'_4) → v_1Translate(A, v_1) → A'_3Translate(G, v_1) → G'_5Segment(A'_3, G'_5) → g_1Rotate(A'_3, If[2 < n < 3, ((-(n - 2)) * γ)], G'_4) → JRotate(G'_5, If[2 < n < 3, ((-(n - 2)) * γ)], G'_4) → KCircle(C', Distance[A''_2, G'']) → k_1Intersect(k_1, i_1, 2) → NSegment(C', N) → j_1Dilate(F_2, If[2 < n < 3, 3 - n], N) → OVector(F_2, O) → w_1Translate(G, w_1) → G'_6Translate(F_2, w_1) → LSegment(G'_6, L) → f'_1Circle(N, f) → p_1Rotate(G'_6, If[2 < n < 3, ((n - 2) * β)], O) → MRotate(L, If[2 < n < 3, ((n - 2) * β)], O) → L'Segment(M, L') → l_1Segment(N, D') → m_1Dilate(C', If[3 < n ≤ 4, 4 - n], C) → C''Dilate(D', If[3 < n ≤ 4, 4 - n], D) → D''Segment(C'', D'') → n_1