Orthographic Projections of a Solid
Loading the math board and drawing, please wait…
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
Point(Circle[B, Distance[A, B], Segment[A, B]]) → CPoint(Circle[J, Distance[I, J], Segment[I, J]]) → KPoint(Circle[R, Distance[Q, R], Segment[Q, R]]) → SPoint(Circle[H_1, Distance[G_1, H_1], Segment[G_1, H_1]]) → I_1Cube(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, facexTranslate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(0, 0), (2, 1)]) → fTranslate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(0, 0), (1, 0)]) → gTranslate(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)]) → hTranslate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(0, 0), (1, 1)]) → eTranslate(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'Translate(facex, Vector[(0, 0, 0), (0, -1, 0)]) → facex010Translate(facey, Vector[(0, 0), (1, 0, 0)]) → facey100Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(2, 0)]) → aTranslate(facez, Vector[(0, 0, 0), (0, -1, 0)]) → facez010Translate(facey, Vector[(0, 0, 1)]) → facey001Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(1, 0, 1)]) → bTranslate(facey, Vector[(0, -1, 0)]) → facey010Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(1, -1)]) → cTranslate(facey, Vector[(1, -1, 0)]) → facey110Translate(facex, Vector[(0, -2, 0)]) → facex020Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(2, -1)]) → dTranslate(facey, Vector[(0, -2, 0)]) → facey020Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(1, -2)]) → iTranslate(facey, Vector[(1, -2, 0)]) → facey120Translate(facex, Vector[(0, -3, 0)]) → facex030Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(2, -2)]) → jTranslate(facex, Vector[(1, 0, 0)]) → facex100Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(3, 1)]) → kTranslate(facex, Vector[(1, -1, 0)]) → facex110Translate(facey, Vector[(2, 0, 0)]) → facey200Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(3, 0)]) → lTranslate(facey, Vector[(2, -1, 0)]) → facey210Translate(facex, Vector[(1, -2, 0)]) → facex120Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(3, -1)]) → mTranslate(facey, Vector[(2, -2, 0)]) → facey220Translate(facex, Vector[(1, -3, 0)]) → facex130Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(3, -2)]) → nTranslate(facey, Vector[(0, -1, 1)]) → facey011Translate(facez, Vector[(0, -2, 0)]) → facez020Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(1, -1, 1)]) → oTranslate(facez, Vector[(0, -3, 0)]) → facez030Translate(facey, Vector[(0, -2, 1)]) → facey021Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(1, -2, 1)]) → pTranslate(facex, Vector[(0, 0, 1)]) → facex001Translate(facez, Vector[(1, 0, 0)]) → facez100Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(2, 1, 1)]) → qTranslate(facex, Vector[(0, -1, 1)]) → facex011Translate(facey, Vector[(1, 0, 1)]) → facey101Translate(facez, Vector[(1, -1, 0)]) → facez110Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(2, 0, 1)]) → rTranslate(facex, Vector[(0, -2, 1)]) → facex021Translate(facey, Vector[(1, -1, 1)]) → facey111Translate(facez, Vector[(1, -2, 0)]) → facez120Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(2, -1, 1)]) → sTranslate(facex, Vector[(0, -3, 1)]) → facex031Translate(facey, Vector[(1, -2, 1)]) → facey121Translate(facez, Vector[(1, -3, 0)]) → facez130Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(2, -2, 1)]) → tTranslate(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'Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(2, 0)]) → a'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'Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(1, -1)]) → c'Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(1, -2)]) → i'Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(2, -1)]) → d'Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(2, -2)]) → j'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'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'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'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'Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[D]) → b_1Translate(facez, Vector[(2, 0, 0)]) → facez200Translate(facex, Vector[(1, 0, 1)]) → facex101Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(3, 1, 1)]) → uTranslate(facez, Vector[(2, -1, 0)]) → facez210Translate(facex, Vector[(1, -1, 1)]) → facex111Translate(facey, Vector[(2, 0, 1)]) → facey201Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(3, 0, 1)]) → vTranslate(facez, Vector[(2, -2, 0)]) → facez220Translate(facex, Vector[(1, -2, 1)]) → facex121Translate(facey, Vector[(2, -1, 1)]) → facey211Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(3, -1, 1)]) → wTranslate(facez, Vector[(2, -3, 0)]) → facez230Translate(facex, Vector[(1, -3, 1)]) → facex131Translate(facey, Vector[(2, -2, 1)]) → facey221Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(3, -2, 1)]) → a_1Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(2, 1, 1)]) → q'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'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'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'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'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'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'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'Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(3, 1)]) → k'Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(3, 0)]) → l'Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(3, -1)]) → m'Translate(Cube[(0, 0), (1, 0), Point[Circle[(1, 0), Distance[(0, 0), (1, 0)], Segment[(0, 0), (1, 0)]]]], Vector[(3, -2)]) → n'Translate(Prism[Polygon[(-5, 2, 0), (-5, -2, 0), (-2, -2, 0), (-2, 2, 0)], (-5, 2, 2)], Vector[(0, 0)]) → c_1Translate(Prism[Polygon[(-5, 2, 0), (-5, -2, 0), (-2, -2, 0), (-2, 2, 0)], (-5, 2, 2)], Vector[(0, 0)]) → d_1Translate(Polygon[(-5, 1, 0), (-2, 1, 0), (-2, 1, 2), (-5, 1, 2)], Vector[(0, 0)]) → poly1Translate(Polygon[(-5, 0, 0), (-2, 0, 0), (-2, 0, 2), (-5, 0, 2)], Vector[(0, 0)]) → poly2Translate(Polygon[(-5, -1, 0), (-2, -1, 0), (-2, -1, 2), (-5, -1, 2)], Vector[(0, 0)]) → poly3Translate(Polygon[(-4, 2, 0), (-4, -2, 0), (-4, -2, 2), (-4, 2, 2)], Vector[(0, 0)]) → poly4Translate(Polygon[(-3, 2, 0), (-3, -2, 0), (-3, -2, 2), (-3, 2, 2)], Vector[(0, 0)]) → poly5Translate(Polygon[(-5, -2, 1), (-2, -2, 1), (-2, 2, 1), (-5, 2, 1)], Vector[(0, 0)]) → poly6Vector((1, -4, 0), (1, -3, 0)) → u_1Vector((7, 2, 0), (6, 2, 0)) → v_1Vector((1, 2, 3.5), (1, 2, 2.5)) → w_1Segment((1, -3, 0), (1, -4, 0)) → f_1Segment((6, 2, 0), (7, 2, 0)) → g_1Segment((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.