In order for a 3D graphic program to be useful, it must be able to make two-dimensional projections of its three-dimensional constructions so that they can be displayed on computer screens and printed out. These are some of the possible projections:
The function Picture::output() takes a const unsigned
short argument specifying the projection to be used. The user should
probably avoid using explicit unsigned shorts, but should use the
constants defined for this purpose in the
namespace Projections.1
The constants are PERSP, PARALLEL_X_Y,
PARALLEL_X_Z,
PARALLEL_Z_Y, AXON, and ISO. The latter two should
not be used, because the axonometric and isometric projections have not
yet been implemented.