To view this content, you need to install Java from

2D illustration of a naive Perspective Transformation

The viewing direction is along the x-axis (hence x-measures depth, which usually is written as z). The screen is the left border of the yellow region.

The correct perspective transform (shown in blue) is: y'=dy/(d+x); x'=dx/(d+x);
By pressing "c", you can toggle on and off a naive transformaiotn (shown in green) which leaves the depth constant: y'=dy/(d+x); x'=x;

Notice that the naive transform changes visibility (depth order) between a vertex of the original triangle and the opposite edge.
Hence, this naive transformation cannot be used in conjunction with rasterization, which relies on linear interpolation betwen vertices, and with z-buffer-based visible surface selection.

Built with Processing by Jarek Rossignac on October 1, 2005.

Source code: perspective2 pts2