三维向量投影与几何变换综合示例(立方体与椭圆)

三维向量投影与几何变换综合示例(立方体与椭圆)
几何画板及绘图内容加载中,请稍等……
2023-03-22 02:49
所属专题 Realidades de GeoGebra
①本范例演示了在三维空间中,通过向量投影和几何变换构造立方体、椭圆及其投影关系的动态图形。②核心数学概念包括三维向量投影、正交投影、空间几何变换(如旋转、平移)、椭圆参数方程以及分段函数(阶梯函数)在控制图形中的应用。③作图要点:从构造摘要可见,使用了OrthogonalLine(正交线)、Circle(圆)、Intersect(交点)、Ellipse(椭圆)、Point/Punto3D(点/三维点)、If(条件)、Vector(向量)、Angle(角)、Segment(线段)、Midpoint(中点)、Polygon(多边形)等GeoGebra命令,并涉及大量对象如d1、d1'、zElipse1、ZZ1等,用于构建复杂的投影关系与动态几何结构。④适合高中至大学阶段的立体几何、向量代数或数学建模课程,可作为三维可视化与几何变换教学的进阶示例,帮助学生理解投影的几何意义及GeoGebra的高级构造技巧。

GeoGebra 命令及参数

  1. OrthogonalLine(C, yAxis) → zz1
  2. Circle(C, 0.62) → zz0
  3. Intersect(zz0, zz1, 1) → ZZ1
  4. Intersect(zz0, zz1, 2) → ZZ2
  5. Ellipse(ZZ1, ZZ2, 0.65) → zElipse1
  6. Point(zElipse1) → XY
  7. OrthogonalLine(C, xAxis) → zz2
  8. Intersect(zz0, zz2, 2) → ZZ3
  9. Intersect(zz0, zz2, 1) → ZZ4
  10. Ellipse(ZZ3, ZZ4, 0.65) → zElipse2
  11. Point(zElipse2) → Z
  12. Punto3D(C, XY, Z, {0, 0, 0}) → O
  13. If(d2 > 0, (d3' * r), ((-d3') * r)) → y1
  14. If((sgn(d3) * sgn(d2)) > 0, x1a, (-x1a)) → x1
  15. If(d1 > 0, y0a, (-y0a)) → y0
  16. Punto3D(C, XY, Z, {x0, y0, 0}) → P0
  17. Vector(O, P0) → u0
  18. If(d6 > 0, (k19 + y6a0) / k18, (k19 - y6a0) / k18) → y6a
  19. If(x0 ≠ 0, x6a, 0) → x6
  20. If(d6 > 0, (2 * y0) + y6b0, (2 * y0) - y6b0) → y6b
  21. If(x0 ≠ 0, y6a, y6b) → y6
  22. If(x0 ≠ 0, z6a, z6b) → z6
  23. Punto3D(C, XY, Z, {x6, y6, z6}) → P6
  24. Vector(E, P6) → u4
  25. If(d5 > 0, x0 + ((-k08) + x4a0) / k07, x0 + ((-k08) - x4a0) / k07) → x4a
  26. If(d5 > 0, z4e0, (-z4e0)) → z4e
  27. If(d5 > 0, z4sa0, (-z4sa0)) → z4sa
  28. If(z1 ≠ 0, x4a, If[k04 ≠ 0, x4e, If[x0 ≠ 0, x4sa, 0]]) → x4
  29. If(z1 ≠ 0, y4a, If[k04 ≠ 0, y4e, If[x0 ≠ 0, y4sa, y4sb]]) → y4
  30. If(d5 > 0, z4sb0, (-z4sb0)) → z4sb
  31. If(z1 ≠ 0, z4a, If[k04 ≠ 0, z4e, If[x0 ≠ 0, z4sa, z4sb]]) → z4
  32. Punto3D(C, XY, Z, {x4, y4, z4}) → P4
  33. Vector(E, P4) → u3
  34. If(d4 > 0, (k02 + x2a0) / k01, (k02 - x2a0) / k01) → x2a
  35. If(d4 > 0, z2e0, (-z2e0)) → z2e
  36. If(z1 ≠ 0, z2a, If[x1 ≠ 0, z2e, 0]) → z2
  37. If(isomeroG, z2, z2) → z8a3
  38. If(d4 > 0, x2s0, (-x2s0)) → x2s
  39. If(z1 ≠ 0, x2a, If[x1 ≠ 0, x2e, x2s]) → x2
  40. If(isomeroG, x2, x2) → x8a3
  41. If(z1 ≠ 0, y2a, If[x1 ≠ 0, y2e, y2s]) → y2
  42. If(isomeroG, y8a2b, y8a2a) → y8a2
  43. If(isomeroG ∧ d5 < 0 ∨ (¬isomeroG) ∧ d5 ≥ 0, x8a1b, x8a1a) → x8a1
  44. If(isomeroG, x8b11b, x8b11a) → x8b11
  45. If(k23 ≟ 0, If[k22 ≟ 0, If[k21 ≟ 0, x8b22, If[k28 ≟ 0, If[k26 ≟ 0, x8b213, x8b212], x8b211]], If[k28 ≟ 0, If[k42 ≟ 0, x8b13, x8b12], x8b11]], If[k33 ≟ 0, If[k32 ≟ 0, x8a3, x8a2], x8a1]) → x8
  46. If(isomeroG, z8b12b, z8b12a) → z8b12
  47. If(isomeroG, z8b212b, z8b212a) → z8b212
  48. If(isomeroG, y8b211b, y8b211a) → y8b211
  49. If(k23 ≟ 0, If[k22 ≟ 0, If[k21 ≟ 0, z8b22, If[k28 ≟ 0, If[k26 ≟ 0, z8b213, z8b212], z8b211]], If[k28 ≟ 0, If[k42 ≟ 0, z8b13, z8b12], z8b11]], If[k33 ≟ 0, If[k32 ≟ 0, z8a3, z8a2], z8a1]) → z8
  50. If(isomeroG, y2, y2) → y8a3
  51. If(k23 ≟ 0, If[k22 ≟ 0, If[k21 ≟ 0, y8b22, If[k28 ≟ 0, If[k26 ≟ 0, y8b213, y8b212], y8b211]], If[k28 ≟ 0, If[k42 ≟ 0, y8b13, y8b12], y8b11]], If[k33 ≟ 0, If[k32 ≟ 0, y8a3, y8a2], y8a1]) → y8
  52. Punto3D(C, XY, Z, {x8, y8, z8}) → P8
  53. Vector(F, P8) → u5
  54. Punto3D(C, XY, Z, {0, d, 0}) → U
  55. Intersect(zElipse2, zz2) → ZZ7, ZZ8
  56. Angle(ZZ8, C, Z) → zAngInc
  57. Intersect(zElipse1, zz1) → ZZ5, ZZ6
  58. Angle(ZZ6, C, XY) → zAngRot
  59. Segment(ZZ5, ZZ6) → zz4
  60. Segment(ZZ7, ZZ8) → zz3
  61. Intersect(zElipse2, zElipse1, 1) → zPunto1
  62. Intersect(zElipse2, zElipse1, 4) → zPunto2
  63. Segment(zPunto1, zPunto2) → zSeg2
  64. Segment(O, U) → a1
  65. Punto3D(C, XY, Z, {x1, y1, z1}) → P1
  66. Midpoint(O, U) → A0
  67. Vector(O, P1) → u1
  68. Segment(O, A) → s01
  69. Segment(O, E) → s00
  70. Segment(P1, A0) → b01
  71. Segment(A0, P0) → b02
  72. Segment(P1, P0) → b03
  73. Punto3D(C, XY, Z, {x2, y2, z2}) → P2
  74. Vector(U, P2) → u2
  75. Segment(U, B) → s02
  76. Segment(A0, P2) → b04
  77. Midpoint(A, B) → P3
  78. Segment(P2, P3) → b05
  79. Segment(P1, P3) → b06
  80. Segment(A, B) → s04
  81. Segment(E, D) → s03
  82. Segment(A, D) → s05
  83. Midpoint(s05) → P5
  84. Segment(P0, P4) → b07
  85. Segment(P4, P5) → b08
  86. Segment(P1, P5) → b09
  87. Segment(E, F) → s06
  88. Segment(P4, P6) → b10
  89. Segment(P0, P6) → b11
  90. Segment(U, F) → s07
  91. Midpoint(s07) → P7
  92. Segment(P2, P7) → b12
  93. Segment(P6, P7) → b13
  94. Segment(A0, P7) → b14
  95. Punto3D(C, XY, Z, {x8a1, y8a1, z8a1}) → P8a1
  96. If(test8 ≟ 0, false, true) → aviso8bool
  97. Segment(B, G) → s09
  98. Segment(G, F) → s10
  99. Segment(D, G) → s08
  100. Midpoint(s08) → P10
  101. Segment(P4, P10) → b15
  102. Segment(P10, P8) → b16
  103. Segment(P6, P8) → b17
  104. Midpoint(s09) → P9
  105. Segment(P3, P5) → b18
  106. Segment(P5, P10) → b19
  107. Segment(P3, P9) → b21
  108. Segment(P10, P9) → b20
  109. Segment(P9, P2) → b22
  110. Segment(P9, P8) → b23
  111. Segment(P8, P7) → b24
  112. Polygon(O, U, E) → poly1, e, o, u

AI 绘图提示语参考

在三维空间中绘制一个立方体的投影相关图形:先给定三维坐标系中心点,画两条互相垂直的轴方向辅助线,并以中心为基点作两条同心圆(用不同半径)获得两组与轴的交点。用这两组交点分别构造两个位于特定平面中的椭圆,并在椭圆上取点,进一步把这些二维点提升为三维点。连接三维点与用于投影的参考点形成向量,再对坐标分量加入分段符号条件以决定点在不同半空间的取值,最终得到多个三维点及它们对应的向量。由这些点再次在不同椭圆上建立几何关系,形成立方体向椭圆投影的动态几何变换效果。
以上提示语为根据原始绘图命令整理而来,仅供参考。