MT4-01-P3b-XT1 三角函数比值互动练习
几何画板及绘图内容加载中,请稍等……
① 本范例是一个用于练习三角函数比值的互动教学工具,通过动态调整滑块改变角度,实时显示直角三角形中正弦、余弦、正切等比值的变化。② 核心数学概念包括三角函数定义(sin、cos、tan)、角度与弧度转换、直角三角形边角关系,以及函数图像与数值表格的联动。③ 作图要点:使用GeoGebra的Point、Segment、Polygon构造直角三角形,Angle和LaTeX标注角度,Slider控制角度变量,TableText和Sequence生成数值表格,CurveCartesian绘制三角函数曲线,Zip和If实现条件判断与动态更新,Vector和Translate用于辅助图形变换。④ 适合高中或大学预科阶段学习三角函数的学生,也可用于教师课堂演示或学生自主探索,通过交互操作直观理解三角比随角度变化的规律。
GeoGebra 命令及参数
Point(validPoints) → PIndexOf(P, validPoints) → currRowJoin({Sequence["black", i, 1, currRow - 1], {"#d32f2f"}, Sequence["black", i, currRow + 1, Max[13, maxRadius + 1]]}) → RowColoursAngle((5, 0), (0, 0), P) → angleThetaLaTeX("(4,3)") → B3LaTeX("(0,5)") → B5LaTeX("(-4,3)") → B7LaTeX("(-3,-4)") → B10LaTeX("(0,-5)") → B11LaTeX("(3,-4)") → B12LaTeX("(4,-3)") → B13LaTeX("(5,0)") → B14Sequence(If[i ≟ 1, (("\cellcolor{#ffcc80}{\text{" * B1) * "}}"), If[currRow ≠ i - 1, Element[B1:B14, i], (("\cellcolor{#fff59d}{" * Element[B1:B14, i]) * "}")]], i, 1, maxRow + 1) → tblColPointsSequence(If[i ≟ 1, (("\cellcolor{#ffcc80}{" * C1) * "}"), If[currRow ≠ i - 1, Element[C1:C14, i], (("\cellcolor{#fff59d}{" * Element[C1:C14, i]) * "}")]], i, 1, maxRow + 1) → tblColSinSequence(If[i ≟ 1, (("\cellcolor{#ffcc80}{" * D1) * "}"), If[currRow ≠ i - 1, Element[D1:D14, i], (("\cellcolor{#fff59d}{" * Element[D1:D14, i]) * "}")]], i, 1, maxRow + 1) → tblColCosElement(B2:B14, currRow) → currPtSegment(P, (x(P), 0)) → verticalSegmentSequence(If[i ≟ 1, (("\cellcolor{#ffcc80}{" * F1) * "}"), If[currRow ≠ i - 1, Element[F1:F14, i], (("\cellcolor{#fff59d}{" * Element[F1:F14, i]) * "}")]], i, 1, maxRow + 1) → tblColThetaSequence(If[i ≟ 1, (("\cellcolor{#ffcc80}{" * E1) * "}"), If[currRow ≠ i - 1, Element[E1:E14, i], (("\cellcolor{#fff59d}{" * Element[E1:E14, i]) * "}")]], i, 1, maxRow + 1) → tblColTanTableText({tblColTheta, tblColPoints, tblColSin, tblColCos, tblColTan}, "|11111_11111111111111v") → tblDataLaTeX((((("\text{\textbf{Question: }" * MainInstruc) * "\\\textbf{Instructions: }") * SpecInstruc) * "}")) → allInstrucZip(Rotate[A, angleTheta, (0, 0)], A, {(1.8, -0.2), (2, 0), (2.2, -0.2)}) → chevronPointsSequence(Segment[Element[chevronPoints, i], Element[chevronPoints, i + 1]], i, 1, 2) → chevronCurveCartesian((2 * cos(((2 * π) * t))), (2 * sin(((2 * π) * t))), t, 0, angleTheta / (360°)) → angleCurveVector((0, 0), Rotate[(6.5, 0), angleTheta]) → terminalVectorIf(x(P) > 0, If[y(P) ≥ 0, P + (1, 0.5), P + (1.4, -2)], If[y(P) > 0, P + (-3, 1), P + (-4, -2.5)]) → PposPolygon({(0, 0), (0.7, 0), (0.7, 0.7), (0, 0.7)}) → angleBoxTemplateTranslate(angleBoxTemplate, (If[x(P) > 0, x(P) - 0.7, x(P)], If[y(P) > 0, 0, -0.7])) → angleDecorationLaTeX(("P" * currPt)) → txtPtP