Perspective transformation produces perspective by viewing the 3-D space from
an arbitrary eye point. In the DCL library, it refers to the transformation from
a 3-D VC to 2-D RC.
Generally, parallel lines in 3-D space projected onto a 2-D plane are not
parallel. If the eye point is placed at the line of infinity, parallel lines
will be projected as parallel lines, but graphics projected in such a manner
seem unnatural.
To perform perspective transformation, the "eye point" and the "center of focus"
must be set. The eye point is the position from which the 3-D space is viewed,
and can be thought of as the position of the camera lens. The center of focus,
on the other hand, is not the focus on the film inside the camera, but is the
point being viewed from the eye point. The line connecting the eye point and the
center of focus is the "line of sight" .
With the perspective transformation, a point in a 3-D graphic is projected
onto a point on a plane where the line connecting the point in 3-D space and the
eye point intersects with the "plane of projection". In the DCL, the
plane of projection is the plane passing through the center of focus and
perpendicular to the line of sight.
In the case of 2-D coordinate systems, perspective transformation can be made by allocating the 2-D VC to a plane in a 3-D VC. The plane onto which the 2-D plane can be allocated is one which is perpendicular to either the X-, Y-, or the Z-axis, and cannot be allocated to an oblique plane. (To view the plane from an oblique angle, move the eye point.)