立方体与立方八面体的旋转变换

立方体与立方八面体的旋转变换
几何画板及绘图内容加载中,请稍等……
2016-02-03 03:46
该范例演示了立方体(cube)在旋转过程中如何通过截角变换形成立方八面体(cuboctahedron),并展示了三维立体在二维平面上的投影与动态旋转效果。核心数学概念包括三维旋转变换、多面体的顶点与棱关系、以及投影几何。作图要点:利用GeoGebra的Point、Line、Segment、Polygon等命令构造立方体的顶点和棱,通过Translate、Rotate(隐含于旋转动画)和PathParameter控制动态过程,使用Ellipse、OrthogonalLine、Intersect、Ray、Midpoint、Vector等辅助构造投影与辅助线,最终生成多个多边形面(如三角形和正方形)以呈现立方八面体的结构。适合高中或大学阶段的立体几何、变换几何教学,也可用于数学可视化演示。

GeoGebra 命令及参数

  1. Point(xAxis) → Q
  2. Point(xAxis) → W
  3. Point(yAxis) → Z
  4. Ellipse(Q, W, Z) → c
  5. Point(c) → A
  6. Line(Q, W) → a
  7. OrthogonalLine(Z, a) → b
  8. Intersect(b, a) → O
  9. Ray(A, O) → d
  10. Intersect(c, d) → Q_1, C
  11. Line(Z, d) → e
  12. Intersect(c, e) → Q_3, Q_2
  13. Midpoint(Q_2, Z) → Q_4
  14. Line(Q_4, O) → f
  15. Point(b) → E
  16. Vector(O, E) → u
  17. Point(c) → B
  18. Ray(B, O) → g
  19. Intersect(c, g, 2) → D
  20. Segment(A, B) → h
  21. Segment(A, D) → i
  22. Segment(D, C) → j
  23. Segment(C, B) → k_1
  24. Translate(A, u) → A'
  25. Translate(D, u) → D'
  26. Translate(C, u) → C'
  27. Translate(B, u) → B'
  28. Segment(D', C') → l
  29. Segment(C', B') → m
  30. Segment(B', A') → n
  31. Segment(A', D') → p
  32. Segment(D', D) → q
  33. Segment(C', C) → r
  34. Segment(B', B) → s
  35. Segment(A', A) → t
  36. Vector(A, B) → v
  37. Vector(A, D) → w
  38. Translate({A, B, C, D}, Vector[(k * u)]) → up
  39. Translate({A', B', C', D'}, Vector[((-k) * u)]) → down
  40. Translate({A, A', B', B}, Vector[(k * w)]) → ost
  41. Translate({A, A', D', D}, Vector[(k * v)]) → nord
  42. Translate({B, B', C'}, Vector[((-k) * v)]) → sud
  43. Translate(C, Vector[((-k) * v)]) → C_1
  44. Translate({D, D', C'}, Vector[((-k) * w)]) → west
  45. Translate(C, Vector[((-k) * w)]) → C_2
  46. PathParameter(A) → o
  47. Polygon(Element[down, 1], Element[nord, 2], Element[ost, 2]) → poly1, a_1, b_1, c_1
  48. Polygon(Element[down, 4], Element[nord, 3], Element[west, 2]) → poly2, d_1, e_1, f_1
  49. Polygon(Element[up, 2], Element[sud, 1], Element[ost, 4]) → poly3, g_1, h_1, i_1
  50. Polygon(Element[down, 3], Element[sud, 3], Element[west, 3]) → poly4, j_1, l_1, m_1
  51. Polygon(Element[down, 2], Element[sud, 2], Element[ost, 3]) → poly5, n_1, p_1, q_1
  52. Polygon(Element[up, 1], Element[nord, 1], Element[ost, 1]) → poly6, r_1, s_1, t_1
  53. Polygon(C_1, C_2, Element[up, 4]) → poly7, a_2, b_2, c_2
  54. Polygon(Element[up, 5], Element[nord, 4], Element[west, 1]) → poly8, d_2, e_2, f_2
  55. Polygon(Element[up, 1], Element[nord, 1], Element[sud, 1], Element[up, 2], Element[down, 2], Element[sud, 2], Element[nord, 2], Element[down, 1]) → poly9, g_2, h_2, i_2, j_2, k_2, l_2, m_2, n_2
  56. Polygon(Element[ost, 2], Element[nord, 2], Element[sud, 2], Element[ost, 3], Element[west, 3], Element[sud, 3], Element[nord, 3], Element[west, 2]) → poly11, d_3, e_3, f_3, g_3, h_3, i_3, j_3, k_3
  57. Polygon(Element[up, 2], Element[down, 2], Element[ost, 3], Element[west, 3], Element[down, 3], Element[up, 4], C_2, Element[ost, 4]) → poly10, p_2, q_2, r_2, s_2, t_2, a_3, c_3, b_3
  58. Polygon(Element[up, 1], Element[down, 1], Element[ost, 2], Element[west, 2], Element[down, 4], Element[up, 5], Element[west, 1], Element[ost, 1]) → poly12, l_3, m_3, n_3, p_3, q_3, r_3, s_3, t_3
  59. Polygon(Element[ost, 1], Element[nord, 1], Element[sud, 1], Element[ost, 4], C_2, C_1, Element[nord, 4], Element[west, 1]) → poly13, a_4, b_4, c_4, d_4, c_5, c_6, e_4, f_4
  60. Polygon(Element[up, 5], Element[down, 4], Element[nord, 3], Element[sud, 3], Element[down, 3], Element[up, 4], C_1, Element[nord, 4]) → poly14, g_4, h_4, i_4, j_4, k_4, l_4, c_7, m_4