坐标系中的平行四边形:向量构造与几何验证

坐标系中的平行四边形:向量构造与几何验证
几何画板及绘图内容加载中,请稍等……
2023-12-06 20:42
本范例演示如何在坐标系中用向量与直线/点的几何关系构造一个平行四边形,并让学生观察其边的平行与对边等长的性质。核心数学概念包括:平行四边形的定义、向量表示与向量平移关系、坐标几何中的点与线、以及用多边形对象生成图形并进行一致性校验。作图要点:在构造摘要中使用了 Sequence、Shuffle、Join 生成随机/批量候选数据;用 Vector、Line 与 Point 搭建几何骨架;通过 Intersect、Polygon 将相关几何对象组合成平行四边形;为保证构造可行性与区域约束,使用了 IsInRegion、RemoveUndefined、If 等条件与清理;同时借助 Angle、Textfield/文本(Text、Append)进行角度标注与参数呈现。对象层面体现为 Ursprung(原点)、向量 ux/uy 及候选点列表(AXList、AYList 等)、以及最终的多边形元素(如 A、aCoords、QE1~QE4、coordsystem)。适合5-6年级的特殊四边形构造训练,亦可用于课堂演示:让学生在交互式环境中理解向量构造与坐标系几何的对应关系。

GeoGebra 命令及参数

  1. Sequence(Sequence[(i, k), k, 0, 8], i, 0, 8) → PunkteFeld
  2. Shuffle(Sequence[1, 7]) → HelperX, {2, 3, 5, 1, 4, 6, 7}
  3. Join({{0}, HelperX}) → UrsprungXListe
  4. Shuffle(Sequence[1, 7]) → HelperY, {5, 2, 4, 1, 7, 3, 6}
  5. Join({{0}, HelperY}) → UrsprungYListe
  6. Shuffle(Sequence[1, 7]) → AYList, {5, 2, 6, 1, 4, 7, 3}
  7. Shuffle(Sequence[1, 7]) → AXList, {3, 5, 7, 2, 6, 4, 1}
  8. Vector(Ursprung, A) → aCoords
  9. Line(A, A + (-1, 0)) → i
  10. Line(A, A + (0, 1)) → h
  11. Max({distanceAnegX, distanceAposX, distanceAnegY, distanceAposY}) → maxf
  12. Shuffle(Sequence[3, maxf - 1, 1]) → fList, {3, 4}
  13. Random(1, fwert - 1) → erando
  14. Circle(A, fwert) → c
  15. Intersect(c, h) → CSucheNegY, CSuchePosY
  16. Intersect(c, i) → CSuchePosX, CSucheNegX
  17. Polygon(QE1, QE2, QE3, QE4) → coordsystem, qe1, qe2, qe3, qe4
  18. RemoveUndefined({If[IsInRegion[CSuchePosY, coordsystem], y(CSuchePosY)], If[IsInRegion[CSuchePosX, coordsystem], y(CSuchePosX)], If[IsInRegion[CSucheNegX, coordsystem], y(CSucheNegX)], If[IsInRegion[CSucheNegY, coordsystem], y(CSucheNegY)]}) → CyOptionen
  19. RemoveUndefined({If[IsInRegion[CSuchePosY, coordsystem], x(CSuchePosY)], If[IsInRegion[CSuchePosX, coordsystem], x(CSuchePosX)], If[IsInRegion[CSucheNegX, coordsystem], x(CSucheNegX)], If[IsInRegion[CSucheNegY, coordsystem], x(CSucheNegY)]}) → CxOptionen
  20. Random(1, Length[CxOptionen]) → Crando
  21. Vector(Ursprung, C) → cCoords
  22. Segment(A, C) → j
  23. OrthogonalLine(MittelpunktDeltoid, j) → k
  24. Point(PunkteFeld) → InputPunkt
  25. Min(AbstaendeMittelpunkt) → maxe
  26. Shuffle(Sequence[1, maxe]) → eList, {1}
  27. Circle(MittelpunktDeltoid, ewert) → d
  28. Intersect(d, k) → D, B
  29. Vector(Ursprung, DNew) → dCoords
  30. Vector(Ursprung, B) → bCoords
  31. Shuffle({2, 4}) → gesuchtList, {2, 4}
  32. If(gesucht ≟ 1, x(aCoords), gesucht ≟ 2, x(bCoords), gesucht ≟ 3, x(cCoords), gesucht ≟ 4, x(dCoords)) → solx
  33. If(gesucht ≟ 1, y(aCoords), gesucht ≟ 2, y(bCoords), gesucht ≟ 3, y(cCoords), gesucht ≟ 4, y(dCoords)) → soly
  34. Circle(SolPunkt, 0.35) → ValidateCircle
  35. IsInRegion(InputPunkt, ValidateCircle) → correctInputPunkt
  36. Textfield(input1) → InputBox1
  37. Textfield(input2) → InputBox2
  38. Polygon(PtopLeftCornerFeedback, PtopRightCornerFeedback, PbottomRightCornerFeedback, PbottomLeftCornerFeedback) → rectangleCorrect, rectangleCorrectS3, rectangleCorrectS4, rectangleCorrectS2, rectangleCorrectS1
  39. Shuffle(Sequence[Random[0, 10], i, 1, 100]) → randomNosForX, {4, 5, 6, 3, 5, 8, 4, 9, 3, 10, 1, 0, 10, 10, 1, 6, 8, 2, 9, 2, 1, 5, 10, 8, 9, 4, 7, 6, 10, 2, 5, 7, 10, 5, 10, 6, 3, 10, 6, 4, 10, 8, 2, 0, 3, 3, 6, 6, 1, 10, 5, 10, 8, 1, 8, 0, 1, 9, 8, 10, 0, 7, 9, 8, 5, 7, 2, 8, 0, 4, 3, 0, 7, 6, 9, 3, 10, 7, 1, 3, 0, 9, 4, 8, 4, 4, 10, 8, 5, 8, 2, 7, 1, 5, 8, 10, 9, 3, 8, 6}
  40. Element(randomNosForX, Mod[questionCount, 100] + 1) → numX
  41. Shuffle(Sequence[Random[0, 10], i, 1, 100]) → randomNosForY, {0, 5, 4, 7, 2, 2, 9, 3, 8, 9, 8, 9, 2, 2, 4, 7, 3, 10, 6, 10, 10, 10, 5, 5, 4, 10, 4, 0, 2, 1, 8, 7, 3, 7, 8, 7, 10, 7, 0, 6, 5, 0, 10, 7, 7, 5, 0, 10, 8, 0, 5, 1, 3, 1, 9, 4, 3, 9, 5, 0, 0, 6, 0, 2, 8, 4, 5, 8, 6, 6, 8, 2, 5, 8, 2, 5, 1, 4, 2, 7, 2, 0, 8, 10, 5, 10, 10, 10, 4, 1, 1, 6, 1, 8, 2, 1, 2, 7, 5, 5}
  42. Element(randomNosForY, Mod[questionCount, 100] + 1) → numY
  43. Append(true, Sequence[If[randomNosForX(i) ≟ randomNosForX(i - 1), false, true], i, 2, 100]) → stayX
  44. Append(true, Sequence[If[randomNosForY(i) ≟ randomNosForY(i - 1), false, true], i, 2, 100]) → stayY
  45. Remove(Sequence[If[stayX(i), randomNosForX(i), 0], i, 1, 100], Sequence[0, i, 1, 100]) → randomNosForXwithoutRepeat
  46. Remove(Sequence[If[stayY(i), randomNosForY(i), 0], i, 1, 100], Sequence[0, i, 1, 100]) → randomNosForYwithoutRepeat
  47. Element(randomNosForXwithoutRepeat, Mod[questionCount, Length[randomNosForXwithoutRepeat]] + 1) → numXwithoutRepeat
  48. Element(randomNosForYwithoutRepeat, Mod[questionCount, Length[randomNosForYwithoutRepeat]] + 1) → numYwithoutRepeat
  49. Sequence(QE4 + (Vector[QE4, QE3] / 8 * i), i, 1, 7) → GrenzPunkteOben
  50. Sequence(QE1 + (Vector[QE1, QE2] / 8 * i), i, 1, 7) → GrenzPunkteUnten
  51. Sequence(QE1 + (Vector[QE1, QE4] / 8 * i), i, 1, 7) → GrenzPunkteLinks
  52. Sequence(QE2 + (Vector[QE1, QE4] / 8 * i), i, 1, 7) → GrenzPunkteRechts
  53. Sequence(Segment[GrenzPunkteOben(i), GrenzPunkteUnten(i)], i, 1, 9) → GitterVertikal
  54. Sequence(Segment[GrenzPunkteRechts(i), GrenzPunkteLinks(i)], i, 1, 9) → GitterHorizontal
  55. Line(Ursprung, HelpP1) → f
  56. Line(Ursprung, HelpP2) → g
  57. Intersect(g, QuadratKanten(2)) → EndXPos
  58. Intersect(g, QuadratKanten(4)) → EndXNeg
  59. Intersect(f, QuadratKanten(1)) → EndYNeg
  60. Intersect(f, QuadratKanten(3)) → EndYPos
  61. Segment(EndYPos, EndYNeg) → yAchsel
  62. Segment(EndXPos, EndXNeg) → xAchsel
  63. Polygon(C, B, A, DNew) → v1, l, m, n, p
  64. Segment(C, B) → solb
  65. Segment(B, A) → sola
  66. Sequence(EndXNeg + (Vector[EndXNeg, EndXPos] * i / 8), i, 0, 8) → AchsenpunkteX
  67. Sequence(EndYNeg + (Vector[EndYNeg, EndYPos] * i / 8), i, 0, 8) → AchsenpunkteY
  68. Sequence(Distance[AchsenpunkteX(i), Ursprung], i, 1, 9) → BeschriftungXAchse
  69. Sequence(Distance[AchsenpunkteY(i), Ursprung], i, 1, 9) → BeschriftungYAchse
  70. Vector(Ursprung, InputPunkt) → OrangeCoords
  71. Segment(A, DNew) → sold
  72. Segment(DNew, C) → solc
  73. Intersect(Line[A, C], Line[DNew, B]) → Center
  74. Text(BeschA, E, false, true, 0, 0) → Text4
  75. Angle(DNew, A, B) → α
  76. Text(BeschB, F, false, true, 0, 0) → Text5
  77. Text(BeschC, G, false, true, 0, 0) → Text6
  78. Text(BeschD, H, false, true, 0, 0) → Text7
  79. Circle(InputPunkt, 0.3) → e
  80. Text(correctText, I, false, true, 0, 0) → Text13

AI 绘图提示语参考

在坐标系中构造一个平行四边形。起点为原点,用向量定义两条边,画两条垂直线并画一个圆,圆与这两条线相交得到两个点。将这些点与原点连接,形成平行四边形。构造顺序:先确定原点,定义向量,画垂直线和圆,求交点,最后连接顶点。
以上提示语为根据原始绘图命令整理而来,仅供参考。