Special Triangle (II): 30-60-90 Triangle as Half an Equilateral Triangle
Loading the math board and drawing, please wait…
This interactive GeoGebra applet guides students to discover, without words or angle measures, that a 30-60-90 triangle is exactly half of an equilateral triangle. The core mathematical concepts include the side-length ratios of special right triangles, symmetry, and properties of equilateral triangles. The construction uses GeoGebra commands such as Polygon, Dilate, Segment, Circle, Intersect, CircleSector, Rotate, Vector, Translate, CircleArc, and Midpoint to build an equilateral triangle with auxiliary circles, rotated and translated copies, and multiple points (A, B, C, D, E, F, G, H, I, J, K) and segments (a, b, c, d, e, f, g, h, i, j, k) along with circular arcs to reveal the geometric relationships. Suitable for middle or high school geometry classes, this applet helps students visualize the 30-60-90 triangle's properties and its connection to equilateral triangles, while also exploring symmetry and transformations.
GeoGebra Commands & Parameters
Polygon(A, B, 3) → poly1, a, b, c, CDilate(A, If[0 < d ≤ 1, 1 - d, 0], B) → A'Segment(A, A') → eDilate(B, If[1 < d ≤ 2, 2 - d, 0], C) → B'Segment(B, B') → fDilate(C, If[2 < d ≤ 3, 3 - d, 0], A) → C'Segment(C, C') → gSegment(A, B) → hSegment(A, C) → iSegment(B, C) → jCircle(A, (0.15 * h)) → kIntersect(k, i, 1) → DIntersect(k, h, 1) → ECircleSector(A, E, D) → pRotate(A, If[3.5 < d ≤ 4.5, ((d - 3.5) * π / 3), 1.0471975511965976], A) → A'_1Rotate(A', If[3.5 < d ≤ 4.5, ((d - 3.5) * π / 3), 1.0471975511965976], A) → A''Segment(A'_1, A'') → e'Rotate(A, If[4.5 < d ≤ 5.5, ((-(d - 4.5)) * π / 3), -1.0471975511965976], B) → A'_2Rotate(A', If[4.5 < d ≤ 5.5, ((-(d - 4.5)) * π / 3), -1.0471975511965976], B) → A''_1Segment(A'_2, A''_1) → e'_1Dilate(A, If[6 < d ≤ 7, 7 - d, 0], B) → A'_3Vector(A, A'_3) → uTranslate(p, u) → p'CircleArc(A, E, D) → qRotate(p', If[7 < d ≤ 8, (((d - 7) * 2) * π / 3), 2.0943951023931953], B) → p''Circle(B, (0.15 * h)) → rIntersect(f, e'_1) → GIntersect(f, e'_1) → HIntersect(f, e'_1) → IIntersect(f, e'_1) → JIntersect(r, j, 1) → FIntersect(r, h, 1) → KCircleArc(B, F, K) → sDilate(B, If[8 < d ≤ 9, 9 - d, 0], C) → B'_1Vector(B, B'_1) → vTranslate(p'', v) → p'''Rotate(p''', If[9 < d ≤ 10, (((d - 9) * 2) * π / 3), 2.0943951023931953], C) → tCircle(C, (0.15 * h)) → c_1Intersect(g, e') → LIntersect(c_1, i) → M,Intersect(c_1, j) → N,Midpoint(h) → ODilate(C, If[10 < d ≤ 11, 11 - d, 0], O) → C'_1Segment(C, C'_1) → lCircle(O, (0.15 * h)) → d_1Segment(C, O) → mIntersect(d_1, m, 1) → PIntersect(d_1, h) → Q, RPolygon(A, O, C) → poly2, c_2, a_1, oIntersect(c_1, m) → S,CircleSector(C, S, N) → e_1CircleSector(O, R, P) → f_1Segment(O, B) → nRotate(f_1, If[11.25 < d ≤ 12.25, ((d - 11.25) * π / 2), 1.5708], O) → g_1Rotate(e_1, If[12.25 < d ≤ 13.25, ((-(d - 12.25)) * π / 6), -0.5236], C) → h_1CircleArc(C, S, N) → k_1CircleArc(O, R, P) → p_1Rotate(O, If[13.25 < d ≤ 14.25, ((-(d - 13.25)) * π), -3.141592653589793], O) → O'Rotate(B, If[13.25 < d ≤ 14.25, ((d - 13.25) * π), 3.14159], O) → B'_2Segment(O', B'_2) → n'Segment(O, B) → b_1Dilate(C, If[14.25 < d ≤ 15.25, 15.25 - d, 0], A) → C'_2Vector(C, C'_2) → wTranslate(h_1, w) → q_1Rotate(q_1, If[15.25 < d ≤ 16.25, (((-(d - 15.25)) * 4) * π / 3), -4.1887902047863905], A) → r_1Dilate(C, If[16.25 < d ≤ 17.25, 17.25 - d, 0], A) → C'_3Vector(C, C'_3) → u_1Translate(h_1, u_1) → s_1Rotate(s_1, If[17.25 < d ≤ 18.25, (((-(d - 17.25)) * 7) * π / 6), -3.665191429188092], A) → t_1Midpoint(g) → TRotate(O', If[18.25 < d ≤ 19.25, ((d - 18.25) * π / 3), 1.0471975511965976], A) → O''Rotate(B'_2, If[18.25 < d ≤ 19.25, ((d - 18.25) * π / 3), 1.0471975511965976], A) → USegment(O'', U) → n''Dilate(A, If[19.25 < d ≤ 20.25, 20.25 - d, 0], T) → A'_4Vector(A, A'_4) → v_1Translate(O', v_1) → O''_1Translate(B'_2, v_1) → VSegment(O''_1, V) → n''_1Rotate(O''_1, If[20.25 < d ≤ 21.25, ((d - 20.25) * π / 3), 1.0471975511965976], T) → WRotate(V, If[20.25 < d ≤ 21.25, ((d - 20.25) * π / 3), 1.0471975511965976], T) → V'Segment(W, V') → i_1