复合立体的分割与体积分配(含随机选择)

复合立体的分割与体积分配(含随机选择)
几何画板及绘图内容加载中,请稍等……
2024-09-05 16:09
该范例演示将复合立体(如由多个长方体/正交体组合而成的“整体”)进行几何分割,并让学生通过体积关系理解如何把总体积拆成若干部分。核心数学概念包括:立体几何、体积(Volumen)与幂函数/面积-体积的幂次关系、切线(Tangente)所对应的局部几何直观(用于支撑函数与曲线的理解)、以及概率/随机变量(Zufallsvariablen或Zufallsgrößen)用于随机抽取分割方案或练习顺序。作图与交互要点:从“构造摘要”可见使用了 Textfield 构建输入框,Sum 用于体积/分块量的求和,Shuffle 与 Element 实现从候选项中随机选择并取出对应参数,U、LaTeX 用于单位/排版与公式展示;Segment、PolyLine、Translate、Dilate 用于搭建并变换各分块的几何轮廓;If 用于根据学生选择判断步骤;同时借助列表步骤 listSteps、attemptCountInputBox*、questionCount、correctCount 等对象实现分步练习与校验,最终通过 validate、showanswer、showsolution、btnValidate/btnTryAgain/btnNew 展示答案或解析。适合中学后期到大学基础阶段的立体几何与数学建模入门,用于体积拆分、函数-几何联想与基于随机练习的自测。

GeoGebra 命令及参数

  1. Textfield(input1) → InputBox1
  2. Textfield(input2) → InputBox2
  3. Sum({attemptCountInputBox1, attemptCountInputBox2, attemptCountInputBox3, attemptCountInputBox4, attemptCountInputBox5}) → attemptCount
  4. Shuffle(Sequence[Random[0, 10], i, 1, 100]) → randomNosForX, {7, 3, 10, 7, 4, 4, 6, 8, 5, 5, 2, 3, 3, 3, 4, 4, 9, 1, 0, 8, 6, 4, 8, 6, 7, 0, 7, 9, 1, 5, 8, 8, 3, 4, 7, 2, 0, 9, 4, 1, 9, 0, 10, 0, 6, 3, 6, 0, 0, 8, 10, 0, 4, 8, 5, 9, 6, 10, 2, 0, 3, 1, 1, 0, 2, 2, 4, 9, 5, 0, 7, 2, 3, 1, 7, 4, 0, 2, 2, 3, 2, 5, 9, 6, 5, 8, 6, 9, 0, 1, 10, 0, 5, 10, 4, 6, 5, 5, 10, 8}
  5. Element(randomNosForX, Mod[questionCount, 100] + 1) → numX
  6. U(A, pointVec) → l1, l2, C, D, E, F, G, H, l0BG1, l4Kontur, l2Mantel, l4lines, l4linesManual, l5FG1, l5FG2, B
  7. LaTeX(step, true, true) → Text1
  8. Segment(pointOption1, F) → segmentOption1
  9. Segment(F, pointOption2) → segmentOption2
  10. Segment(E, pointOption3) → segmentOption3
  11. Segment(E, pointOption4) → segmentOption4
  12. Translate(C, pointVec) → C'
  13. Translate(pointOption4, pointVec) → pointOption4'
  14. Translate(F, pointVec) → F'
  15. Translate(G, pointVec) → G'
  16. Translate(H, pointVec) → H'
  17. If(option1, A, pointOption1) → pointObject11
  18. If(option1, pointOption2, F) → pointObject12
  19. Translate(D, pointVec) → D'
  20. Segment(pointOption4, pointOption4') → segmentOption41
  21. Translate(B, pointVec) → B'
  22. If(¬option4, pointOption4', B') → pointObject31
  23. If(¬option4, pointOption4, B) → pointObject32
  24. If(¬option4, E, pointOption3) → pointObject33
  25. If(option2 ∧ option4, 1, option1 ∧ option4, 2, option1 ∧ option3, 3, 4) → typ
  26. Segment(G', D') → segmentFilled1
  27. Segment(G, D) → segmentFilled2
  28. Segment(pointOption1, F) → segmentCutted1
  29. Segment(E, pointOption4) → segmentCutted2
  30. Segment(pointOption4, pointOption4') → segmentCutted3
  31. Segment(B', C') → f
  32. Segment(C', D') → g
  33. Segment(D', D) → h
  34. Segment(E', F') → i
  35. Segment(F', G') → j
  36. Segment(G', H') → k
  37. Segment(H', H) → l
  38. If(step ∈ {4, 5}, (-23.75, 32.5), (-23.75, 35)) → speechbubble12
  39. If(step ∈ {4, 5}, (0, 32.5), (3.75, 35)) → speechbubble13
  40. If(step ∈ {4, 5}, (0, 40.3), (3.75, 39.5)) → speechbubble14
  41. If(step ∈ {4, 5}, (-23.75, 40.3), (-23.75, 39.5)) → speechbubble15
  42. Textfield(input3) → InputBox3
  43. Textfield(input4) → InputBox4
  44. Textfield(input71) → InputBox71
  45. Textfield(input72) → InputBox72
  46. Textfield(input73) → InputBox73
  47. Textfield(input74) → InputBox74
  48. Textfield(input75) → InputBox75
  49. If((¬option1) ∧ (¬option2), input72 ≟ ((3 * 5) * 2), true) → correct72
  50. If((¬option3) ∧ (¬option4), input74 ≟ ((3 * 5) * 2), true) → correct74
  51. Dilate(Translate[l5FG2, (-10, 0)], step6Scalefactor, CenterOfDilation) → l3
  52. Dilate(Translate[listObject1, translationVector], step6Scalefactor, CenterOfDilation) → listObject1'
  53. Dilate(Translate[listObjectFilledLeftBottom, translationVector], step6Scalefactor, CenterOfDilation) → listObjectFilledLeftBottom'
  54. Dilate(Translate[listObjectFilledRightBottom, translationVector], step6Scalefactor, CenterOfDilation) → listObjectFilledRightBottom'
  55. Dilate(Segment[Translate[F, translationVector], Translate[pointOption2, translationVector]], step6Scalefactor, CenterOfDilation) → segmentOption2'
  56. Dilate(Segment[Translate[E, translationVector], Translate[pointOption3, translationVector]], step6Scalefactor, CenterOfDilation) → segmentOption3'
  57. Dilate(Segment[Translate[pointOption1, translationVector], Translate[F, translationVector]], step6Scalefactor, CenterOfDilation) → segmentOption1'
  58. Dilate(Translate[listObject3, translationVector], step6Scalefactor, CenterOfDilation) → listObject3'
  59. Dilate(Translate[listObject2, translationVector], step6Scalefactor, CenterOfDilation) → listObject2'
  60. Dilate(Translate[l0BG1, translationVector], step6Scalefactor, CenterOfDilation) → step6l0BG1'
  61. Dilate(Translate[l2Mantel, translationVector], step6Scalefactor, CenterOfDilation) → step6l2Mantel'
  62. Dilate(Translate[l4Kontur, translationVector], step6Scalefactor, CenterOfDilation) → step6l4Kontur'
  63. Dilate(Translate[l4linesManual, translationVector], step6Scalefactor, CenterOfDilation) → step6l4linesManual'
  64. Dilate(Translate[l5FG1, translationVector], step6Scalefactor, CenterOfDilation) → step6l5FG1'
  65. Dilate(Translate[l5FG2, translationVector], step6Scalefactor, CenterOfDilation) → step6l5FG2'
  66. Dilate(Segment[Translate[pointOption4, translationVector], Translate[pointOption4', translationVector]], step6Scalefactor, CenterOfDilation) → segmentOption41'
  67. Dilate(Translate[listObjectFilledRightBottom, translationVector], step6Scalefactor, CenterOfDilation) → listObjectFilledRightBottomBG'
  68. PolyLine(Dilate[B, step6Scalefactor, CenterOfDilation], Dilate[B', step6Scalefactor, CenterOfDilation], Dilate[A, step6Scalefactor, CenterOfDilation], Dilate[C', step6Scalefactor, CenterOfDilation], Dilate[D', step6Scalefactor, CenterOfDilation], Dilate[D, step6Scalefactor, CenterOfDilation], Dilate[E', step6Scalefactor, CenterOfDilation], Dilate[F', step6Scalefactor, CenterOfDilation], Dilate[G', step6Scalefactor, CenterOfDilation], Dilate[H', step6Scalefactor, CenterOfDilation], Dilate[H, step6Scalefactor, CenterOfDilation]) → m
  69. PolyLine(Translate[E, translationVector], Translate[pointOption4, translationVector], Translate[I', translationVector]) → n
  70. Dilate(PolyLine[Translate[E, translationVector], Translate[pointOption4, translationVector], Translate[I', translationVector]], step6Scalefactor, CenterOfDilation) → segmentOption4'
  71. Translate(cora, (7, 0)) → cora'
  72. Textfield(input31) → InputBox31
  73. Textfield(input32) → InputBox32
  74. Translate(elia, (30.434007263501044, -17.511741828561323)) → elia'
  75. Translate(Mirror[speechbubble2, x = -18], (0.5, -20)) → speechbubble3
  76. Textfield(input2a) → InputBox2a
  77. Textfield(input3a) → InputBox3a
  78. Textfield(input1a) → InputBox1a
  79. Textfield(input1b) → InputBox1b

AI 绘图提示语参考

绘制一个由多个正交长方体组合而成的复合立体,将其分割为若干子部分,并显示各部分的体积分配。图形包含多个可交互的输入框,用于输入数值;用线段和折线勾勒出立体各面的轮廓,并通过平移和缩放操作展示分割后的子块。界面中设有随机选择机制,用于从候选参数中随机选取数值,同时显示步骤提示、答案验证按钮和尝试次数统计。整体布局包含多个文本框、按钮和计数器,用于引导用户逐步完成体积分割与分配的计算练习。
以上提示语为根据原始绘图命令整理而来,仅供参考。