GeoGebra绳索跨度演示

GeoGebra绳索跨度演示
几何画板及绘图内容加载中,请稍等……
2024-09-26 21:25
①本范例演示如何用绳索构造和探索直角三角形;②涉及核心数学概念:勾股定理及其在不同命名下的表述;③作图要点:运用了Rotate(旋转)、Distance(距离)、Sequence(序列)、Point(点)、CircleArc(圆弧)、SelectedIndex(选中索引)、Vector(向量)、Translate(平移)、Zip(压缩)、If(条件)、Textfield(文本字段)、Element(元素)、Circle(圆)、Angle(角度)等GeoGebra命令/对象;④适合7-8年级学生,用于理解和应用勾股定理。

GeoGebra 命令及参数

  1. Rotate(Sequence[Rotate[OCircle + (rad1, 0), (m * (360 / 12)°), OCircle], m, -3, 9], 15°, OCircle) → listPointsCircle
  2. Distance(listPointsCircle(1), listPointsCircle(2)) → seilsize
  3. Sequence(OLine + (m * ((-seilsize), 0)), m, 0, 12) → listPointsLine
  4. Point(Segment[listPointsLine(6), listPointsCircle(6)]) → A6
  5. CircleArc(A7, A7 + ((-seilsize), 0), Rotate[A7 + ((-seilsize), 0), 30°, A7]) → bogenA8
  6. Point(bogenA8) → A8
  7. CircleArc(A8, A8 + ((-seilsize), 0), Rotate[A8 + ((-seilsize), 0), (2 * 30°), A8]) → bogenA9
  8. Point(bogenA9) → A9
  9. CircleArc(A9, A9 + ((-seilsize), 0), Rotate[A9 + ((-seilsize), 0), (3 * 30°), A9]) → bogenA10
  10. Point(bogenA10) → A10
  11. CircleArc(A10, A10 + ((-seilsize), 0), Rotate[A10 + ((-seilsize), 0), (4 * 30°), A10]) → bogenA11
  12. Point(bogenA11) → A11
  13. CircleArc(A11, A11 + ((-seilsize), 0), Rotate[A11 + ((-seilsize), 0), (5 * 30°), A11]) → bogenA12
  14. Point(bogenA12) → A12
  15. CircleArc(A12, A12 + ((-seilsize), 0), Rotate[A12 + ((-seilsize), 0), (6 * 30°), A12]) → bogenA13
  16. Point(bogenA13) → A13
  17. CircleArc(A6, Rotate[A6 + (seilsize, 0), -30°, A6], A6 + (seilsize, 0)) → bogenA5
  18. Point(bogenA5) → A5
  19. CircleArc(A5, Rotate[A5 + (seilsize, 0), -60°, A5], A5 + (seilsize, 0)) → bogenA4
  20. Point(bogenA4) → A4
  21. CircleArc(A4, Rotate[A4 + (seilsize, 0), (-((3 * 30°))), A4], A4 + (seilsize, 0)) → bogenA3
  22. Point(bogenA3) → A3
  23. CircleArc(A3, Rotate[A3 + (seilsize, 0), (-((4 * 30°))), A3], A3 + (seilsize, 0)) → bogenA2
  24. Point(bogenA2) → A2
  25. CircleArc(A2, Rotate[A2 + (seilsize, 0), (-((5 * 30°))), A2], A2 + (seilsize, 0)) → bogenA1
  26. Point(bogenA1) → A1
  27. SelectedIndex(DropDown6) → input6
  28. SelectedIndex(DropDown5) → input5
  29. SelectedIndex(DropDown4) → input4
  30. SelectedIndex(DropDown3) → input3
  31. Vector(O1, O1 + (seilsize, 0)) → v1
  32. Rotate(Join[{Sequence[O1 - (l * Rotate[v1, (-asind(3 / 5))]), l, 1, 4], Sequence[O1 - (4 * Rotate[v1, (-asind(3 / 5))]) - (n * Rotate[v1, asind(4 / 5)]), n, 1, 3], Sequence[O1 + (m * v1), m, -4, 0]}], -60°, O1) → listL54
  33. Rotate(Join[{Sequence[O1 - (l * Rotate[v1, (-asind(4 / 5))]), l, 1, 3], Sequence[O1 - (3 * Rotate[v1, (-asind(4 / 5))]) - (n * Rotate[v1, asind(3 / 5)]), n, 1, 4], Sequence[O1 + (m * v1), m, -4, 0]}], -60°, O1) → listL53
  34. Rotate(Join[{Sequence[O1 - (n * Rotate[v1, (-asind(3 / 5))]), n, 1, 5], Sequence[O1 - (l * OrthogonalVector[v1]) + (3 * OrthogonalVector[v1]) - (4 * v1), l, 1, 3], Sequence[O1 + (m * v1), m, -3, 0]}], -45°, O1) → listL45
  35. Rotate(Join[{Sequence[O1 + (l * OrthogonalVector[v1]), l, 1, 3], Sequence[O1 + (3 * OrthogonalVector[v1]) - (n * Rotate[v1, asind(3 / 5)]), n, 1, 5], Sequence[O1 + (m * v1), m, -3, 0]}], -45°, O1) → listL43
  36. Rotate(Join[{Sequence[O1 - (n * Rotate[v1, (-asind(4 / 5))]), n, 1, 4], Sequence[O1 - (3 * v1) - (l * OrthogonalVector[v1]) + (4 * OrthogonalVector[v1]), l, 0, 4], Sequence[O1 + (m * v1), m, -2, 0]}], -30°, O1) → listL35
  37. Rotate(Join[{Sequence[O1 + (l * OrthogonalVector[v1]), l, 1, 4], Sequence[O1 + (4 * OrthogonalVector[v1]) - (n * Rotate[v1, asind(4 / 5)]), n, 1, 5], Sequence[O1 + (m * v1), m, -2, 0]}], -30°, O1) → listL34
  38. Rotate(Join[{Sequence[O1 + (m * v1), m, 1, 5], Sequence[O1 + (5 * v1) - (l * Rotate[v1, (-asind(3 / 5))]), l, 1, 4], Sequence[O1 + (5 * v1) - (4 * Rotate[v1, (-asin(3 / 5))]) - (n * Rotate[v1, asin(4 / 5)]), n, 1, 3]}], 60°, O1) → listR59
  39. Rotate(Join[{Sequence[O1 + (m * v1), m, 1, 5], Sequence[O1 + (5 * v1) - (l * Rotate[v1, (-asind(4 / 5))]), l, 1, 3], Sequence[O1 + (5 * v1) - (3 * Rotate[v1, (-asind(4 / 5))]) - (n * Rotate[v1, asind(3 / 5)]), n, 1, 4]}], 60°, O1) → listR58
  40. Rotate(Join[{Sequence[O1 + (m * v1), m, 1, 4], Sequence[O1 + (l * OrthogonalVector[v1]) + (4 * v1), l, 1, 3], Sequence[O1 + (4 * v1) + (3 * OrthogonalVector[v1]) - (n * Rotate[v1, asind(3 / 5)]), n, 1, 5]}], 45°, O1) → listR47
  41. Rotate(Join[{Sequence[O1 + (m * v1), m, 1, 4], Sequence[O1 + (4 * v1) - (n * Rotate[v1, (-asind(3 / 5))]), n, 1, 5], Sequence[O1 - (l * OrthogonalVector[v1]) + (3 * OrthogonalVector[v1]), l, 1, 3]}], 45°, O1) → listR49
  42. Rotate(Join[{Sequence[O1 + (m * v1), m, 1, 3], Sequence[O1 + (l * OrthogonalVector[v1]) + (3 * v1), l, 1, 4], Sequence[O1 + (3 * v1) + (4 * OrthogonalVector[v1]) - (n * Rotate[v1, asind(4 / 5)]), n, 1, 5]}], 30°, O1) → listR37
  43. Rotate(Join[{Sequence[O1 + (m * v1), m, 1, 3], Sequence[O1 + (3 * v1) - (n * Rotate[v1, (-asind(4 / 5))]), n, 1, 4], Sequence[O1 - (l * OrthogonalVector[v1]) + (4 * OrthogonalVector[v1]), l, 0, 4]}], 30°, O1) → listR38
  44. Point(pointsB) → O2
  45. Rotate(Join[{Sequence[Rotate[O1 + (5 * v1), (m * 22.68°), M5] - (5 * v1), m, 1, 7], Sequence[O1 + (n * v1), n, -4, 0]}], -60°, O1) → listB7
  46. Rotate(Join[{Sequence[O1 + (n * v1), n, 1, 4], Sequence[Rotate[O1 + (5 * v1), (m * 22.68°), M5], m, 0, 7]}], 60°, O1) → listB5
  47. Rotate(Join[{Sequence[Rotate[O1 + (3 * v1), (m * 29.1°), M3] - (3 * v1), m, 1, 9], Sequence[O1 + (n * v1), n, -2, 0]}], -30°, O1) → listB9
  48. Rotate(Join[{Sequence[Rotate[O1 + (4 * v1), (m * 27.29°), M4] - (4 * v1), m, 1, 8], Sequence[O1 + (n * v1), n, -3, 0]}], -45°, O1) → listB8
  49. Rotate(Join[{{O1 + v1}, Sequence[Rotate[O1 + (2 * v1), (m * 29.8°), M2], m, 0, 10]}], 15°, O1) → listB2
  50. Rotate(Join[{{O1 + v1, O1 + (2 * v1)}, Sequence[Rotate[O1 + (3 * v1), (m * 29.1°), M3], m, 0, 9]}], 30°, O1) → listB3
  51. Translate(Rotate[Sequence[Rotate[OCircle + (rad1, 0), (m * (360 / 12)°), OCircle], m, -2, 10], 15°, OCircle], Vector[(-v1)]) → listB11
  52. Rotate(Join[{Sequence[Rotate[O1 + (2 * v1), (m * 29.8°), M2] - (2 * v1), m, 1, 10], {O1 - v1, O1}}], -15°, O1) → listB10
  53. Rotate(Join[{Sequence[O1 + (n * v1), n, 1, 6], Sequence[O1 - (n * v1), n, -5, 0]}], 90°, O1) → listB6
  54. Rotate(Join[{Sequence[O1 + (n * v1), n, 1, 3], Sequence[Rotate[O1 + (4 * v1), (m * 27.29°), M4], m, 0, 8]}], 45°, O1) → listB4
  55. Zip(Sequence[A + ((m * 0.2) * Vector[A, B]), m, 0, 4], A, {B1, B2, B3, B4, B5, B6, B7, B8, B9, B10, B11, B12}, B, {B2, B3, B4, B5, B6, B7, B8, B9, B10, B11, B12, B1}) → allPoints
  56. Zip(Angle[xAxis, Line[A, B]], A, {B1, B2, B3, B4, B5, B6, B7, B8, B9, B10, B11, B12}, B, {B2, B3, B4, B5, B6, B7, B8, B9, B10, B11, B12, B13}) → listWinkel2
  57. Zip(Angle[xAxis, Line[A, B]], A, {A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12}, B, {A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13}) → listWinkel1
  58. Vector(A7 + vseil1, A6 + vseil2) → vlang
  59. Zip(P + Rotate[vseil1, m], m, listWinkel2, P, {B1, B2, B3, B4, B5, B6, B7, B8, B9, B10, B11, B12}) → drehPointsA2
  60. If(step < 3, listWinkel1, listWinkel2) → listWinkel
  61. Zip(P + Rotate[vseil1, m], m, listWinkel1, P, {A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12}) → drehPointsA1
  62. If(step < 3, drehPointsA1, drehPointsA2) → drehPointsA
  63. Textfield(input1) → Eingabefeld1
  64. Textfield(input2) → Eingabefeld2
  65. Point(Line[Ag1, xAxis]) → Ag2
  66. Point(Line[Gr1, xAxis]) → Gr2
  67. Element(Last[listPointsLine], 1) → OLineEnd
  68. Zip(A + Rotate[vlang, m], A, drehPointsA1, m, listWinkel) → drehPointsB1
  69. Zip(A + Rotate[(0.25 * vlang), m], A, drehPointsA1, m, listWinkel1) → drehPointsC1
  70. Zip(A + Rotate[(0.25 * vlang), m], A, drehPointsA2, m, listWinkel2) → drehPointsC2
  71. Zip(A + Rotate[vlang, m], A, drehPointsA2, m, listWinkel2) → drehPointsB2
  72. If(step < 3, drehPointsB1, drehPointsB2) → drehPointsB
  73. If(step < 3, drehPointsC1, drehPointsC2) → drehPointsC
  74. Point(LineBisector[O1, O2]) → B
  75. CircleArc(B, O2, O1) → c
  76. Vector(O1, B) → u1
  77. Element({listB1, listB2, listB3, listB4, listB5, listB6, listB7, listB8, listB9, listB10, listB11, listB12}, chosenCircle1) → listB
  78. Point(Line[H1a, xAxis]) → H1b
  79. Point(Line[H2a, xAxis]) → H2b
  80. Point(Line[H3a, xAxis]) → H3b
  81. Element({listL34, listL35, listL43, listL45, listL53, listL54, listR37, listR38, listR47, listR49, listR58, listR59}, chosenCircle2b) → listC
  82. Point(pointsB) → O3
  83. Zip(Circle[B, rad2], B, pointsB) → pointsBCircles
  84. If(step ≠ 4, {}, If[O2 ≟ B3, {B7, B8}, If[O2 ≟ B4, {B7, B9}, If[O2 ≟ B5, {B8, B9}, If[O2 ≟ B7, {B3, B4}, If[O2 ≟ B8, {B3, B5}, If[O2 ≟ B9, {B4, B5}]]]]]]) → pointsCpossible
  85. Zip(Circle[B, rad2], B, pointsCpossible) → pointsCCircles
  86. Circle(P + (0.02, 0.07), 0.55) → circlepulse2
  87. Circle(Q + (0.02, 0.07), 0.55) → circlepulse3
  88. Angle(If[x(O2) < x(O1), Polygon[O1, O3, O2], Polygon[O1, O2, O3]]) → w1, w2, w3
  89. Zip(Element[listB, m], m, Join[{Sequence[1, chosenCircle1b], {12}}]) → pointsCBetweenRight
  90. Zip(Element[listB, m], m, Sequence[chosenCircle1b, 12]) → pointsCBetweenLeft
  91. If(chosenCircle1b < 6, pointsCBetweenRight, pointsCBetweenLeft) → pointsCBetween
  92. Zip(Circle[P, rad2], P, pointsCBetween) → pointsCCirclesBetween
  93. Point(Line[PEg1, xAxis]) → PEg2
  94. Point(Line[DP1a, Rotate[DP1b, 90°, DP1a]]) → DP1c
  95. Point(Line[DP2a, Rotate[DP2b, 90°, DP2a]]) → DP2c
  96. Point(Line[DP3a, Rotate[DP3b, 90°, DP3a]]) → DP3c
  97. Sequence(O_{Pflock} + ((m * 1.6), 0), m, -1, 1) → listOPflock
  98. Angle(DP1b, DP1a, DP1c) → winkel71
  99. Angle(DP2b, DP2a, DP2c) → winkel72
  100. Angle(DP3b, DP3a, DP3c) → winkel73

AI 绘图提示语参考

一个直角三角形,由绳子(rope)构成,绳子标记三角形的边和顶点。绳子可以滑动,改变三角形形状,展示勾股定理。绳子由多个线段组成,标记在三角形上。图形包含点、圆弧和线段,展示几何构造。
以上提示语为根据原始绘图命令整理而来,仅供参考。