魔法钱包:模块化折纸动画

魔法钱包:模块化折纸动画
几何画板及绘图内容加载中,请稍等……
2020-07-17 00:25
所属专题 Action Modular Origami
本范例演示了一个由纸张折叠而成的“魔法钱包”模型的三维动画,通过GeoGebra的几何变换命令模拟折纸的展开与闭合过程。核心数学概念包括相似三角形、四边形性质、向量平移、旋转、镜像对称以及空间中的平面与多面体变换,同时涉及微分几何中的光滑曲面(smoothramp)与时钟动画的联动。作图要点:从构造摘要可见,使用了Intersect(求交点)、Point(点)、Line(线)、OrthogonalLine(垂线)、Dilate(缩放)、Midpoint(中点)、Polygon(多边形)、Vector(向量)、Translate(平移)、Rotate(旋转)、Mirror(镜像)、Plane(平面)等GeoGebra命令,并创建了多个辅助对象如smoothramp、clock以及一系列带撇号的变换后点与多边形,通过参数α控制折叠角度。适合中学高年级至大学低年级的几何与变换教学,也可用于折纸艺术中的数学建模演示,帮助学生直观理解空间变换与动态几何。

GeoGebra 命令及参数

  1. Intersect(xAxis, yAxis) → A
  2. Point(xAxis) → B
  3. Point(yAxis) → C
  4. Line(A, B) → f
  5. Line(A, C) → g
  6. OrthogonalLine(B, f) → h
  7. OrthogonalLine(C, g) → i
  8. Intersect(h, i) → D
  9. Dilate(C, 1 / 3, A) → C'
  10. Midpoint(C', C) → E
  11. OrthogonalLine(C', g) → j
  12. OrthogonalLine(E, g) → k
  13. Intersect(h, k) → F
  14. Intersect(h, j) → G
  15. Polygon(A, B, G, C') → poly1, a, b, g_1, c'
  16. Vector(A, C') → u
  17. Translate(A, u) → A'
  18. Translate(B, u) → B'
  19. Translate(G, u) → G'
  20. Translate(C', u) → C''
  21. Polygon(A', B', G', C'') → poly1', a', b', g', c''
  22. Translate(A', u) → A''
  23. Translate(B', u) → B''
  24. Translate(G', u) → G''
  25. Translate(C'', u) → C'''
  26. Polygon(A'', B'', G'', C''') → poly1'', a'', b'', g'', c'''
  27. Polygon(A, B, D, C) → polyBack, a_1, b_1, d, c
  28. Vector((0, 0, (-offset))) → vOffset
  29. Translate(A, vOffset) → A'_1
  30. Translate(B, vOffset) → B'_1
  31. Translate(D, vOffset) → D'
  32. Translate(C, vOffset) → C'_1
  33. Polygon(A'_1, B'_1, D', C'_1) → polyBack0, a'_1, b'_1, d', c'_1
  34. Vector((offset, 0, 0)) → vShift
  35. Vector(A, B) → vLength
  36. Translate(polyBack0, Vector[vLength + vShift]) → polyBack1
  37. Translate(polyBack0, Vector[(-vLength) - vShift]) → polyBack2
  38. Rotate(polyBack1, α, h) → polyBack1'
  39. Rotate(polyBack2, α, g) → polyBack2'
  40. Rotate({poly1, poly1', poly1''}, 180° + α, h) → listMove1
  41. Rotate({poly1, poly1', poly1''}, 180° + α, g) → listMove2
  42. Point(g_1) → J
  43. Point(g_1) → K
  44. Polygon(H, I, J, K) → poly2, h_1, i_1, j_1, k_1
  45. Midpoint(C, A) → L
  46. OrthogonalLine(L, c''') → l
  47. Mirror(H, l) → H'
  48. Mirror(I, l) → I'
  49. Mirror(J, l) → J'
  50. Mirror(K, l) → K'
  51. Polygon(H', I', J', K') → poly2', h', i', j', k'
  52. Translate(H', Vector[(-vLength)]) → H''
  53. Translate(I', Vector[(-vLength)]) → I''
  54. Translate(J', Vector[(-vLength)]) → J''
  55. Translate(K', Vector[(-vLength)]) → K''
  56. Polygon(Rotate[Translate[H'', Vector[(-vShift)]], α, g], Rotate[Translate[I'', Vector[(-vShift)]], α, g], Rotate[Translate[J'', Vector[(-vShift)]], α, g], Rotate[Translate[K'', Vector[(-vShift)]], α, g]) → poly2'', m, n, p, q
  57. Translate(H, Vector[(-vLength)]) → H'_1
  58. Translate(I, Vector[(-vLength)]) → I'_1
  59. Translate(J, Vector[(-vLength)]) → J'_1
  60. Translate(K, Vector[(-vLength)]) → K'_1
  61. Polygon(H'_1, I'_1, J'_1, K'_1) → poly2'_1, h'_1, i'_1, j'_1, k'_1
  62. OrthogonalLine(L, xOyPlane) → r
  63. Point(r) → M
  64. Intersect(l, h) → N
  65. Plane(N, L, M) → e
  66. Mirror(poly2'', e) → poly2'''
  67. Translate(H, vOffsetNeg) → H'_2
  68. Translate(I, vOffsetNeg) → I'_2
  69. Translate(J, vOffsetNeg) → J'_2
  70. Translate(K, vOffsetNeg) → K'_2
  71. Polygon(H'_2, I'_2, J'_2, K'_2) → poly2'_2, h'_2, i'_2, j'_2, k'_2
  72. Mirror(poly2'_2, e) → poly3

AI 绘图提示语参考

绘制一个三维折纸动画,展示一个可开合的魔法钱包。先构建一个由两个直角三角形组成的四边形底面,并向上复制出三层相同的四边形,形成折叠的纸层。在底面的两侧各添加一个倾斜的支撑面,并让它们绕底边旋转,模拟钱包的开合。所有纸层在开合时同步旋转,保持对称。在钱包表面添加一个可调节的滑块,控制开合角度,并附带一个时钟显示角度变化。整体使用平滑的曲面和清晰的线条,突出几何变换的视觉效果。
以上提示语为根据原始绘图命令整理而来,仅供参考。