3D Surface Plotter with Tiled Display

3D Surface Plotter with Tiled Display
Loading the math board and drawing, please wait…
2013-11-10 01:41
This example demonstrates how to use tiled display to plot 3D surfaces. Key mathematical concepts include functions, coordinate geometry, and calculus. It utilizes GeoGebra commands and objects such as sequences, points, vectors, and polygons. Suitable for high school and above students or teachers.

GeoGebra Commands & Parameters

  1. Corner(1) → Eckpunkt1
  2. Corner(2) → Eckpunkt2
  3. If(c, α, x(C - Eckpunkt1) / dEx * c_{Move}) → α1
  4. Mod(α1, 6.283) → α2
  5. Corner(3) → Eckpunkt3
  6. If(c, β, y(C - Eckpunkt2) / dEy * c_{Move}) → β1
  7. Mod(β1, 6.283) → β2
  8. Sequence(a11 * Element[zWX1, i] + a12 * Element[zWY1, i] + a13 * Element[zWZ1, i], i, 1, 4) → zWX1'
  9. Element(zWW_0, 3) → zW_2
  10. Element(zWW_0, 4) → zW_1
  11. If(zW_1 ≟ 4 ∧ zW_2 ≟ 1 ∨ zW_1 ≟ 1 ∧ zW_2 ≟ 4, true, false) → dBB3
  12. If(zW_1 ≟ 2 ∧ zW_2 ≟ 3 ∨ zW_1 ≟ 3 ∧ zW_2 ≟ 2, true, false) → dBB4
  13. If(dBB3 ∨ dBB4, true, false) → ddd1
  14. If(zW_1 ≟ 1 ∧ zW_2 ≟ 2 ∨ zW_1 ≟ 2 ∧ zW_2 ≟ 1, true, false) → dBB1
  15. If(dBB1 ∨ dBB4, true, false) → ddd2
  16. Join(Sequence[Sequence[(x_{min} + If[ddd1, i, j] * dx_1, y_{min} + If[ddd1, j, i] * dy_1), i, If[ddd2, 0, N], If[ddd2, N, 0], If[ddd2, 1, -1]], j, If[ddd2, 0, N], If[ddd2, N, 0], If[ddd2, 1, -1]]) → l1aa
  17. If(b, Min[RemoveUndefined[Sequence[f(x(Element[l1aa, i]) - Δx, y(Element[l1aa, i]) - Δy), i, 1, lä]]], z_{min}) → zz_{min}
  18. If(b, Max[RemoveUndefined[Sequence[f(x(Element[l1aa, i]) - Δx, y(Element[l1aa, i] - Δy)), i, 1, lä]]], z_{max}) → zz_{max}
  19. If(ccc1, N_0, 2) → N_P
  20. If(ddd1, Sequence[Element[x2la, If[ddd2, n_b - 1, N_P + 2 - n_b + 1]] + 0 * i, i, 1, N_P + 1], x2la) → Y0_p
  21. If(ddd1, x1la, Sequence[Element[x1la, If[ddd2, n_b - 1, N_P + 2 - n_b + 1]] + 0 * i, i, 1, N_P + 1]) → X0_p
  22. If(ddd1, x1la, Sequence[Element[x1la, If[ddd2, n_b, N_P + 2 - n_b]] + 0 * i, i, 1, N_P + 1]) → X_p
  23. If(ddd1, Sequence[Element[x2la, If[ddd2, n_b, N_P + 2 - n_b]] + 0 * i, i, 1, N_P + 1], x2la) → Y_p
  24. Sequence(f(Element[X0_p, i] - Δx, Element[Y0_p, i] - Δy), i, 1, N_P + 1) → Z0_p
  25. Sequence(f(Element[X_p, i] - Δx, Element[Y_p, i] - Δy), i, 1, N_P + 1) → Z_p
  26. If(abs(x) < 0.2, 0.2, x) → h
  27. If(ddd1, x_{max}, y_{max}) → tb'
  28. If(ddd1, x_{min}, y_{min}) → ta'
  29. If(ddd1, y_{min}, x_{min}) → ta
  30. If(ddd1, y_{max}, x_{max}) → tb
  31. Element(zWW_0, 2) → zW_3
  32. If(zW_1 ≟ 3 ∧ zW_2 ≟ 4 ∨ zW_1 ≟ 4 ∧ zW_2 ≟ 3, true, false) → dBB2
  33. Polygon(Eckpunkt1, Eck11, Eck12, (x(Eckpunkt1), y(Eck12))) → Vieleck2, eckpunkt1, eck11, eck12, a_1
  34. Sequence(Segment[Element[zTT1, i], Element[zTT1, i + 1]], i, 1, 7) → BoxStr
  35. Vector(Element[zTT1, 4], Element[zTT1, 1]) → zVectx
  36. Vector(Element[zTT1, 4], Element[zTT1, 3]) → zVecty
  37. Vector(Element[zTT1, 4], Element[zTT1, 5]) → zVectz
  38. Polygon(Eck11, Eckpunkt2, Eckpunkt3, Eck12) → Vieleck1, eck11_1, eckpunkt2, eckpunkt3, eck12_1
  39. Element(zTT, zW_1) → zY1
  40. Element(zTT, zW_2) → zY2
  41. Element(zTT, zW_3) → zY3
  42. Polygon(zTT) → zTTPoly, , , ,
  43. Element(zWW_0, 1) → zW_4
  44. Element(zTT1, 7) → P_R
  45. Element(zTT1, 8) → P_L
  46. Polygon({Element[zTT1, 1], Element[zTT1, 2], Element[zTT1, 7], Element[zTT1, 8]}) → Vvrd0, , , ,
  47. Segment(P_R, P_L) → StrRL
  48. Polygon(Sequence[Element[zTT1, i], i, 9, 12]) → zlPoly, n, r, s, c_1
  49. Ray(B, Element[zTT1, 13]) → Strx
  50. Ray(B, Element[zTT1, 14]) → Stry
  51. Ray(B, Element[zTT1, 15]) → Strz
  52. Textfield(N) → inputBox1
  53. Textfield(x_{min}) → inputBox5
  54. Textfield(x_{max}) → inputBox6
  55. Textfield(y_{min}) → inputBox7
  56. Textfield(y_{max}) → inputBox8
  57. Textfield(z_{min}) → inputBox9
  58. Textfield(z_{max}) → inputBox10
  59. Textfield(n_a) → Textfeld1
  60. Textfield(v_{na}) → Textfeld3
  61. Textfield(v_{ne}) → Textfeld4
  62. Textfield(n_e) → Textfeld2
  63. Point(yAxis) → Horizont
  64. OrthogonalLine(Horizont, yAxis) → horizont
  65. Point(xAxis) → Vertikal
  66. OrthogonalLine(Vertikal, xAxis) → vertikal
  67. Element(zTT1, zW_1) → zlN11
  68. Element(zTT1, 9 - zW_1) → zlN111
  69. Element(zTT1, zW_2) → zlN22
  70. Element(zTT1, 9 - zW_2) → zlN222
  71. Polygon({zlN11, zlN22, zlN222, zlN111}) → Vgrund01, , , ,
  72. If(g, m * (N + 1), N * (N + 1)) → ttt
  73. Sequence(If[i ≟ ceil(i / (N + 1)) * (N + 1), Polygon[(0, 0), (0, 0), (0, 0), (0, 0)], Polygon[Element[ylPunkten10, i], Element[ylPunkten10, i + N + 1], Element[ylPunkten10, i + N + 2], Element[ylPunkten10, i + 1]]], i, 1, ttt) → yylPolyy
  74. Textfield(Typ) → Textfeld5
  75. Element(ylPunkten101, m1) → zP
  76. Textfield(N_0) → inputBox3
  77. Polygon(B, Element[zTT1, 16], Element[zTT1, 17], Element[zTT1, 20]) → Strecke4Eck, b_2, d_1, h_1, i_1
  78. Segment(Element[zTT1, 18], Element[zTT1, 19]) → Strzxy
  79. Segment(Element[zTT1, 18], Element[zTT1, 17]) → Strzz
  80. Element(zTT1, 18) → W
  81. Segment(B, Element[zTT1, 19]) → j_1
  82. Element(zTT1, 20) → PWy
  83. Element(zTT1, 16) → PWx
  84. Element(zTT1, 19) → PWz
  85. Polygon(Element[ylPunkten100, m1], Element[ylPunkten100, m1 + 1], Element[ylPunkten101, m1 + 1], Element[ylPunkten101, m1]) → zV1, z01, z04, z03, z02
  86. Textfield(Δx) → Textfeld6
  87. Textfield(Δy) → Textfeld7
  88. LaTeX(f, true, true) → Text14
  89. Textfield(f) → Textfeld8
  90. Element(yylPolyy, 1) → M_{1}
  91. Element(yylPolyy, 2) → M_{2}
  92. Element(yylPolyy, 3) → M_{3}
  93. Element(yylPolyy, 4) → M_{4}
  94. Element(yylPolyy, 5) → M_{5}
  95. Element(yylPolyy, 6) → M_{6}
  96. Element(yylPolyy, 7) → M_{7}
  97. Element(yylPolyy, 8) → M_{8}
  98. Element(yylPolyy, 9) → M_{9}
  99. Element(yylPolyy, 10) → M_{10}
  100. Element(yylPolyy, 11) → M_{11}
  101. Element(yylPolyy, 12) → M_{12}
  102. Element(yylPolyy, 13) → M_{13}
  103. Element(yylPolyy, 14) → M_{14}
  104. Element(yylPolyy, 15) → M_{15}
  105. Element(yylPolyy, 16) → M_{16}
  106. Element(yylPolyy, 17) → M_{17}
  107. Element(yylPolyy, 18) → M_{18}
  108. Element(yylPolyy, 19) → M_{19}
  109. Element(yylPolyy, 20) → M_{20}
  110. Element(yylPolyy, 21) → M_{21}
  111. Element(yylPolyy, 22) → M_{22}
  112. Element(yylPolyy, 23) → M_{23}
  113. Element(yylPolyy, 24) → M_{24}
  114. Element(yylPolyy, 25) → M_{25}
  115. Element(yylPolyy, 26) → M_{26}
  116. Element(yylPolyy, 27) → M_{27}
  117. Element(yylPolyy, 28) → M_{28}
  118. Element(yylPolyy, 29) → M_{29}
  119. Element(yylPolyy, 30) → M_{30}
  120. Element(yylPolyy, 31) → M_{31}
  121. Element(yylPolyy, 32) → M_{32}
  122. Element(yylPolyy, 33) → M_{33}
  123. Element(yylPolyy, 34) → M_{34}
  124. Element(yylPolyy, 35) → M_{35}
  125. Element(yylPolyy, 36) → M_{36}
  126. Element(yylPolyy, 37) → M_{37}
  127. Element(yylPolyy, 38) → M_{38}
  128. Element(yylPolyy, 39) → M_{39}
  129. Element(yylPolyy, 40) → M_{40}
  130. Element(yylPolyy, 41) → M_{41}
  131. Element(yylPolyy, 42) → M_{42}
  132. Element(yylPolyy, 43) → M_{43}
  133. Element(yylPolyy, 44) → M_{44}
  134. Element(yylPolyy, 45) → M_{45}
  135. Element(yylPolyy, 46) → M_{46}
  136. Element(yylPolyy, 47) → M_{47}
  137. Element(yylPolyy, 48) → M_{48}
  138. Element(yylPolyy, 49) → M_{49}
  139. Element(yylPolyy, 50) → M_{50}
  140. Element(yylPolyy, 51) → M_{51}
  141. Element(yylPolyy, 52) → M_{52}
  142. Element(yylPolyy, 53) → M_{53}
  143. Element(yylPolyy, 54) → M_{54}
  144. Element(yylPolyy, 55) → M_{55}
  145. Element(yylPolyy, 56) → M_{56}
  146. Element(yylPolyy, 57) → M_{57}
  147. Element(yylPolyy, 58) → M_{58}
  148. Element(yylPolyy, 59) → M_{59}
  149. Element(yylPolyy, 60) → M_{60}
  150. Element(yylPolyy, 61) → M_{61}
  151. Element(yylPolyy, 62) → M_{62}
  152. Element(yylPolyy, 63) → M_{63}
  153. Element(yylPolyy, 64) → M_{64}
  154. Element(yylPolyy, 65) → M_{65}
  155. Element(yylPolyy, 66) → M_{66}
  156. Element(yylPolyy, 67) → M_{67}
  157. Element(yylPolyy, 68) → M_{68}
  158. Element(yylPolyy, 69) → M_{69}
  159. Element(yylPolyy, 70) → M_{70}
  160. Element(yylPolyy, 71) → M_{71}
  161. Element(yylPolyy, 72) → M_{72}
  162. Element(yylPolyy, 73) → M_{73}
  163. Element(yylPolyy, 74) → M_{74}
  164. Element(yylPolyy, 75) → M_{75}
  165. Element(yylPolyy, 76) → M_{76}
  166. Element(yylPolyy, 77) → M_{77}
  167. Element(yylPolyy, 78) → M_{78}
  168. Element(yylPolyy, 79) → M_{79}
  169. Element(yylPolyy, 80) → M_{80}
  170. Element(yylPolyy, 81) → M_{81}
  171. Element(yylPolyy, 82) → M_{82}
  172. Element(yylPolyy, 83) → M_{83}
  173. Element(yylPolyy, 84) → M_{84}
  174. Element(yylPolyy, 85) → M_{85}
  175. Element(yylPolyy, 86) → M_{86}
  176. Element(yylPolyy, 87) → M_{87}
  177. Element(yylPolyy, 88) → M_{88}
  178. Element(yylPolyy, 89) → M_{89}
  179. Element(yylPolyy, 90) → M_{90}
  180. Element(yylPolyy, 91) → M_{91}
  181. Element(yylPolyy, 92) → M_{92}
  182. Element(yylPolyy, 93) → M_{93}
  183. Element(yylPolyy, 94) → M_{94}
  184. Element(yylPolyy, 95) → M_{95}
  185. Element(yylPolyy, 96) → M_{96}
  186. Element(yylPolyy, 97) → M_{97}
  187. Element(yylPolyy, 98) → M_{98}
  188. Element(yylPolyy, 99) → M_{99}
  189. Element(yylPolyy, 100) → M_{100}
  190. Element(yylPolyy, 101) → M_{101}
  191. Element(yylPolyy, 102) → M_{102}
  192. Element(yylPolyy, 103) → M_{103}
  193. Element(yylPolyy, 104) → M_{104}
  194. Element(yylPolyy, 105) → M_{105}
  195. Element(yylPolyy, 106) → M_{106}
  196. Element(yylPolyy, 107) → M_{107}
  197. Element(yylPolyy, 108) → M_{108}
  198. Element(yylPolyy, 109) → M_{109}
  199. Element(yylPolyy, 110) → M_{110}

AI Drawing Prompt Reference

Create a 3D surface plot with a tiled display. Start by defining three key points Eckpunkt1, Eckpunkt2, and Eckpunkt3 in the coordinate system. Then, use a series of transformations and conditional statements to generate a set of points and line segments, forming a 3D surface. Adjust parameters as needed to fit different views.
The prompt above was compiled from the original drawing commands and is for reference only.