参数曲面格罗诺环面与移动平面的交线

参数曲面格罗诺环面与移动平面的交线
几何画板及绘图内容加载中,请稍等……
2016-10-15 17:27
该范例演示了参数曲面(格罗诺环面,即由格罗诺曲线绕轴旋转形成的环面)与一个移动平面相交时产生的交线动态变化。核心数学概念包括参数曲面、平面与曲面的交线、三维空间中的曲线以及参数方程。作图要点:使用GeoGebra的Surface命令构造参数曲面,通过CurveCartesian定义交线,利用Sequence和Zip生成多条交线,结合RemoveUndefined处理无效点,并借助滑块(如u_min, u_max, v_min, v_max)和输入框(inputBox)控制参数范围与平面位置,实现动态交互。适合高中至大学阶段的数学教学,用于理解三维几何、参数方程和空间曲线,也可作为数学建模或可视化演示的素材。

GeoGebra 命令及参数

  1. Surface(fx(u, v), fy(u, v), fz(u, v), u, u_{min}, u_{max}, v, v_{min}, v_{max}) → f3
  2. Textfield(fx) → inputBox1
  3. Textfield(fy) → inputBox2
  4. Textfield(fz) → inputBox3
  5. Textfield(u_{min}) → inputBox4
  6. Textfield(u_{max}) → inputBox6
  7. Textfield(v_{min}) → inputBox7
  8. Textfield(v_{max}) → inputBox8
  9. CurveCartesian(fx(u, (3 * u) - acos(z0 / 5)), fy(u, (3 * u) - acos(z0 / 5)), z0, u, u_{min}, u_{max}) → g1
  10. CurveCartesian(fx(u, (3 * u) + acos(z0 / 5)), fy(u, (3 * u) + acos(z0 / 5)), z0, u, u_{min}, u_{max}) → g2
  11. Sequence(CurveCartesian[fx((acos(z0 / 5) + ((2 * π) * i)) / 3 + v / 3, v), fy((acos(z0 / 5) + ((2 * π) * i)) / 3 + v / 3, v), z0, v, 0, 15], i, n1, n2, 1) → l3
  12. Sequence(CurveCartesian[fx(((-acos(z0 / 5)) + ((2 * π) * i)) / 3 + v / 3, v), fy(((-acos(z0 / 5)) + ((2 * π) * i)) / 3 + v / 3, v), z0, v, 0, 15], i, n1, n2, 1) → l4
  13. RemoveUndefined(Join[Sequence[Zip[a + (0, v_{min} + (dv * (s0 - 1))), a, {Roots[fz(x, v_{min} + (dv * (s0 - 1))) - z0, u_{min}, u_{max}]}], s0, 1, Nn + 1]]) → Rootsxv
  14. Zip((fx(x(a), y(a)), fy(x(a), y(a)), z0), a, Rootsxv) → curvexv
  15. RemoveUndefined(Join[Sequence[Zip[a + (0, u_{min} + (du * (s0 - 1))), a, {Roots[fz(u_{min} + (du * (s0 - 1)), x) - z0, v_{min}, v_{max}]}], s0, 1, Nn + 1]]) → Rootsux
  16. Zip((fx(y(a), x(a)), fy(y(a), x(a)), z0), a, Rootsux) → curveux
  17. Textfield(Nn) → inputBox5
  18. CurveCartesian(fx(t, 0), fy(t, 0), fz(t, 0), t, u_{min}, u_{max}) → M4_{1}
  19. CurveCartesian(fx(0, t), fy(0, t), fz(0, t), t, v_{min}, v_{max}) → M5_{1}
  20. CurveCartesian(fx(t, 0.3), fy(t, 0.3), fz(t, 0.3), t, u_{min}, u_{max}) → M4_{2}
  21. CurveCartesian(fx(0.12566370614359174, t), fy(0.12566370614359174, t), fz(0.12566370614359174, t), t, v_{min}, v_{max}) → M5_{2}
  22. CurveCartesian(fx(t, 0.6), fy(t, 0.6), fz(t, 0.6), t, u_{min}, u_{max}) → M4_{3}
  23. CurveCartesian(fx(0.25132741228718347, t), fy(0.25132741228718347, t), fz(0.25132741228718347, t), t, v_{min}, v_{max}) → M5_{3}
  24. CurveCartesian(fx(t, 0.8999999999999999), fy(t, 0.8999999999999999), fz(t, 0.8999999999999999), t, u_{min}, u_{max}) → M4_{4}
  25. CurveCartesian(fx(0.3769911184307752, t), fy(0.3769911184307752, t), fz(0.3769911184307752, t), t, v_{min}, v_{max}) → M5_{4}
  26. CurveCartesian(fx(t, 1.2), fy(t, 1.2), fz(t, 1.2), t, u_{min}, u_{max}) → M4_{5}
  27. CurveCartesian(fx(0.5026548245743669, t), fy(0.5026548245743669, t), fz(0.5026548245743669, t), t, v_{min}, v_{max}) → M5_{5}
  28. CurveCartesian(fx(t, 1.5), fy(t, 1.5), fz(t, 1.5), t, u_{min}, u_{max}) → M4_{6}
  29. CurveCartesian(fx(0.6283185307179586, t), fy(0.6283185307179586, t), fz(0.6283185307179586, t), t, v_{min}, v_{max}) → M5_{6}
  30. CurveCartesian(fx(t, 1.7999999999999998), fy(t, 1.7999999999999998), fz(t, 1.7999999999999998), t, u_{min}, u_{max}) → M4_{7}
  31. CurveCartesian(fx(0.7539822368615504, t), fy(0.7539822368615504, t), fz(0.7539822368615504, t), t, v_{min}, v_{max}) → M5_{7}
  32. CurveCartesian(fx(t, 2.1), fy(t, 2.1), fz(t, 2.1), t, u_{min}, u_{max}) → M4_{8}
  33. CurveCartesian(fx(0.8796459430051422, t), fy(0.8796459430051422, t), fz(0.8796459430051422, t), t, v_{min}, v_{max}) → M5_{8}
  34. CurveCartesian(fx(t, 2.4), fy(t, 2.4), fz(t, 2.4), t, u_{min}, u_{max}) → M4_{9}
  35. CurveCartesian(fx(1.0053096491487339, t), fy(1.0053096491487339, t), fz(1.0053096491487339, t), t, v_{min}, v_{max}) → M5_{9}
  36. CurveCartesian(fx(t, 2.6999999999999997), fy(t, 2.6999999999999997), fz(t, 2.6999999999999997), t, u_{min}, u_{max}) → M4_{10}
  37. CurveCartesian(fx(1.1309733552923256, t), fy(1.1309733552923256, t), fz(1.1309733552923256, t), t, v_{min}, v_{max}) → M5_{10}
  38. CurveCartesian(fx(t, 3), fy(t, 3), fz(t, 3), t, u_{min}, u_{max}) → M4_{11}
  39. CurveCartesian(fx(1.2566370614359172, t), fy(1.2566370614359172, t), fz(1.2566370614359172, t), t, v_{min}, v_{max}) → M5_{11}
  40. CurveCartesian(fx(t, 3.3), fy(t, 3.3), fz(t, 3.3), t, u_{min}, u_{max}) → M4_{12}
  41. CurveCartesian(fx(1.3823007675795091, t), fy(1.3823007675795091, t), fz(1.3823007675795091, t), t, v_{min}, v_{max}) → M5_{12}
  42. CurveCartesian(fx(t, 3.5999999999999996), fy(t, 3.5999999999999996), fz(t, 3.5999999999999996), t, u_{min}, u_{max}) → M4_{13}
  43. CurveCartesian(fx(1.5079644737231008, t), fy(1.5079644737231008, t), fz(1.5079644737231008, t), t, v_{min}, v_{max}) → M5_{13}
  44. CurveCartesian(fx(t, 3.9), fy(t, 3.9), fz(t, 3.9), t, u_{min}, u_{max}) → M4_{14}
  45. CurveCartesian(fx(1.6336281798666925, t), fy(1.6336281798666925, t), fz(1.6336281798666925, t), t, v_{min}, v_{max}) → M5_{14}
  46. CurveCartesian(fx(t, 4.2), fy(t, 4.2), fz(t, 4.2), t, u_{min}, u_{max}) → M4_{15}
  47. CurveCartesian(fx(1.7592918860102844, t), fy(1.7592918860102844, t), fz(1.7592918860102844, t), t, v_{min}, v_{max}) → M5_{15}
  48. CurveCartesian(fx(t, 4.5), fy(t, 4.5), fz(t, 4.5), t, u_{min}, u_{max}) → M4_{16}
  49. CurveCartesian(fx(1.884955592153876, t), fy(1.884955592153876, t), fz(1.884955592153876, t), t, v_{min}, v_{max}) → M5_{16}
  50. CurveCartesian(fx(t, 4.8), fy(t, 4.8), fz(t, 4.8), t, u_{min}, u_{max}) → M4_{17}
  51. CurveCartesian(fx(2.0106192982974678, t), fy(2.0106192982974678, t), fz(2.0106192982974678, t), t, v_{min}, v_{max}) → M5_{17}
  52. CurveCartesian(fx(t, 5.1), fy(t, 5.1), fz(t, 5.1), t, u_{min}, u_{max}) → M4_{18}
  53. CurveCartesian(fx(2.1362830044410597, t), fy(2.1362830044410597, t), fz(2.1362830044410597, t), t, v_{min}, v_{max}) → M5_{18}
  54. CurveCartesian(fx(t, 5.3999999999999995), fy(t, 5.3999999999999995), fz(t, 5.3999999999999995), t, u_{min}, u_{max}) → M4_{19}
  55. CurveCartesian(fx(2.261946710584651, t), fy(2.261946710584651, t), fz(2.261946710584651, t), t, v_{min}, v_{max}) → M5_{19}
  56. CurveCartesian(fx(t, 5.7), fy(t, 5.7), fz(t, 5.7), t, u_{min}, u_{max}) → M4_{20}
  57. CurveCartesian(fx(2.387610416728243, t), fy(2.387610416728243, t), fz(2.387610416728243, t), t, v_{min}, v_{max}) → M5_{20}
  58. CurveCartesian(fx(t, 6), fy(t, 6), fz(t, 6), t, u_{min}, u_{max}) → M4_{21}
  59. CurveCartesian(fx(2.5132741228718345, t), fy(2.5132741228718345, t), fz(2.5132741228718345, t), t, v_{min}, v_{max}) → M5_{21}
  60. CurveCartesian(fx(t, 6.3), fy(t, 6.3), fz(t, 6.3), t, u_{min}, u_{max}) → M4_{22}
  61. CurveCartesian(fx(2.6389378290154264, t), fy(2.6389378290154264, t), fz(2.6389378290154264, t), t, v_{min}, v_{max}) → M5_{22}
  62. CurveCartesian(fx(t, 6.6), fy(t, 6.6), fz(t, 6.6), t, u_{min}, u_{max}) → M4_{23}
  63. CurveCartesian(fx(2.7646015351590183, t), fy(2.7646015351590183, t), fz(2.7646015351590183, t), t, v_{min}, v_{max}) → M5_{23}
  64. CurveCartesian(fx(t, 6.8999999999999995), fy(t, 6.8999999999999995), fz(t, 6.8999999999999995), t, u_{min}, u_{max}) → M4_{24}
  65. CurveCartesian(fx(2.8902652413026098, t), fy(2.8902652413026098, t), fz(2.8902652413026098, t), t, v_{min}, v_{max}) → M5_{24}
  66. CurveCartesian(fx(t, 7.199999999999999), fy(t, 7.199999999999999), fz(t, 7.199999999999999), t, u_{min}, u_{max}) → M4_{25}
  67. CurveCartesian(fx(3.0159289474462017, t), fy(3.0159289474462017, t), fz(3.0159289474462017, t), t, v_{min}, v_{max}) → M5_{25}
  68. CurveCartesian(fx(t, 7.5), fy(t, 7.5), fz(t, 7.5), t, u_{min}, u_{max}) → M4_{26}
  69. CurveCartesian(fx(3.1415926535897936, t), fy(3.1415926535897936, t), fz(3.1415926535897936, t), t, v_{min}, v_{max}) → M5_{26}
  70. CurveCartesian(fx(t, 7.8), fy(t, 7.8), fz(t, 7.8), t, u_{min}, u_{max}) → M4_{27}
  71. CurveCartesian(fx(3.267256359733385, t), fy(3.267256359733385, t), fz(3.267256359733385, t), t, v_{min}, v_{max}) → M5_{27}
  72. CurveCartesian(fx(t, 8.1), fy(t, 8.1), fz(t, 8.1), t, u_{min}, u_{max}) → M4_{28}
  73. CurveCartesian(fx(3.392920065876977, t), fy(3.392920065876977, t), fz(3.392920065876977, t), t, v_{min}, v_{max}) → M5_{28}
  74. CurveCartesian(fx(t, 8.4), fy(t, 8.4), fz(t, 8.4), t, u_{min}, u_{max}) → M4_{29}
  75. CurveCartesian(fx(3.518583772020569, t), fy(3.518583772020569, t), fz(3.518583772020569, t), t, v_{min}, v_{max}) → M5_{29}
  76. CurveCartesian(fx(t, 8.7), fy(t, 8.7), fz(t, 8.7), t, u_{min}, u_{max}) → M4_{30}
  77. CurveCartesian(fx(3.6442474781641603, t), fy(3.6442474781641603, t), fz(3.6442474781641603, t), t, v_{min}, v_{max}) → M5_{30}
  78. CurveCartesian(fx(t, 9), fy(t, 9), fz(t, 9), t, u_{min}, u_{max}) → M4_{31}
  79. CurveCartesian(fx(3.769911184307752, t), fy(3.769911184307752, t), fz(3.769911184307752, t), t, v_{min}, v_{max}) → M5_{31}
  80. CurveCartesian(fx(t, 9.299999999999999), fy(t, 9.299999999999999), fz(t, 9.299999999999999), t, u_{min}, u_{max}) → M4_{32}
  81. CurveCartesian(fx(3.8955748904513436, t), fy(3.8955748904513436, t), fz(3.8955748904513436, t), t, v_{min}, v_{max}) → M5_{32}
  82. CurveCartesian(fx(t, 9.6), fy(t, 9.6), fz(t, 9.6), t, u_{min}, u_{max}) → M4_{33}
  83. CurveCartesian(fx(4.0212385965949355, t), fy(4.0212385965949355, t), fz(4.0212385965949355, t), t, v_{min}, v_{max}) → M5_{33}
  84. CurveCartesian(fx(t, 9.9), fy(t, 9.9), fz(t, 9.9), t, u_{min}, u_{max}) → M4_{34}
  85. CurveCartesian(fx(4.1469023027385274, t), fy(4.1469023027385274, t), fz(4.1469023027385274, t), t, v_{min}, v_{max}) → M5_{34}
  86. CurveCartesian(fx(t, 10.2), fy(t, 10.2), fz(t, 10.2), t, u_{min}, u_{max}) → M4_{35}
  87. CurveCartesian(fx(4.272566008882119, t), fy(4.272566008882119, t), fz(4.272566008882119, t), t, v_{min}, v_{max}) → M5_{35}
  88. CurveCartesian(fx(t, 10.5), fy(t, 10.5), fz(t, 10.5), t, u_{min}, u_{max}) → M4_{36}
  89. CurveCartesian(fx(4.39822971502571, t), fy(4.39822971502571, t), fz(4.39822971502571, t), t, v_{min}, v_{max}) → M5_{36}
  90. CurveCartesian(fx(t, 10.799999999999999), fy(t, 10.799999999999999), fz(t, 10.799999999999999), t, u_{min}, u_{max}) → M4_{37}
  91. CurveCartesian(fx(4.523893421169302, t), fy(4.523893421169302, t), fz(4.523893421169302, t), t, v_{min}, v_{max}) → M5_{37}
  92. CurveCartesian(fx(t, 11.1), fy(t, 11.1), fz(t, 11.1), t, u_{min}, u_{max}) → M4_{38}
  93. CurveCartesian(fx(4.649557127312894, t), fy(4.649557127312894, t), fz(4.649557127312894, t), t, v_{min}, v_{max}) → M5_{38}
  94. CurveCartesian(fx(t, 11.4), fy(t, 11.4), fz(t, 11.4), t, u_{min}, u_{max}) → M4_{39}
  95. CurveCartesian(fx(4.775220833456486, t), fy(4.775220833456486, t), fz(4.775220833456486, t), t, v_{min}, v_{max}) → M5_{39}
  96. CurveCartesian(fx(t, 11.7), fy(t, 11.7), fz(t, 11.7), t, u_{min}, u_{max}) → M4_{40}
  97. CurveCartesian(fx(4.900884539600078, t), fy(4.900884539600078, t), fz(4.900884539600078, t), t, v_{min}, v_{max}) → M5_{40}
  98. CurveCartesian(fx(t, 12), fy(t, 12), fz(t, 12), t, u_{min}, u_{max}) → M4_{41}
  99. CurveCartesian(fx(5.026548245743669, t), fy(5.026548245743669, t), fz(5.026548245743669, t), t, v_{min}, v_{max}) → M5_{41}
  100. CurveCartesian(fx(t, 12.299999999999999), fy(t, 12.299999999999999), fz(t, 12.299999999999999), t, u_{min}, u_{max}) → M4_{42}
  101. CurveCartesian(fx(5.152211951887261, t), fy(5.152211951887261, t), fz(5.152211951887261, t), t, v_{min}, v_{max}) → M5_{42}
  102. CurveCartesian(fx(t, 12.6), fy(t, 12.6), fz(t, 12.6), t, u_{min}, u_{max}) → M4_{43}
  103. CurveCartesian(fx(5.277875658030853, t), fy(5.277875658030853, t), fz(5.277875658030853, t), t, v_{min}, v_{max}) → M5_{43}
  104. CurveCartesian(fx(t, 12.9), fy(t, 12.9), fz(t, 12.9), t, u_{min}, u_{max}) → M4_{44}
  105. CurveCartesian(fx(5.403539364174445, t), fy(5.403539364174445, t), fz(5.403539364174445, t), t, v_{min}, v_{max}) → M5_{44}
  106. CurveCartesian(fx(t, 13.2), fy(t, 13.2), fz(t, 13.2), t, u_{min}, u_{max}) → M4_{45}
  107. CurveCartesian(fx(5.529203070318037, t), fy(5.529203070318037, t), fz(5.529203070318037, t), t, v_{min}, v_{max}) → M5_{45}
  108. CurveCartesian(fx(t, 13.5), fy(t, 13.5), fz(t, 13.5), t, u_{min}, u_{max}) → M4_{46}
  109. CurveCartesian(fx(5.6548667764616285, t), fy(5.6548667764616285, t), fz(5.6548667764616285, t), t, v_{min}, v_{max}) → M5_{46}
  110. CurveCartesian(fx(t, 13.799999999999999), fy(t, 13.799999999999999), fz(t, 13.799999999999999), t, u_{min}, u_{max}) → M4_{47}
  111. CurveCartesian(fx(5.7805304826052195, t), fy(5.7805304826052195, t), fz(5.7805304826052195, t), t, v_{min}, v_{max}) → M5_{47}
  112. CurveCartesian(fx(t, 14.1), fy(t, 14.1), fz(t, 14.1), t, u_{min}, u_{max}) → M4_{48}
  113. CurveCartesian(fx(5.906194188748811, t), fy(5.906194188748811, t), fz(5.906194188748811, t), t, v_{min}, v_{max}) → M5_{48}
  114. CurveCartesian(fx(t, 14.399999999999999), fy(t, 14.399999999999999), fz(t, 14.399999999999999), t, u_{min}, u_{max}) → M4_{49}
  115. CurveCartesian(fx(6.031857894892403, t), fy(6.031857894892403, t), fz(6.031857894892403, t), t, v_{min}, v_{max}) → M5_{49}
  116. CurveCartesian(fx(t, 14.7), fy(t, 14.7), fz(t, 14.7), t, u_{min}, u_{max}) → M4_{50}
  117. CurveCartesian(fx(6.157521601035995, t), fy(6.157521601035995, t), fz(6.157521601035995, t), t, v_{min}, v_{max}) → M5_{50}
  118. CurveCartesian(fx(t, 15), fy(t, 15), fz(t, 15), t, u_{min}, u_{max}) → M4_{51}
  119. CurveCartesian(fx(6.283185307179587, t), fy(6.283185307179587, t), fz(6.283185307179587, t), t, v_{min}, v_{max}) → M5_{51}