五角十二面体与其对偶截角二十面体:对边与面的统一配色可视化

五角十二面体与其对偶截角二十面体:对边与面的统一配色可视化
几何画板及绘图内容加载中,请稍等……
2020-12-31 04:37
该范例演示五角十二面体及其对偶体(截角二十面体)如何在同一球面几何背景下实现边与面的结构化配色,从而突出两类对偶多面体之间的对应关系与对称性。核心数学概念包括正多面体/对偶多面体、球面几何、立体几何变换,以及基于几何关系的分段判定与分类着色(如用角度、点落位与排序实现同类元素筛选)。作图要点是:使用 Sphere 构造参考球面,借助 PointIn 判断点在球面或球内的条件;利用 Circle、Angle 与 Segment 生成构型所需的几何元素与用于分类的角度度量;通过 If 与 KeepIf 对满足条件的对象进行保留与分组;使用 Sort、First 进行有序选择;并用 Sequence 组织迭代生成的结构元素;最后用 Textfield、TableText、UnicodeToLetter 与 Text 对关键信息(如编号、对应关系或体积/参数表)进行标注与展示。适合高中及大学的立体几何、计算机数学可视化与几何建模课程使用,也适合作为多面体对偶与对称性主题的教学演示与拓展练习。

GeoGebra 命令及参数

  1. Sequence(((zoom * Element[Element[A00d, i], 1]), (zoom * Element[Element[A00d, i], 2]), (zoom * Element[Element[A00d, i], 3])), i, 1, Length[A00d]) → A0d
  2. Sequence(((zoom * Element[Element[A00, i], 1]), (zoom * Element[Element[A00, i], 2]), (zoom * Element[Element[A00, i], 3])), i, 1, Length[A00]) → A0
  3. Sphere(O, r_o) → sp02d
  4. Textfield(R1sphere) → InputBox5
  5. Sphere(O, R1sphere) → sp01
  6. Textfield(r_o) → InputBox6
  7. Textfield(jarc) → InputBox8
  8. Textfield(jarc_d) → InputBox9
  9. Textfield(f_{Poly}) → InputBox11
  10. Textfield(k) → InputBox15
  11. Textfield(k_d) → InputBox14
  12. TableText({Append["i", 1…Length[mm5a]], Append["\fgcolor{orange}{n}", mm5a], Append["\fgcolor{orange}{N}", mm7a], Append["\fgcolor{#007FFF}{n/dual}", mm5ad], Append["\fgcolor{#007FFF}{N}", mm7ad]}, "hr") → text24
  13. Textfield(iseg) → InputBox17
  14. Textfield(f_{Poly}d) → InputBox18
  15. Textfield(isegd) → InputBox19
  16. UnicodeToLetter(34) → u34
  17. TableText({Append["i", 1…Max[Length[Segn], Length[Segnd]]], Append["\fgcolor{orange}{s_i}", Segn / Segments_o1], Append["\fgcolor{orange}{N}", lLength], Append["\fgcolor{#007FFF}{s_id}", Segnd / Segments_o1d], Append["\fgcolor{#007FFF}{N}", lLengthd]}, "hr") → text23
  18. Textfield(n_3) → InputBox20
  19. If(n_3 ≟ 0, "", Text["" + n_3]) → txt_3
  20. Textfield(nd_3) → InputBox21
  21. If(nd_3 ≟ 0, "", Text["" + nd_3]) → txtd_3
  22. Circle(A_{farbe}, rfabe) → farbekreis
  23. PointIn(farbekreis) → A
  24. Angle(A) → α
  25. Segment(C, D) → h
  26. Sort(Sequence[Segment[Element[A0, Element[Element[nom, i], 1]], Element[A0, Element[Element[nom, i], 2]]], i, 1, Length[nom]]) → Segments
  27. First(Segments, i_s) → Segments_o
  28. Sort(Sequence[Segment[Element[A0d, Element[Element[nomd, i], 1]], Element[A0d, Element[Element[nomd, i], 2]]], i, 1, Length[nomd]]) → Segmentsd
  29. First(Segmentsd, id_s) → Segmentsd_o
  30. KeepIf(round((x * 10^(k))) / 10^(k) ≟ Element[Segn, 1], Segments) → la1
  31. KeepIf(round((x * 10^(k))) / 10^(k) ≟ Element[Segn, 2], Segments) → la2
  32. Sequence(Polygon[Element[A0, Element[Element[mm1, f], 1]], Element[A0, Element[Element[mm1, f], 2]], Element[A0, Element[Element[mm1, f], 3]]], f, 1, Length[mm1]) → poly_{3}
  33. KeepIf(round((x * 10^(k))) / 10^(k) ≟ Element[poly_{3}S, 1], poly_{3}) → poly_{3}1
  34. KeepIf(round((x * 10^(k))) / 10^(k) ≟ Element[Segnd, 1], Segmentsd) → lad1
  35. KeepIf(round((x * 10^(k))) / 10^(k) ≟ Element[Segnd, 2], Segmentsd) → lad2
  36. KeepIf(round((x * 10^(k))) / 10^(k) ≟ Element[Segnd, 3], Segmentsd) → lad3
  37. KeepIf(round((x * 10^(k))) / 10^(k) ≟ Element[Segnd, 4], Segmentsd) → lad4
  38. KeepIf(round((x * 10^(k))) / 10^(k) ≟ Element[Segnd, 5], Segmentsd) → lad5
  39. Sequence(Polygon[Sequence[A0d(mm6d(1, f, k)), k, 1, Length[mm6d(1, 1)]]], f, 1, Length[mm6d(1)]) → polyd_{5}
  40. Sequence(Polygon[Sequence[A0d(mm6d(2, f, k)), k, 1, Length[mm6d(2, 1)]]], f, 1, Length[mm6d(2)]) → polyd_{6}

AI 绘图提示语参考

绘制一个球面参考系,其中包含一个五角十二面体(32个顶点)及其对偶截角二十面体(60个顶点),两者同心嵌套。用橙色标记五角十二面体的棱和面,用蓝色标记对偶体的棱和面,以展示对偶关系。通过球面上的辅助圆和点来定位,用线段连接顶点构成棱,用多边形填充面。添加文本输入框和表格,显示棱长、面数等参数,并用颜色区分不同类别的棱。整体突出对称性和结构对应。
以上提示语为根据原始绘图命令整理而来,仅供参考。