Syntax: VIEWPOINT theta phi l

   Surfaces are drawn from a direction (THETA,PHI), and projected onto
a surface passing through the origin. The projection is from a point
L away from the nearest corner of the cube containing the image. If
L is positive a perspective projection is used; if it is 0 the viewpoint
is taken to be infinitely far from the surface, and if it is negative
an axonometric projection is used (i.e. the surface is projected from
infinity onto the x-z plane).

   The coordinate system is such that the z-axis is THETA=90, the
x-axis is (THETA,PHI) = (0,0), and the coordinate system is right
handed. Angles are taken to be in degrees, with theta lying in
[-90,90] and phi lies in [-180,180].  The nearest corner of the cube
containing the surface is projected onto the point (0,0).

   There are some useful macros in the file `surfaces'; say "load surfaces"
to read them.
