Unwrapping a Cylinder: REVAMPED! by jcswanepoel

Unwrapping a Cylinder: REVAMPED! by jcswanepoel
Loading the math board and drawing, please wait…
2020-05-06 19:38
① This example demonstrates how to unfold the surface of a 3D cylinder into a 2D plane, showing the dynamic correspondence of points, lines, and faces during the process. ② Core mathematical concepts include solid geometry (cylinder, net, surface-to-plane mapping), linear programming, quadratic functions, and combinatorial path/covering problems. ③ Construction highlights: using GeoGebra commands such as Cylinder, Line, Intersect, Sphere, Plane, Rotate, Dilate, Vector, Translate, Polygon, Segment, CircleArc, Angle, CurveCartesian, Surface, Midpoint, and Mirror to build the cylinder, auxiliary lines, unfolded polygons and curves, with interactive sliders or dynamic objects. ④ Suitable for high school and above, ideal for teaching solid geometry, enhancing spatial visualization, and exploring mathematical modeling and visualization.

GeoGebra Commands & Parameters

  1. Cylinder(A, C, r) → a, c, d, b
  2. Line(D, E) → f
  3. Intersect(f, d, 1) → F
  4. Sphere(F, r) → e
  5. Intersect(f, e) → G, H
  6. Plane(G, F, C) → g
  7. Rotate(C, If[0 < i ≤ 1, (i * π / 2), π / 2], D, g) → C'
  8. Rotate(d, If[0 < i ≤ 1, (i * π / 2), π / 2], D, g) → d'
  9. Rotate(dd, If[0 < i ≤ 1, (i * π / 2), π / 2], D, g) → dd'
  10. Dilate(C, If[1 < i ≤ 2, 2 - i, 0], I) → C'_1
  11. Dilate(C, If[1 < i ≤ 2, 2 - i, 0], J) → C'_2
  12. Vector(C, C'_1) → u
  13. Vector(C, C'_2) → v
  14. Translate(dd, u) → dd'_1
  15. Translate(dd, v) → dd'_2
  16. Translate(K, u) → K'
  17. Translate(K, v) → K'_1
  18. Rotate(K', If[1 < i ≤ 2, ((i - 1) * π), π], C'_1) → K''
  19. Rotate(K'_1, If[1 < i ≤ 2, ((-(i - 1)) * π), (-π)], C'_2) → L
  20. Translate(D, u) → D'
  21. Translate(D, v) → D'_1
  22. Polygon(D', D'_1, N, M) → poly1, d'_1, d'_2, n, m
  23. Segment(K'', Q) → j
  24. CircleArc(P, Q, M) → k
  25. Segment(L, S) → l
  26. CircleArc(R, N, S) → p
  27. CircleArc(C'_2, D'_1, L) → q
  28. CircleArc(C'_1, K'', D') → s
  29. Plane(T, A, B) → o
  30. Rotate(C', If[2 < i ≤ 3, ((i - 2) * π / 2), π / 2], E, g) → C''
  31. Rotate(poly1, If[2 < i ≤ 3, ((i - 2) * π / 2), π / 2], E, g) → poly1'
  32. Rotate(d', If[2 < i ≤ 3, ((i - 2) * π / 2), π / 2], E, g) → d'_3
  33. Rotate(dd', If[2 < i ≤ 3, ((i - 2) * π / 2), π / 2], E, g) → dd'_3
  34. Rotate(K'', If[2 < i ≤ 3, ((i - 2) * π / 2), π / 2], E, g) → K'''
  35. Rotate(Q, If[2 < i ≤ 3, ((i - 2) * π / 2), π / 2], E, g) → Q'
  36. Segment(K''', Q') → j'
  37. Rotate(L, If[2 < i ≤ 3, ((i - 2) * π / 2), π / 2], E, g) → L'
  38. Rotate(S, If[2 < i ≤ 3, ((i - 2) * π / 2), π / 2], E, g) → S'
  39. Segment(L', S') → l'
  40. Dilate(C'', If[3 < i ≤ 4, 4 - i, 0], U) → C'''
  41. Vector(C'', C''') → w
  42. Dilate(C'', If[3 < i ≤ 4, 4 - i, 0], V) → C'''_1
  43. Vector(C'', C'''_1) → t
  44. Translate(Z, w) → Z'
  45. Translate(Z, t) → Z'_1
  46. Translate(W, w) → W'
  47. Translate(W, t) → W'_1
  48. Rotate(W', If[3 < i ≤ 4, ((-(i - 3)) * π), (-π)], C''') → W''
  49. CircleArc(C''', Z', W'') → c_1
  50. Segment(Z, Z') → f_1
  51. Rotate(W'_1, If[3 < i ≤ 4, ((i - 3) * π), π], C'''_1) → A_1
  52. CircleArc(C'''_1, Z'_1, A_1) → d_1
  53. Segment(Z, Z'_1) → g_1
  54. Segment(R, N) → h_1
  55. Angle(N, R, S) → α
  56. CurveCartesian(x(C'_2) + (r * cos(t)), y(C'_2) + (r * sin(t)), z(C'_2), t, π / 2, π / 2 + α) → a_1
  57. Vector(A, C) → tt
  58. Surface(x(C'_2) + (r * cos(t)) - (u * x(tt)), y(C'_2) + (r * sin(t)) - (u * y(tt)), z(C'_2) - (u * z(tt)), u, 0, 1, t, π / 2, π / 2 + α) → b_1
  59. Surface((-x(C'_2)) - (r * cos(t)) - (u * x(tt)), y(C'_2) + (r * sin(t)) - (u * y(tt)), z(C'_2) - (u * z(tt)), u, 0, 1, t, π / 2, π / 2 + α) → e_1
  60. Midpoint(L', S') → B_1
  61. Midpoint(K''', Q') → C_1
  62. Line(B_1, C_1) → i_1
  63. Mirror(d_1, i_1) → k_1
  64. Mirror(c_1, i_1) → p_1
  65. Mirror(Z, i_1) → Z'_2
  66. Mirror(Z', i_1) → Z''
  67. Segment(Z'_2, Z'') → j_1
  68. Mirror(Z, i_1) → Z'_3
  69. Mirror(Z'_1, i_1) → D_1
  70. Segment(Z'_3, D_1) → l_1