Orthographic Projections of a Solid

Orthographic Projections of a Solid
Loading the math board and drawing, please wait…
2022-06-28 10:54
This example demonstrates the concept of orthographic projections in solid geometry. By constructing a cube and its orthographic projections, it shows how to project from three-dimensional space to a two-dimensional plane. GeoGebra commands such as Point, Cube, and Translate are used. Suitable for middle school and above students to learn solid geometry and projection transformations.

GeoGebra Commands & Parameters

  1. Point(Circle[B, Distance[A, B], Segment[A, B]]) → C
  2. Point(Circle[J, Distance[I, J], Segment[I, J]]) → K
  3. Point(Circle[R, Distance[Q, R], Segment[Q, R]]) → S
  4. Point(Circle[H_1, Distance[G_1, H_1], Segment[G_1, H_1]]) → I_1
  5. Cube(G_1, H_1, I_1) → e_1, J_1, face11, facez, edge13, edge12, edge15, edge17, edge14, edge19, edge21, edge20, K_1, edge16, edge22, edge18, edge23, L_1, M_1, N_1, face7, face9, facey, facex
  6. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(0, 0), (2, 1)]) → f
  7. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(0, 0), (1, 0)]) → g
  8. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(0, 0), (1, 1, 1)]) → h
  9. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(0, 0), (1, 1)]) → e
  10. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(0, 0), (1, 1)]) → e'
  11. Translate(facex, Vector[(0, 0, 0), (0, -1, 0)]) → facex010
  12. Translate(facey, Vector[(0, 0), (1, 0, 0)]) → facey100
  13. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(2, 0)]) → a
  14. Translate(facez, Vector[(0, 0, 0), (0, -1, 0)]) → facez010
  15. Translate(facey, Vector[(0, 0, 1)]) → facey001
  16. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(1, 0, 1)]) → b
  17. Translate(facey, Vector[(0, -1, 0)]) → facey010
  18. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(1, -1)]) → c
  19. Translate(facey, Vector[(1, -1, 0)]) → facey110
  20. Translate(facex, Vector[(0, -2, 0)]) → facex020
  21. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(2, -1)]) → d
  22. Translate(facey, Vector[(0, -2, 0)]) → facey020
  23. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(1, -2)]) → i
  24. Translate(facey, Vector[(1, -2, 0)]) → facey120
  25. Translate(facex, Vector[(0, -3, 0)]) → facex030
  26. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(2, -2)]) → j
  27. Translate(facex, Vector[(1, 0, 0)]) → facex100
  28. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(3, 1)]) → k
  29. Translate(facex, Vector[(1, -1, 0)]) → facex110
  30. Translate(facey, Vector[(2, 0, 0)]) → facey200
  31. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(3, 0)]) → l
  32. Translate(facey, Vector[(2, -1, 0)]) → facey210
  33. Translate(facex, Vector[(1, -2, 0)]) → facex120
  34. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(3, -1)]) → m
  35. Translate(facey, Vector[(2, -2, 0)]) → facey220
  36. Translate(facex, Vector[(1, -3, 0)]) → facex130
  37. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(3, -2)]) → n
  38. Translate(facey, Vector[(0, -1, 1)]) → facey011
  39. Translate(facez, Vector[(0, -2, 0)]) → facez020
  40. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(1, -1, 1)]) → o
  41. Translate(facez, Vector[(0, -3, 0)]) → facez030
  42. Translate(facey, Vector[(0, -2, 1)]) → facey021
  43. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(1, -2, 1)]) → p
  44. Translate(facex, Vector[(0, 0, 1)]) → facex001
  45. Translate(facez, Vector[(1, 0, 0)]) → facez100
  46. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(2, 1, 1)]) → q
  47. Translate(facex, Vector[(0, -1, 1)]) → facex011
  48. Translate(facey, Vector[(1, 0, 1)]) → facey101
  49. Translate(facez, Vector[(1, -1, 0)]) → facez110
  50. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(2, 0, 1)]) → r
  51. Translate(facex, Vector[(0, -2, 1)]) → facex021
  52. Translate(facey, Vector[(1, -1, 1)]) → facey111
  53. Translate(facez, Vector[(1, -2, 0)]) → facez120
  54. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(2, -1, 1)]) → s
  55. Translate(facex, Vector[(0, -3, 1)]) → facex031
  56. Translate(facey, Vector[(1, -2, 1)]) → facey121
  57. Translate(facez, Vector[(1, -3, 0)]) → facez130
  58. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(2, -2, 1)]) → t
  59. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(0, 0), (2, 1)]) → f'
  60. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(2, 0)]) → a'
  61. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(0, 0), (1, 0)]) → g'
  62. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(1, -1)]) → c'
  63. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(1, -2)]) → i'
  64. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(2, -1)]) → d'
  65. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(2, -2)]) → j'
  66. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(0, 0), (1, 1, 1)]) → h'
  67. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(1, 0, 1)]) → b'
  68. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(1, -1, 1)]) → o'
  69. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(1, -2, 1)]) → p'
  70. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[D]) → b_1
  71. Translate(facez, Vector[(2, 0, 0)]) → facez200
  72. Translate(facex, Vector[(1, 0, 1)]) → facex101
  73. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(3, 1, 1)]) → u
  74. Translate(facez, Vector[(2, -1, 0)]) → facez210
  75. Translate(facex, Vector[(1, -1, 1)]) → facex111
  76. Translate(facey, Vector[(2, 0, 1)]) → facey201
  77. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(3, 0, 1)]) → v
  78. Translate(facez, Vector[(2, -2, 0)]) → facez220
  79. Translate(facex, Vector[(1, -2, 1)]) → facex121
  80. Translate(facey, Vector[(2, -1, 1)]) → facey211
  81. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(3, -1, 1)]) → w
  82. Translate(facez, Vector[(2, -3, 0)]) → facez230
  83. Translate(facex, Vector[(1, -3, 1)]) → facex131
  84. Translate(facey, Vector[(2, -2, 1)]) → facey221
  85. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(3, -2, 1)]) → a_1
  86. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(2, 1, 1)]) → q'
  87. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(2, 0, 1)]) → r'
  88. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(2, -1, 1)]) → s'
  89. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(2, -2, 1)]) → t'
  90. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(3, 1, 1)]) → u'
  91. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(3, 0, 1)]) → v'
  92. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(3, -1, 1)]) → w'
  93. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(3, -2, 1)]) → a_1'
  94. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(3, 1)]) → k'
  95. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(3, 0)]) → l'
  96. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(3, -1)]) → m'
  97. Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(3, -2)]) → n'
  98. Translate(Prism[Polygon[(-5, 2, 0), (-5, -2, 0), (-2, -2, 0), (-2, 2, 0)], (-5, 2, 2)], Vector[(0, 0)]) → c_1
  99. Translate(Prism[Polygon[(-5, 2, 0), (-5, -2, 0), (-2, -2, 0), (-2, 2, 0)], (-5, 2, 2)], Vector[(0, 0)]) → d_1
  100. Translate(Polygon[(-5, 1, 0), (-2, 1, 0), (-2, 1, 2), (-5, 1, 2)], Vector[(0, 0)]) → poly1
  101. Translate(Polygon[(-5, 0, 0), (-2, 0, 0), (-2, 0, 2), (-5, 0, 2)], Vector[(0, 0)]) → poly2
  102. Translate(Polygon[(-5, -1, 0), (-2, -1, 0), (-2, -1, 2), (-5, -1, 2)], Vector[(0, 0)]) → poly3
  103. Translate(Polygon[(-4, 2, 0), (-4, -2, 0), (-4, -2, 2), (-4, 2, 2)], Vector[(0, 0)]) → poly4
  104. Translate(Polygon[(-3, 2, 0), (-3, -2, 0), (-3, -2, 2), (-3, 2, 2)], Vector[(0, 0)]) → poly5
  105. Translate(Polygon[(-5, -2, 1), (-2, -2, 1), (-2, 2, 1), (-5, 2, 1)], Vector[(0, 0)]) → poly6
  106. Vector((1, -4, 0), (1, -3, 0)) → u_1
  107. Vector((7, 2, 0), (6, 2, 0)) → v_1
  108. Vector((1, 2, 3.5), (1, 2, 2.5)) → w_1
  109. Segment((1, -3, 0), (1, -4, 0)) → f_1
  110. Segment((6, 2, 0), (7, 2, 0)) → g_1
  111. Segment((1, 2, 2.5), (1, 2, 3.5)) → h_1

AI Drawing Prompt Reference

In a 3D coordinate space, construct a cube and keep several of its visible faces and edges as the projection targets. Based on this cube, create multiple copies of the cube by translating it in different directions, producing groups of corresponding face patches at distinct positions. Arrange these translated faces so that the overall display demonstrates orthographic projection from three-dimensional space onto a two-dimensional plane. Emphasize the directional correspondence: faces moved along different axes should form clear, interpretable projection cues that reveal how the cube’s geometry projects across the selected views.
The prompt above was compiled from the original drawing commands and is for reference only.