正十二面体的动态生成

正十二面体的动态生成
几何画板及绘图内容加载中,请稍等……
2018-01-08 13:16
本范例演示如何利用30-60-90三角形动态生成正十二面体。核心数学概念包括角度、向量和几何作图。通过使用GeoGebra命令如Line、Rotate、Intersect和Polygon等,可以构建出正十二面体。适合高中几何教学或数学爱好者探索几何变换。

GeoGebra 命令及参数

  1. Line(U, V) → i
  2. OrthogonalLine(V, i) → j
  3. Rotate(V, π / 3, U) → V'
  4. Angle(V, U, V') → α
  5. Ray(U, V') → k
  6. Intersect(j, k) → W
  7. Angle(W, V, U) → β
  8. Segment(U, V) → m
  9. Dilate(U, If[0 < h ≤ 1, 1 - h, 0], V) → U'
  10. Segment(U, U') → n
  11. Dilate(V, If[1 < h ≤ 2, 2 - h, 0], W) → V'_1
  12. Segment(V, V'_1) → p
  13. Midpoint(U, W) → Z
  14. Dilate(W, If[2 < h ≤ 3, 3 - h, 0], Z) → W'
  15. Segment(W, W') → q
  16. Dilate(Z, If[3 < h ≤ 4, 4 - h, 0], U) → Z'
  17. Segment(Z, Z') → r
  18. OrthogonalLine(W, q) → s
  19. Circle(W, a) → t
  20. Intersect(t, s, 1) → A_1
  21. Segment(U, A_1) → f_1
  22. Circle(A_1, a) → c_1
  23. Intersect(c_1, f_1, 1) → B_1
  24. Rotate(U, If[4 < h ≤ 5, ((h - 4) * π / 3), π / 3], U) → U'_1
  25. Rotate(U', If[4 < h ≤ 5, ((h - 4) * π / 3), π / 3], U) → U''
  26. Segment(U'_1, U'') → n'
  27. Rotate(U'_1, If[5 < h ≤ 6, ((h - 5) * π), π], Z) → C_1
  28. Rotate(U'', If[5 < h ≤ 6, ((h - 5) * π), π], Z) → U'''
  29. Segment(C_1, U''') → n''
  30. Rotate(C_1, If[6 < h ≤ 7, (((h - 6) * 3) * π / 2), (3 * π / 2)], W) → D_1
  31. Rotate(U''', If[6 < h ≤ 7, (((h - 6) * 3) * π / 2), (3 * π / 2)], W) → E_1
  32. Segment(D_1, E_1) → n'''
  33. Angle(A_1, W, Z) → γ
  34. Dilate(A_1, If[7 < h ≤ 8, 8 - h, 0], B_1) → F_1
  35. Dilate(B_1, If[8 < h ≤ 9, 9 - h, 0], U) → G_1
  36. Segment(A_1, F_1) → g_1
  37. Segment(B_1, G_1) → h_1
  38. Angle(U, A_1, W) → δ
  39. Rotate(D_1, If[9 < h ≤ 10, ((-(h - 9)) * δ), (-δ)], A_1) → H_1
  40. Rotate(E_1, If[9 < h ≤ 10, ((-(h - 9)) * δ), (-δ)], A_1) → I_1
  41. Segment(H_1, I_1) → i_1
  42. Polygon(U, V, W) → t1, w, u, v
  43. Polygon(U, W, A_1) → t2, a_1, u_1, w_1
  44. Line((0, 0, 0), (1, 0, 0)) → j_1
  45. Line((0, 0, 0), (0, 1, 0)) → k_1
  46. Line((0, 0, 0), (0, 0, 1)) → l_1
  47. Dilate(V, If[15 < h ≤ 16, 16 - h, 0], U) → V'_2
  48. Vector(V, V'_2) → v_1
  49. Translate(V, v_1) → V'_3
  50. Translate(V'_1, v_1) → J_1
  51. Segment(V'_3, J_1) → p'
  52. Rotate(V'_3, If[16 < h ≤ 17, ((-(h - 16)) * π / 2), ((-π)) / 2], U) → K_1
  53. Rotate(J_1, If[16 < h ≤ 17, ((-(h - 16)) * π / 2), ((-π)) / 2], U) → L_1
  54. Segment(K_1, L_1) → p''
  55. Dilate(U, If[17 < h ≤ 18, 18 - h, 0], L_1) → U'_2
  56. Sphere(U, U'_2) → o
  57. Angle(L_1, U, I) → ε
  58. Rotate(K_1, If[18 < h ≤ 19, ((h - 18) * ε), ε], U) → M_1
  59. Rotate(L_1, If[18 < h ≤ 19, ((h - 18) * ε), ε], U, d) → N_1
  60. Segment(M_1, N_1) → p'''
  61. Dilate(U, If[19 < h ≤ 20, 20 - h, 0], I) → U'_3
  62. Vector(U, U'_3) → b_1
  63. Translate(B_1, b_1) → O_1
  64. Translate(G_1, b_1) → P_1
  65. Segment(O_1, P_1) → m_1
  66. Angle(O_1, I, J) → ζ
  67. Rotate(O_1, If[20 < h ≤ 21, ((h - 20) * ζ), ζ], I, Plane[J, I, O_1]) → Q_1
  68. Rotate(P_1, If[20 < h ≤ 21, ((h - 20) * ζ), ζ], I, Plane[U, I, O_1]) → R_1
  69. Segment(Q_1, R_1) → n_1
  70. Rotate(Q_1, If[21 < h ≤ 22, (((h - 21) * 108) * π / 180), (108 * π / 180)], J, Plane[J, I, T]) → S_1
  71. Rotate(R_1, If[21 < h ≤ 22, (((h - 21) * 108) * π / 180), (108 * π / 180)], J, Plane[J, I, T]) → T_1
  72. Segment(S_1, T_1) → p_1
  73. Rotate(S_1, If[22 < h ≤ 23, (((-(h - 22)) * 108) * π / 180), (-108 * π / 180)], T, Plane[J, T, L]) → U_1
  74. Rotate(T_1, If[22 < h ≤ 23, (((-(h - 22)) * 108) * π / 180), (-108 * π / 180)], T, Plane[J, T, L]) → V_1
  75. Segment(U_1, V_1) → q_1
  76. Rotate(T_1, If[23 < h ≤ 24, (((h - 23) * 108) * π / 180), (108 * π / 180)], L, Plane[L, T, N]) → Z_1
  77. Rotate(U_1, If[23 < h ≤ 24, (((h - 23) * 108) * π / 180), (108 * π / 180)], L, Plane[L, T, N]) → A_2
  78. Rotate(V_1, If[23 < h ≤ 24, (((h - 23) * 108) * π / 180), (108 * π / 180)], L, Plane[L, T, N]) → B_2
  79. Segment(A_2, B_2) → s_1
  80. Rotate(A_2, If[24 < h ≤ 25, (((h - 24) * 108) * π / 180), (108 * π / 180)], N, Plane[L, O, N]) → W_1
  81. Rotate(B_2, If[24 < h ≤ 25, (((h - 24) * 108) * π / 180), (108 * π / 180)], N, Plane[L, O, N]) → C_2
  82. Segment(W_1, C_2) → r_1
  83. Rotate(W_1, If[25 < h ≤ 26, (((h - 25) * 108) * π / 180), (108 * π / 180)], O, Plane[B, O, N]) → D_2
  84. Rotate(C_2, If[25 < h ≤ 26, (((h - 25) * 108) * π / 180), (108 * π / 180)], O, Plane[E, O, N]) → E_2
  85. Segment(D_2, E_2) → t_1
  86. Polygon(R, Q, N, L, T) → poly1, r_2, q_2, n_2, l_2, t_2
  87. Polygon(R, T, J, I, H) → poly2, r_3, t_3, j_2, i_2, h_2
  88. Polygon(F, Q, R, H, G) → poly3, f_2, q_3, r_4, h_3, g_2
  89. Polygon(F, E, O, N, Q) → poly4, f_3, e_1, o_1, n_3, q_4
  90. Polygon(S, M, K, J, I) → poly5, s_2, m_2, k_2, j_3, i_3
  91. Polygon(T, L, A, K, J) → poly6, t_4, l_3, a_2, k_3, j_4
  92. Polygon(N, O, B, A, L) → poly7, n_4, o_2, b_2, a_3, l_4
  93. Polygon(A, B, C, M, K) → poly8, a_4, b_3, c_2, m_3, k_4
  94. Polygon(B, C, D, E, O) → poly9, b_4, c_3, d_1, e_2, o_3
  95. Polygon(D, P, G, F, E) → poly10, d_2, p_2, g_3, f_4, e_3
  96. Polygon(D, C, M, S, P) → poly11, d_3, c_4, m_4, s_3, p_3
  97. Polygon(G, H, I, S, P) → poly12, g_4, h_4, i_4, s_4, p_4
  98. Rotate(D_2, If[26 < h ≤ 27, (((-(h - 26)) * 108) * π / 180), (-108 * π / 180)], E, Plane[O, E, D]) → F_2
  99. Rotate(E_2, If[26 < h ≤ 27, (((-(h - 26)) * 108) * π / 180), (-108 * π / 180)], E, Plane[O, E, D]) → G_2
  100. Segment(F_2, G_2) → d_4
  101. Rotate(F_2, If[27 < h ≤ 28, (((-(h - 27)) * 108) * π / 180), (-108 * π / 180)], D, Plane[P, E, D]) → H_2
  102. Rotate(G_2, If[27 < h ≤ 28, (((-(h - 27)) * 108) * π / 180), (-108 * π / 180)], D, Plane[P, E, D]) → I_2
  103. Segment(H_2, I_2) → e_4
  104. Rotate(H_2, If[28 < h ≤ 29, (((h - 28) * 108) * π / 180), (108 * π / 180)], P, Plane[S, P, D]) → J_2
  105. Rotate(I_2, If[28 < h ≤ 29, (((h - 28) * 108) * π / 180), (108 * π / 180)], P, Plane[S, P, D]) → K_2
  106. Segment(J_2, K_2) → f_5
  107. Rotate(J_2, If[29 < h ≤ 30, (((h - 29) * 108) * π / 180), (108 * π / 180)], S, Plane[S, P, I]) → L_2
  108. Rotate(K_2, If[29 < h ≤ 30, (((h - 29) * 108) * π / 180), (108 * π / 180)], S, Plane[S, P, I]) → M_2
  109. Segment(L_2, M_2) → g_5
  110. Rotate(L_2, If[30 < h ≤ 31, (((-(h - 30)) * 108) * π / 180), (-108 * π / 180)], S, Plane[S, M, I]) → N_2
  111. Rotate(M_2, If[30 < h ≤ 31, (((-(h - 30)) * 108) * π / 180), (-108 * π / 180)], S, Plane[S, M, I]) → O_2
  112. Segment(N_2, O_2) → h_5
  113. Rotate(S_1, If[30 < h ≤ 31, (((-(h - 30)) * 108) * π / 180), (-108 * π / 180)], J, Plane[T, J, K]) → P_2
  114. Rotate(T_1, If[30 < h ≤ 31, (((-(h - 30)) * 108) * π / 180), (-108 * π / 180)], J, Plane[T, J, K]) → Q_2
  115. Segment(P_2, Q_2) → i_5
  116. Rotate(A_2, If[30 < h ≤ 31, (((-(h - 30)) * 108) * π / 180), (-108 * π / 180)], L, Plane[N, L, A]) → R_2
  117. Rotate(B_2, If[30 < h ≤ 31, (((-(h - 30)) * 108) * π / 180), (-108 * π / 180)], L, Plane[N, L, A]) → S_2
  118. Segment(R_2, S_2) → j_5
  119. Rotate(D_2, If[30 < h ≤ 31, (((-(h - 30)) * 108) * π / 180), (-108 * π / 180)], O, Plane[E, O, B]) → T_2
  120. Rotate(E_2, If[30 < h ≤ 31, (((-(h - 30)) * 108) * π / 180), (-108 * π / 180)], O, Plane[E, O, B]) → U_2
  121. Segment(T_2, U_2) → k_5
  122. Rotate(H_2, If[30 < h ≤ 31, (((-(h - 30)) * 108) * π / 180), (-108 * π / 180)], D, Plane[P, D, C]) → V_2
  123. Rotate(I_2, If[30 < h ≤ 31, (((-(h - 30)) * 108) * π / 180), (-108 * π / 180)], D, Plane[P, D, C]) → W_2
  124. Segment(V_2, W_2) → l_5
  125. Rotate(S_1, If[31 < h ≤ 32, (((-(h - 31)) * 108) * π / 180), (-108 * π / 180)], T, Plane[J, T, R]) → Z_2
  126. Rotate(T_1, If[31 < h ≤ 32, (((-(h - 31)) * 108) * π / 180), (-108 * π / 180)], T, Plane[J, T, R]) → A_3
  127. Segment(Z_2, A_3) → m_5
  128. Rotate(L_2, If[31 < h ≤ 32, (((-(h - 31)) * 108) * π / 180), (-108 * π / 180)], I, Plane[S, I, H]) → B_3
  129. Rotate(M_2, If[31 < h ≤ 32, (((-(h - 31)) * 108) * π / 180), (-108 * π / 180)], I, Plane[S, I, H]) → C_3
  130. Segment(B_3, C_3) → n_5
  131. Rotate(H_2, If[31 < h ≤ 32, (((-(h - 31)) * 108) * π / 180), (-108 * π / 180)], P, Plane[D, P, G]) → D_3
  132. Rotate(I_2, If[31 < h ≤ 32, (((-(h - 31)) * 108) * π / 180), (-108 * π / 180)], P, Plane[D, P, G]) → E_3
  133. Segment(D_3, E_3) → p_5
  134. Rotate(D_2, If[31 < h ≤ 32, (((-(h - 31)) * 108) * π / 180), (-108 * π / 180)], E, Plane[O, E, F]) → F_3
  135. Rotate(E_2, If[31 < h ≤ 32, (((-(h - 31)) * 108) * π / 180), (-108 * π / 180)], E, Plane[O, E, F]) → G_3
  136. Segment(F_3, G_3) → q_5
  137. Rotate(A_2, If[31 < h ≤ 32, (((-(h - 31)) * 108) * π / 180), (-108 * π / 180)], N, Plane[L, N, Q]) → H_3
  138. Rotate(B_2, If[31 < h ≤ 32, (((-(h - 31)) * 108) * π / 180), (-108 * π / 180)], N, Plane[L, N, Q]) → I_3
  139. Segment(H_3, I_3) → r_5
  140. Rotate(R_2, If[32 < h ≤ 33, (((-(h - 32)) * 108) * π / 180), (-108 * π / 180)], A, Plane[L, A, B]) → J_3
  141. Rotate(S_2, If[32 < h ≤ 33, (((h - 32) * 108) * π / 180), (108 * π / 180)], A, Plane[L, A, B]) → K_3
  142. Segment(J_3, K_3) → s_5
  143. Rotate(P_2, If[32 < h ≤ 33, (((-(h - 32)) * 108) * π / 180), (-108 * π / 180)], K, Plane[K, A, J]) → L_3
  144. Rotate(Q_2, If[32 < h ≤ 33, (((-(h - 32)) * 108) * π / 180), (-108 * π / 180)], K, Plane[K, A, J]) → M_3
  145. Segment(L_3, M_3) → t_5
  146. Rotate(N_2, If[32 < h ≤ 33, (((-(h - 32)) * 108) * π / 180), (-108 * π / 180)], M, Plane[K, S, M]) → N_3
  147. Rotate(O_2, If[32 < h ≤ 33, (((-(h - 32)) * 108) * π / 180), (-108 * π / 180)], M, Plane[K, S, M]) → O_3
  148. Segment(N_3, O_3) → a_5
  149. Rotate(V_2, If[32 < h ≤ 33, (((h - 32) * 108) * π / 180), (108 * π / 180)], C, Plane[C, D, M]) → P_3
  150. Rotate(W_2, If[32 < h ≤ 33, (((-(h - 32)) * 108) * π / 180), (-108 * π / 180)], C, Plane[C, D, M]) → Q_3
  151. Segment(P_3, Q_3) → b_5
  152. Rotate(T_2, If[32 < h ≤ 33, (((-(h - 32)) * 108) * π / 180), (-108 * π / 180)], B, Plane[O, B, C]) → R_3
  153. Rotate(U_2, If[32 < h ≤ 33, (((-(h - 32)) * 108) * π / 180), (-108 * π / 180)], B, Plane[O, B, C]) → S_3
  154. Segment(R_3, S_3) → c_5
  155. Rotate(D_3, If[33 < h ≤ 34, (((-(h - 33)) * 108) * π / 180), (-108 * π / 180)], G, Plane[P, G, F]) → T_3
  156. Rotate(E_3, If[33 < h ≤ 34, (((-(h - 33)) * 108) * π / 180), (-108 * π / 180)], G, Plane[P, G, F]) → U_3
  157. Segment(T_3, U_3) → d_5
  158. Rotate(F_3, If[33 < h ≤ 34, (((-(h - 33)) * 108) * π / 180), (-108 * π / 180)], F, Plane[E, Q, F]) → V_3
  159. Rotate(G_3, If[33 < h ≤ 34, (((h - 33) * 108) * π / 180), (108 * π / 180)], F, Plane[E, Q, F]) → W_3
  160. Segment(V_3, W_3) → e_5
  161. Rotate(H_3, If[33 < h ≤ 34, (((-(h - 33)) * 108) * π / 180), (-108 * π / 180)], Q, Plane[N, Q, R]) → Z_3
  162. Rotate(I_3, If[33 < h ≤ 34, (((-(h - 33)) * 108) * π / 180), (-108 * π / 180)], Q, Plane[N, Q, R]) → A_4
  163. Segment(Z_3, A_4) → f_6
  164. Rotate(Z_2, If[33 < h ≤ 34, (((-(h - 33)) * 108) * π / 180), (-108 * π / 180)], R, Plane[H, T, R]) → B_4
  165. Rotate(A_3, If[33 < h ≤ 34, (((-(h - 33)) * 108) * π / 180), (-108 * π / 180)], R, Plane[H, T, R]) → C_4
  166. Segment(B_4, C_4) → g_6
  167. Rotate(B_3, If[33 < h ≤ 34, (((h - 33) * 108) * π / 180), (108 * π / 180)], H, Plane[H, I, G]) → D_4
  168. Rotate(C_3, If[33 < h ≤ 34, (((h - 33) * 108) * π / 180), (108 * π / 180)], H, Plane[H, I, G]) → E_4
  169. Segment(D_4, E_4) → h_6

AI 绘图提示语参考

绘制一个正十二面体,使用30-60-90三角形动态生成。首先画出一条线段UV,然后构造与这条线垂直的线j,旋转V点形成V',计算角度α,接着画出射线k并找到其与j的交点W,计算角度β,构造线段UV和UW,进行缩放变换得到线段U'和V'1,继续构造正十二面体的各个面,包括三角形UVA1、UVW等,最终形成一个正十二面体。
以上提示语为根据原始绘图命令整理而来,仅供参考。