正多边形的正弦函数关系可视化

正多边形的正弦函数关系可视化
几何画板及绘图内容加载中,请稍等……
2021-01-28 20:30
该范例演示如何用正多边形的几何构造来得到与角度相关的正弦函数变化规律,并在图形中观察随边数/相位变化的周期性特征。核心数学概念包括:三角函数(sin)、正多边形的中心角与边长/周长度量、角度相位与参数化、向量/射线与旋转变换、以及与函数图像相对应的几何量追踪。作图要点来自构造摘要中的命令与对象:使用 Sequence 与 If 生成参数序列与条件分支(如相位 phase、边数 sides 的迭代),借助 Rotate、Ray、Line、Segment 构造随角度变化的几何元素;用 Polygon、Circle、Intersect、Point 构成正多边形及其关键交点;通过 Distance、Vector 表示长度与方向信息;借助 Locus 生成变化轨迹(如由位置参数形成的曲线),并结合 Mod、Translate、Mirror 等完成周期性与对称/平移处理(对象如 t、AA、A、B、FF、liste1/liste2 等承载参数与点集);同时用 Perimeter、Line 等量化多边形周长相关量,用于与 sin 函数对应的几何表达。适合高中到大学初级阶段的数学建模、三角函数教学、几何与函数的综合课程,以及对函数与变换直观理解的课堂演示或研究性学习。

GeoGebra 命令及参数

  1. Mod(sides, 4) → aa
  2. Sequence(K + ((R * cos(i + π / 3 + (phase * π / 6))), (R * sin(i + π / 3 + (phase * π / 6)))), i, 0, 6.28319, 2.0944) → liste2
  3. Mod(sides, 2) → nn
  4. If(aa ≟ 1, Rotate[B, π / 5, A], Rotate[B, ((-π)) / 5, A]) → BB
  5. If(aa ≟ 0, BB, F) → FF
  6. Rotate(B, t, A) → B'
  7. Ray(A, B') → k
  8. Segment(B, E) → h
  9. Segment(A, B') → b
  10. Sequence(Rotate[FF, i + (phase * π / 10), A], i, 0, 6.28319, (2 * π / 5)) → liste1
  11. Polygon(liste1) → p
  12. Intersect(k, p) → K_2
  13. Intersect(b, p) → D
  14. Point(p, m) → M_1
  15. Perimeter(p) → per
  16. Line(M_1, xAxis) → a
  17. Intersect(a, yAxis) → C
  18. Circle(A, R) → c
  19. Distance(A, C) → dis
  20. Distance(B, J) → dd
  21. Segment(D, P) → d
  22. Segment(F, G) → g
  23. Vector(G, F) → u
  24. Vector(I, B) → v
  25. Segment(H, A) → i
  26. Segment(D, H) → j
  27. Locus(P, t) → lieu1
  28. Rotate(L, t, K) → L'
  29. Rotate(M, 120°, K) → M'
  30. Rotate(M, 240°, K) → M'_1
  31. Ray(M, M') → a_1
  32. Ray(M, M'_1) → l_1
  33. Polygon(liste2) → poly2
  34. Ray(K, L') → l
  35. Intersect(l, poly2) → N
  36. Segment(K, N) → d_1
  37. Distance(L, JJ) → dt
  38. Segment(N, PT) → n
  39. Locus(PT, t) → lieu2
  40. Sequence(O + ((R * cos(i + π / 4 + (phase * π / 8))), (R * sin(i + π / 4 + (phase * π / 8)))), i, 0, 6.28319, 1.5708) → liste3
  41. Rotate(Q, t, O) → Q'
  42. Ray(O, Q') → r
  43. Polygon(liste3) → poly1
  44. Intersect(r, poly1) → S
  45. Segment(O, S) → e_1
  46. Distance(Q, T) → dc
  47. Locus(PC, t) → lieu3
  48. Segment(S, PC) → f_1
  49. Vector(V, W) → w
  50. Circle(Z, R) → g_1
  51. Rotate(A_1, t, Z) → B_1
  52. Segment(Z, B_1) → h_1
  53. Segment(B_1, D_1) → i_1
  54. Vector(C_1, G_1) → z
  55. Vector(E_1, F_1) → u_1
  56. Vector(O_1, H_1) → v_1
  57. Segment(K_2, A) → j_1
  58. Mirror(Q, O) → Q'_1
  59. Mirror(L, K) → L'_1
  60. Mirror(A_1, Z) → I_1
  61. Vector(L'_1, L) → w_1
  62. Vector(I_1, A_1) → z_1
  63. Vector(Q'_1, Q) → k_1
  64. Mirror(A, M) → A'
  65. Mirror(K_1, O) → L_{1}
  66. Mirror(J_1, Z) → N_{1}
  67. Vector(N_{1}, J_1) → m_1
  68. Vector(L_{1}, K_1) → n_1
  69. Mirror(A, M) → A'_1
  70. Mirror(K, M) → K'
  71. Mirror(M, K) → M'_2
  72. Vector(M'_2, M) → q_1
  73. Segment(Q_1, S) → r_1
  74. Segment(P_1, N) → s_1
  75. Segment(R_1, B_1) → t_1
  76. Sequence(V + (i, 0), i, 0, 14, 1.5708) → liste4
  77. Sequence(O_1 + (i, 0), i, 0, 14, 1.5708) → liste5
  78. Sequence(E_1 + (i, 0), i, 0, 14, 1.5708) → liste6
  79. Sequence(C_1 + (i, 0), i, 0, 14, 1.5708) → liste7
  80. Sequence(Text[i / 2.5 + "π", Element[liste7, i] - (0.51, 0.95)], i, 0, Length[liste5], 5) → liste9
  81. Sequence(Text[i / 2.5 + "π", Element[liste6, i] - (0.51, 0.95)], i, 0, Length[liste5], 5) → liste10
  82. Sequence(Text[i / 2.5 + "π", Element[liste4, i] - (0.51, 0.95)], i, 0, Length[liste5], 5) → liste11
  83. Polygon(V_{1}, Z_{1}, A_2, W_{1}) → q1, f_2, g_2, a_2, h_2
  84. Polygon(W_{1}, B_2, C_2, A_2) → q2, i_2, b_2, c_2, j_2
  85. Polygon(B_2, D_2, E_2, C_2) → q3, k_2, d_2, e_2, l_2
  86. Polygon(D_2, F_2, G_2, E_2) → q4, m_2, n_2, p_2, q_2
  87. Translate(q_1, Vector[K, V]) → u_2
  88. Vector(V - (0, 3.5), V + (0, 3.5)) → v_2
  89. Vector(O_1 - (0, 3.15), O_1 + (0, 3.45)) → w_2
  90. Vector(E_1 - (0, 3.5), E_1 + (0, 3.5)) → r_2
  91. Vector(C_1 - (0, 3.15), C_1 + (0, 3.5)) → s_2
  92. Sequence(Text[i / 2.5 + "π", Element[liste5, i] - (0.51, 0.95)], i, 0, Length[liste5], 5) → liste8
  93. Vector(H_2 - (R, 0), H_2 + (R, 0)) → t_2
  94. Vector(H_2 - (0, R), H_2 + (0, R)) → u_3
  95. Sequence(Rotate[H_2 + (R, 0), i + (phase * π / 12), H_2], i, 0, 6.28319, (2 * π / 6)) → l1
  96. Polygon(l1) → poly3
  97. Vector(I_2 - (0, 3.5), I_2 + (0, 3.5)) → v_3
  98. Vector(I_2, (14, y(H_2))) → w_3
  99. Sequence(I_2 + (i, 0), i, 0, 14, 1.5708) → liste6b
  100. Rotate(H_2 + (R, 0), t, H_2) → J_2
  101. Ray(H_2, J_2) → f_3
  102. Intersect(f_3, poly3) → L_2
  103. Segment(H_2, L_2) → g_3
  104. Locus(M_2, t) → lieu4
  105. Segment(L_2, M_2) → h_3
  106. Vector(L_1 - (0, R), L_1 + (0, R)) → a_3
  107. Vector(N_2 - (0, R), N_2 + (0, R)) → b_3
  108. Vector(O_2 - (0, R), O_2 + (0, R)) → c_3
  109. Vector(L_1 - (R, 0), L_1 + (R, 0)) → d_3
  110. Vector(N_2 - (R, 0), N_2 + (R, 0)) → e_3
  111. Vector(O_2 - (R, 0), O_2 + (R, 0)) → i_3
  112. Vector(P_2 - (0, R), P_2 + (0, R)) → j_3
  113. Vector(Q_2 - (0, R), Q_2 + (0, R)) → k_3
  114. Vector(R_2 - (0, R), R_2 + (0, R)) → l_3
  115. Vector(P_2, (39, y(P_2))) → m_3
  116. Vector(Q_2, (39, y(Q_2))) → n_3
  117. Vector(R_2, (39, y(R_2))) → p_3
  118. Sequence(Rotate[L_1 + (R, 0), i + (phase * π / 14), L_1], i, 0, 6.28319, (2 * π / 7)) → l2
  119. Sequence(Rotate[N_2 + (R, 0), i + (phase * π / 16), N_2], i, 0, 6.28319, (2 * π / 8)) → l3
  120. Sequence(Rotate[O_2 + (R, 0), i + (phase * π / ((2 * sides))), O_2], i, 0, 6.28319, (2 * π / sides)) → l4
  121. Polygon(l2) → poly4
  122. Sequence(P_2 + (i, 0), i, 0, 14, 1.5708) → liste6c
  123. Sequence(Q_2 + (i, 0), i, 0, 14, 1.5708) → liste6d
  124. Sequence(R_2 + (i, 0), i, 0, 14, 1.5708) → liste6e
  125. Polygon(l3) → poly5
  126. Polygon(l4) → poly6
  127. Rotate(L_1 + (R, 0), t, L_1) → S_2
  128. Rotate(N_2 + (R, 0), t, N_2) → T_2
  129. Rotate(O_2 + (R, 0), t, O_2) → U_2
  130. Ray(L_1, S_2) → q_3
  131. Ray(N_2, T_2) → r_3
  132. Ray(O_2, U_2) → s_3
  133. Intersect(q_3, poly4) → V_2
  134. Intersect(r_3, poly5) → W_2
  135. Intersect(s_3, poly6) → Z_2
  136. Segment(L_1, V_2) → t_3
  137. Segment(N_2, W_2) → f_4
  138. Segment(O_2, Z_2) → g_4
  139. Segment(V_2, A_3) → h_4
  140. Segment(W_2, B_3) → i_4
  141. Segment(Z_2, C_3) → j_4
  142. Locus(A_3, t) → lieu5
  143. Locus(B_3, t) → lieu6
  144. Locus(C_3, t) → lieu7
  145. Polygon(liste3) → poly7
  146. Polygon(liste2) → q5
  147. Polygon(liste1) → poly8
  148. Polygon(l1) → poly9
  149. Polygon(l2) → poly10
  150. Polygon(l4) → poly11

AI 绘图提示语参考

在同一坐标系中,以某点为中心先画出以不同相位旋转生成的正多边形,令多边形顶点随参数等角度连续变化;连接产生用于截取的射线与线,再与该多边形相交得到关键交点。以圆心与该相交结果作距离度量,并取沿参数变化的某个对应点绘制轨迹曲线,展现类正弦的周期性。重复另一组不同初始角与步长的参数设置,构造另一正多边形与相交点,并同样生成对应的轨迹曲线形成对比,同时保留中心点、构造线和相交线段等几何关系。
以上提示语为根据原始绘图命令整理而来,仅供参考。