Snake Path in a Cube

Snake Path in a Cube
Loading the math board and drawing, please wait…
2019-04-29 01:26
This example demonstrates a snake-like path inside a cube. It involves core mathematical concepts such as cube, vectors, and piecewise functions. Using GeoGebra commands like Polygon, Intersect, and OrthogonalLine, this path can be constructed. Suitable for middle school and above students to learn solid geometry and vector knowledge.

GeoGebra Commands & Parameters

  1. Polygon(C, D, B, A) → q1, c, d, b, a
  2. Intersect(b, yAxis) → E
  3. Intersect(c, yAxis) → F
  4. Intersect(xAxis, d) → G
  5. Intersect(a, xAxis) → H
  6. OrthogonalLine(E, xOyPlane) → f
  7. OrthogonalLine(G, xOyPlane) → g
  8. OrthogonalLine(F, xOyPlane) → h
  9. OrthogonalLine(H, xOyPlane) → i
  10. Point(f) → I
  11. Point(yAxis) → J
  12. Plane(E, J, I) → e
  13. CircleArc(E, I, J) → k_2
  14. Point(k_2) → P_2
  15. Plane(A, B, P_2) → j
  16. Circle(A, 4, j) → p
  17. Circle(B, 4, j) → q
  18. Line(P_2, b) → l
  19. Intersect(l, p) → L, M
  20. Intersect(l, q) → N, O
  21. Polygon(A, B, N, P_2, L) → poly1, a_1, b_1, n, k_5, l_1
  22. Point(i) → P
  23. Point(xAxis) → Q
  24. CircleArc(H, Q, P) → k_3
  25. Point(k_3) → P_3
  26. Plane(C, A, P_3) → m
  27. Line(P_3, a) → s
  28. Circle(C, 4, m) → t
  29. Circle(A, 4, m) → c_1
  30. Intersect(s, t) → S, T
  31. Intersect(s, c_1) → U, V
  32. Polygon(C, A, U, P_3, S) → poly2, c_2, a_2, u, r_1, s_1
  33. Point(g) → W
  34. Point(xAxis) → Z
  35. CircleArc(G, W, Z) → k_1
  36. Point(k_1) → P_1
  37. Plane(B, D, P_1) → o
  38. Line(P_1, d) → f_1
  39. Circle(B, 4, o) → e_1
  40. Circle(D, 4, o) → g_1
  41. Intersect(f_1, e_1) → B_1, C_1
  42. Intersect(f_1, g_1) → D_1, E_1
  43. Polygon(B, D, D_1, P_1, B_1) → poly3, b_2, d_2, h_1, i_1, j_1
  44. Point(h) → F_1
  45. Point(yAxis) → G_1
  46. CircleArc(F, F_1, G_1) → k_4
  47. Point(k_4) → P_4
  48. Plane(D, C, P_4) → k
  49. Line(P_4, c) → r
  50. Circle(D, 4, k) → d_1
  51. Circle(C, 4, k) → p_1
  52. Intersect(r, d_1) → K, R
  53. Intersect(r, p_1) → A_1, H_1
  54. Point(r) → I_1
  55. Polygon(D, C, A_1, I_1, K) → poly4, d_3, c_3, m_1, n_1, k_6
  56. Point(zAxis) → J_1
  57. Point(zAxis) → K_1
  58. Segment(J_1, K_1) → q_1
  59. PointIn(poly2) → A_2
  60. PointIn(poly2) → B_2
  61. PointIn(poly2) → C_2
  62. PointIn(poly2) → D_2
  63. PointIn(poly1) → E_2
  64. PointIn(poly1) → F_2
  65. PointIn(poly1) → G_2
  66. PointIn(poly1) → H_2
  67. PointIn(poly3) → I_2
  68. PointIn(poly3) → J_2
  69. PointIn(poly3) → K_2
  70. PointIn(poly3) → L_2
  71. Polygon(I_2, J_2, K_2, L_2) → q4, r_2, s_2, t_2, e_2
  72. PointIn(poly4) → M_2
  73. PointIn(poly4) → N_2
  74. PointIn(poly4) → O_2
  75. Point(zAxis) → R_2
  76. PointIn(poly4) → S_2
  77. Polygon(N_2, O_2, S_2, M_2) → q5, f_3, o_2, g_3, h_3
  78. Polygon(F_2, G_2, H_2, E_2) → q6, i_3, j_3, l_3, m_3
  79. Polygon(B_2, C_2, D_2, A_2) → q7, n_3, p_3, q_3, r_3
  80. Point(zAxis) → L_1
  81. Plane(L_1, xOyPlane) → w
  82. PointIn(w) → R_1
  83. PointIn(w) → S_1
  84. Point(Circle[S_1, Distance[R_1, S_1], Segment[R_1, S_1]]) → T_1
  85. Cube(R_1, S_1, T_1) → u_1, U_1, face5, face6, edge2, edge1, edge4, edge6, edge3, edge8, edge10, edge9, V_1, edge5, edge11, edge7, edge12, W_1, Z_1, T_2, face1, face3, face2, face4
  86. PointIn(q1) → U_2
  87. PointIn(q1) → V_2
  88. PointIn(q1) → W_2
  89. PointIn(q1) → Z_2
  90. Point(zAxis) → B_3
  91. Segment(A_3, B_3) → s_3
  92. Point(c_2) → C_3
  93. Line(C_3, s_3) → t_3
  94. Segment(A_3, C_3) → a_3
  95. Point(t_3) → D_3
  96. Line(D_3, a_3) → b_3
  97. Line(B_3, b_3) → e_3
  98. Intersect(t_3, e_3) → E_3
  99. Point(t_3) → F_3
  100. Line(F_3, b_3) → t_1
  101. Point(b_3) → M_1
  102. Intersect(t_1, zAxis) → N_1
  103. Intersect(b_1, j_1) → O_1
  104. Point(b_2) → Q_1
  105. Point(d_3) → Q_2
  106. OrthogonalLine(O_1, q1) → f_2
  107. OrthogonalLine(Q_2, q1) → g_2
  108. OrthogonalLine(Q_1, q1) → h_2
  109. Intersect(e_3, h_2) → G_3
  110. Intersect(t_1, h_2) → H_3
  111. Segment(O_1, A_3) → i_2
  112. Line(N_1, i_2) → j_2
  113. Line(B_3, i_2) → l_2
  114. Intersect(f_2, j_2) → I_3
  115. Intersect(g_2, j_2) → J_3
  116. Intersect(l_2, g_2) → L_3
  117. Segment(D_3, F_3) → m_2
  118. Segment(C_3, E_3) → n_2
  119. Point(m_2) → P_5
  120. Point(n_2) → P_6
  121. Plane(P_5, xOyPlane) → v
  122. PointIn(v) → O_3
  123. Polygon(O_3, P_5, 4, xOyPlane) → poly5, p_2, q_2, f_4, g_4, Q_3, R_3
  124. Plane(P_6, xOyPlane) → o_1
  125. PointIn(o_1) → K_3
  126. Polygon(K_3, P_6, 4, xOyPlane) → poly6, h_4, i_4, j_4, l_4, T_3, U_3
  127. PointIn(poly5) → N_3
  128. PointIn(poly5) → M_3
  129. PointIn(poly5) → V_3
  130. PointIn(poly5) → W_3
  131. Polygon(M_3, N_3, W_3, V_3) → q2, m_4, n_4, w_3, v_3
  132. OrthogonalLine(M_3, poly6) → p_4
  133. OrthogonalLine(V_3, poly6) → q_4
  134. OrthogonalLine(W_3, poly6) → r_4
  135. OrthogonalLine(N_3, poly6) → s_4
  136. Intersect(q_4, poly6) → Z_3
  137. Intersect(p_4, poly6) → A_4
  138. Intersect(r_4, poly6) → B_4
  139. Intersect(s_4, poly6) → C_4
  140. Polygon(A_4, C_4, B_4, Z_3) → q3, a_4, c_4, b_4, z_3
  141. Intersect(edge3, edge2) → D_4
  142. Intersect(edge10, edge12) → E_4
  143. Intersect(edge4, edge6) → F_4
  144. Point(edge9) → G_4
  145. Point(j_3) → H_4
  146. Point(l_3) → I_4
  147. Intersect(i_3, j_3) → J_4
  148. Intersect(m_3, i_3) → K_4
  149. Intersect(r_3, q_3) → L_4
  150. Point(p_3) → M_4
  151. Point(p_3) → N_4
  152. Intersect(r_3, n_3) → O_4
  153. Intersect(r_2, s_2) → Q_4
  154. PointIn(poly3) → R_4
  155. Intersect(s_2, t_2) → S_4
  156. Point(r_2) → T_4
  157. Point(v_3) → U_4
  158. Point(v_3) → V_4
  159. Intersect(n_4, w_3) → W_4
  160. Intersect(m_4, n_4) → Z_4
  161. Intersect(a_4, z_3) → A_5
  162. Point(z_3) → B_5
  163. Intersect(c_4, b_4) → C_5
  164. Intersect(a_4, c_4) → D_5
  165. Intersect(h_3, g_3) → E_5
  166. Point(g_3) → F_5
  167. Intersect(f_3, h_3) → G_5
  168. Intersect(f_3, o_2) → H_5
  169. Point(z_3) → I_5
  170. Point(z_3) → J_5
  171. Point(b_4) → K_5
  172. Point(c_4) → L_5
  173. Intersect(edge9, edge3) → M_5
  174. Intersect(edge6, edge2) → N_5
  175. Intersect(edge11, edge7) → O_5
  176. Point(edge4) → Q_5
  177. Intersect(edge5, edge1) → R_5
  178. Intersect(edge5, edge11) → V_5
  179. Intersect(edge6, edge8) → S_5
  180. Intersect(edge5, edge1) → T_5
  181. Intersect(edge1, edge3) → A_6
  182. Intersect(edge4, edge7) → B_6
  183. Midpoint(S_5, B_6) → U_5
  184. Midpoint(B_6, T_5) → C_6
  185. Midpoint(T_5, A_6) → D_6
  186. Circle(D_6, C_6, U_5) → d_4
  187. Intersect(edge9, edge11) → E_6
  188. Intersect(edge11, edge7) → F_6
  189. Intersect(edge9, edge10) → G_6
  190. Intersect(edge10, edge8) → H_6
  191. Midpoint(E_6, F_6) → I_6
  192. Midpoint(F_6, H_6) → J_6
  193. Segment(C_6, I_6) → t_4
  194. Segment(I_6, F_6) → e_4
  195. Segment(F_6, J_6) → f_5
  196. Segment(J_6, U_5) → g_5
  197. Segment(U_5, S_5) → h_5
  198. Segment(S_5, A_6) → i_5
  199. Intersect(m_4, v_3) → K_6
  200. PointIn(poly5) → L_6
  201. Segment(K_6, L_6) → j_5
  202. Intersect(n_4, w_3) → M_6
  203. Segment(L_6, M_6) → l_5
  204. Intersect(m_4, n_4) → N_6
  205. Midpoint(L_6, K_6) → O_6
  206. Midpoint(N_6, M_6) → Q_6
  207. Midpoint(M_6, L_6) → R_6
  208. Circle(O_6, R_6, Q_6) → c_5
  209. Segment(Q_6, M_6) → m_5
  210. Intersect(r_3, q_3) → S_6
  211. Point(p_3) → T_6
  212. Segment(S_6, T_6) → n_5
  213. Intersect(n_3, p_3) → U_6
  214. Segment(T_6, U_6) → p_5
  215. PointIn(poly2) → V_6
  216. Midpoint(V_6, U_6) → W_6
  217. Segment(W_6, U_6) → q_5
  218. Point(o_2) → Z_6
  219. Point(o_2) → A_7
  220. Intersect(h_3, g_3) → B_7
  221. Point(f_3) → C_7
  222. Midpoint(Z_6, A_7) → D_7
  223. Midpoint(B_7, C_7) → E_7
  224. Segment(B_7, C_7) → r_5
  225. Segment(E_7, D_7) → s_5
  226. Segment(D_7, A_7) → t_5
  227. Segment(A_7, C_7) → a_5
  228. Midpoint(S_6, T_6) → F_7
  229. Segment(F_7, W_6) → b_5
  230. Intersect(r_2, s_2) → G_7
  231. Intersect(s_2, t_2) → H_7
  232. Intersect(e_2, t_2) → I_7
  233. Point(r_2) → J_7
  234. Midpoint(I_7, J_7) → K_7
  235. Midpoint(H_7, G_7) → L_7
  236. Segment(G_7, H_7) → d_5
  237. Segment(H_7, I_7) → e_5
  238. Segment(I_7, K_7) → f_6
  239. Segment(K_7, L_7) → g_6
  240. Point(j_3) → M_7
  241. Intersect(i_3, j_3) → N_7
  242. Intersect(m_3, i_3) → O_7
  243. Point(l_3) → P_7
  244. Midpoint(M_7, N_7) → Q_7
  245. Midpoint(O_7, P_7) → R_7
  246. Segment(M_7, N_7) → h_6
  247. Segment(N_7, O_7) → i_6
  248. Segment(O_7, R_7) → j_6
  249. Segment(R_7, Q_7) → l_6
  250. Point(c_4) → S_7
  251. Point(b_4) → T_7
  252. Point(b_4) → U_7
  253. Point(a_4) → V_7
  254. Midpoint(T_7, U_7) → W_7
  255. Midpoint(U_7, V_7) → Z_7
  256. Midpoint(S_7, T_7) → A_8
  257. Circle(A_8, W_7, Z_7) → c_6
  258. Segment(A_8, T_7) → m_6
  259. Segment(T_7, U_7) → n_6
  260. Segment(U_7, V_7) → p_6
  261. Intersect(edge3, i_5) → D_8
  262. Intersect(h_5, edge8) → E_8
  263. Segment(D_8, E_8) → q_6
  264. Intersect(edge4, edge6) → F_8
  265. Intersect(edge5, edge1) → G_8
  266. Segment(F_8, G_8) → r_6
  267. Segment(D_8, G_8) → s_6
  268. Segment(F_8, E_8) → t_6
  269. Intersect(edge10, edge12) → H_8
  270. Segment(E_8, H_8) → a_6
  271. Point(e_4) → I_8
  272. Segment(I_8, H_8) → b_6
  273. Intersect(t_4, edge11) → J_8
  274. Segment(I_8, J_8) → d_6
  275. Intersect(r_6, d_4, 1) → K_8
  276. Segment(J_8, K_8) → e_6
  277. Point(b_6) → L_8
  278. Intersect(g_5, t_6) → M_8
  279. Segment(L_8, M_8) → f_7
  280. Point(q_6) → N_8
  281. Circle(K_8, M_8, N_8) → c_7
  282. Intersect(edge9, edge10) → O_8
  283. Intersect(edge10, edge8) → P_8
  284. Segment(O_8, P_8) → g_7
  285. Intersect(e_4, f_5) → Q_8
  286. Segment(P_8, Q_8) → h_7
  287. Point(edge11) → R_8
  288. Segment(Q_8, R_8) → i_7
  289. Intersect(i_7, t_4) → S_8
  290. Intersect(t_4, d_4, 1) → T_8
  291. Segment(S_8, T_8) → j_7
  292. Intersect(g_5, d_4, 1) → U_8
  293. Intersect(i_5, d_4, 1) → V_8
  294. Circle(U_8, T_8, V_8) → d_7
  295. Polygon(B_9, C_9, 4) → poly7, k_7, l_7, m_7, n_7, D_9, E_9
  296. Midpoint(E_9, C_9) → A_9