纺锤球体:由旋转与镜像构造的立体几何范例

纺锤球体:由旋转与镜像构造的立体几何范例
几何画板及绘图内容加载中,请稍等……
2020-12-13 04:42
该范例演示了一个名为“纺锤球体”(spindle sphere)的特殊三维曲面,它由多条线段绕轴旋转并经过镜像、平移等操作生成,最终形成类似纺锤或橄榄形的封闭立体。核心数学概念涉及立体几何中的球体、旋转体、对称变换(镜像)、平移以及参数化构造;同时隐含了线性函数与多项式函数在定义旋转轴或辅助曲线时的作用。作图要点包括:使用Line、Segment、Point等基础对象定义初始线段和轴;通过Sequence、Rotate生成一系列旋转副本;利用OrthogonalPlane、Mirror实现空间对称;借助Translate进行平移;最终用Sphere命令生成球体,并通过If、Element等控制条件与列表元素。该范例适合高中或大学低年级学生,用于理解三维空间中旋转体与对称变换的几何构造,也可作为GeoGebra 3D绘图教学的进阶案例,帮助学习者掌握列表、序列与变换命令的组合应用。

GeoGebra 命令及参数

  1. Line((0, 0, 1), (0, 1, 1)) → c
  2. Sequence(Rotate[(0, 0, 0), (-((i * 15°))), c], i, 0, 6) → list1
  3. Rotate(list1, (360 / m)°, zAxis) → list1'
  4. Line(Element[list1, 2], Element[list1', 2]) → l1_1
  5. Line((0, 0, 0), l1_1) → l0
  6. Sequence(Polygon[Element[list1, i], Element[list1', i], Element[list1', i + 1], Element[list1, i + 1]], i, 1, 6) → list2
  7. Segment(A, A + (0, 0, 0.5)) → a
  8. Point(a) → P
  9. If(z(P) ≥ 0.5, 0, (2 * (0.5 - z(P)))) → t
  10. Translate(list2, Vector[(s * Vector[(0, 0, 0), (1, 0, 0)])]) → list2'
  11. Translate(l0, Vector[(s * Vector[(0, 0, 0), (1, 0, 0)])]) → l0'
  12. Sequence(Pyramid[Element[list2, i], (0, 0, 1)], i, 1, 6) → list3
  13. Translate(list3, Vector[(s * Vector[(0, 0, 0), (1, 0, 0)])]) → list3'
  14. Line(Element[list1, 3], Element[list1', 3]) → l2
  15. Line(Element[list1, 4], Element[list1', 4]) → l3
  16. Line(Element[list1, 5], Element[list1', 5]) → l4
  17. Line(Element[list1, 6], Element[list1', 6]) → l5
  18. Line(Element[list1, 7], Element[list1', 7]) → l6
  19. Rotate(Element[list3', 1], (t * 7.5°), l0') → d
  20. Translate(l1_1, Vector[(s * Vector[(0, 0, 0), (1, 0, 0)])]) → l1'
  21. Translate(l2, Vector[(s * Vector[(0, 0, 0), (1, 0, 0)])]) → l2'
  22. Translate(l3, Vector[(s * Vector[(0, 0, 0), (1, 0, 0)])]) → l3'
  23. Translate(l4, Vector[(s * Vector[(0, 0, 0), (1, 0, 0)])]) → l4'
  24. Rotate(l1', (7.5° * t), l0') → l1''
  25. Rotate(Rotate[Element[list3', 2], (t * 7.5°), l0'], (t * 15°), l1'') → e
  26. Rotate(Rotate[l2', (t * 7.5°), l0'], (t * 15°), l1'') → l2''
  27. Rotate(Rotate[Rotate[Element[list3', 3], (t * 7.5°), l0'], (t * 15°), l1''], (t * 15°), l2'') → f
  28. Rotate(Rotate[Rotate[l3', (t * 7.5°), l0'], (t * 15°), l1''], (t * 15°), l2'') → l3''
  29. Rotate(Rotate[Rotate[Rotate[Element[list3', 4], (t * 7.5°), l0'], (t * 15°), l1''], (t * 15°), l2''], (15° * t), l3'') → g
  30. Rotate(Rotate[Rotate[Rotate[l4', (t * 7.5°), l0'], (t * 15°), l1''], (t * 15°), l2''], (t * 15°), l3'') → l4''
  31. Rotate(Rotate[Rotate[Rotate[Rotate[Element[list3', 5], (t * 7.5°), l0'], (t * 15°), l1''], (t * 15°), l2''], (15° * t), l3''], (15° * t), l4'') → h
  32. Translate(l5, Vector[(s * Vector[(0, 0, 0), (1, 0, 0)])]) → l5'
  33. Rotate(Rotate[Rotate[Rotate[Rotate[l5', (t * 7.5°), l0'], (t * 15°), l1''], (t * 15°), l2''], (t * 15°), l3''], (15° * t), l4'') → l5''
  34. Rotate(Element[list2', 1], (t * 7.5°), l0') → poly1
  35. Rotate(Rotate[Rotate[Rotate[Rotate[Rotate[Element[list3', 6], (t * 7.5°), l0'], (t * 15°), l1''], (t * 15°), l2''], (15° * t), l3''], (15° * t), l4''], (15° * t), l5'') → i
  36. Rotate(Rotate[Element[list2', 2], (t * 7.5°), l0'], (t * 15°), l1'') → poly2
  37. Rotate(Rotate[Rotate[Element[list2', 3], (t * 7.5°), l0'], (t * 15°), l1''], (t * 15°), l2'') → poly3
  38. Rotate(Rotate[Rotate[Rotate[Element[list2', 4], (t * 7.5°), l0'], (t * 15°), l1''], (t * 15°), l2''], (15° * t), l3'') → poly4
  39. Rotate(Rotate[Rotate[Rotate[Rotate[Element[list2', 5], (t * 7.5°), l0'], (t * 15°), l1''], (t * 15°), l2''], (15° * t), l3''], (15° * t), l4'') → poly5
  40. Rotate(Rotate[Rotate[Rotate[Rotate[Rotate[Element[list2', 6], (t * 7.5°), l0'], (t * 15°), l1''], (t * 15°), l2''], (15° * t), l3''], (15° * t), l4''], (15° * t), l5'') → poly6
  41. OrthogonalPlane((0, 0, 1), zAxis) → m_1
  42. Translate(l6, Vector[(s * Vector[(0, 0, 0), (1, 0, 0)])]) → l6'
  43. Rotate(Rotate[Rotate[Rotate[Rotate[Rotate[l6', (t * 7.5°), l0'], (t * 15°), l1''], (t * 15°), l2''], (t * 15°), l3''], (15° * t), l4''], (15° * t), l5'') → l6''
  44. Rotate(Rotate[Rotate[Rotate[Rotate[Rotate[Rotate[m_1, (t * 7.5°), l0'], (t * 15°), l1''], (t * 15°), l2''], (15° * t), l3''], (15° * t), l4''], (15° * t), l5''], (7.5° * t), l6'') → n
  45. Mirror(i, n) → i'
  46. Mirror(h, n) → h'
  47. Mirror(g, n) → g'
  48. Mirror(f, n) → f'
  49. Mirror(e, n) → e'
  50. Mirror(d, n) → d'
  51. Mirror(poly6, n) → poly6'
  52. Mirror(poly5, n) → poly5'
  53. Mirror(poly4, n) → poly4'
  54. Mirror(poly3, n) → poly3'
  55. Mirror(poly2, n) → poly2'
  56. Mirror(poly1, n) → poly1'
  57. Sequence(Rotate[list3, 15° + ((15° * 22) * i), zAxis], i, 0, 1) → list4
  58. Mirror(list4, m_1) → list4'
  59. Sequence(Rotate[list2, (15° * i), zAxis], i, 1, 23) → list5
  60. Mirror(list5, m_1) → list5'
  61. Sequence(Rotate[l1, i, zAxis], i, 0, (2 * π), (2 * π / p)) → l7
  62. Sphere((0, 0, 1), 0.982) → b
  63. Element(l7, A1) → B1
  64. Element(l7, A2) → B2
  65. Element(l7, A3) → B3
  66. Element(l7, A4) → B4
  67. Element(l7, A5) → B5
  68. Element(l7, A6) → B6
  69. Element(l7, A7) → B7
  70. Element(l7, A8) → B8
  71. Element(l7, A9) → B9
  72. Element(l7, A10) → B10
  73. Element(l7, A11) → B11
  74. Element(l7, A12) → B12
  75. Element(l7, A13) → B13
  76. Element(l7, A14) → B14
  77. Element(l7, A15) → B15
  78. Element(l7, A16) → B16
  79. Element(l7, A17) → B17
  80. Element(l7, A18) → B18
  81. Element(l7, A19) → B19
  82. Element(l7, A20) → B20
  83. Element(l7, A21) → B21
  84. Element(l7, A22) → B22
  85. Element(l7, A23) → B23
  86. Element(l7, A24) → B24
  87. Element(l7, A25) → B25
  88. Element(l7, A26) → B26
  89. Element(l7, A27) → B27
  90. Element(l7, A28) → B28
  91. Element(l7, A29) → B29
  92. Element(l7, A30) → B30
  93. Element(l7, A31) → B31
  94. Element(l7, A32) → B32
  95. Element(l7, A33) → B33
  96. Element(l7, A34) → B34
  97. Element(l7, A35) → B35
  98. Element(l7, A36) → B36
  99. Element(l7, A37) → B37
  100. Element(l7, A38) → B38
  101. Element(l7, A39) → B39
  102. Element(l7, A40) → B40
  103. Element(l7, A41) → B41
  104. Element(l7, A42) → B42
  105. Element(l7, A43) → B43
  106. Element(l7, A44) → B44
  107. Element(l7, A45) → B45
  108. Element(l7, A46) → B46
  109. Element(l7, A47) → B47
  110. Element(l7, A48) → B48
  111. Element(l7, A49) → B49
  112. Element(l7, A50) → B50
  113. Element(l7, A51) → B51
  114. Element(l7, A52) → B52
  115. Element(l7, A53) → B53
  116. Element(l7, A54) → B54
  117. Element(l7, A55) → B55
  118. Element(l7, A56) → B56
  119. Element(l7, A57) → B57

AI 绘图提示语参考

绘制一个“纺锤球/橄榄状”的三维曲面:先在三维空间选取一条水平旋转轴(z轴),并给出一条位于轴旁的细长线段(从z=1的高度出发向z方向延伸一段),将这条线段绕z轴做等角度旋转得到一组分段曲线。随后把相邻的旋转位置用多边形面片连接起来,形成由若干四边形围成的壳体;再从这些环面向上构造锥形侧面形成体积外观。对壳体沿x方向按参数平移一段,再将这些面片按参数绕底部参考线逐步旋转,叠加得到多个不同方位的面片层。最后建立一个镜像参考面,使整体在该面附近出现镜像对称,并把另一侧的面片按同样的旋转与镜像关系补全,形成完整对称的纺锤球外形。
以上提示语为根据原始绘图命令整理而来,仅供参考。