Why isn’t a orthographically projected plane at 45 degrees seemingly half its actual length?
For example, a vertical plane (geometrical entity) seen from the front of an orthographic system will shrink on the horizontal axis due to rotation around the vertical axis until it becomes invisible, but at middle point of rotation, the projection will be longer then half of the actual length.



How come is the projection shrinking in the first place?


Top angle rotation implies movement in 2 axis, in this case upwards and to the left. However, because from the front angle the up vector becomes backwards vector, the movement on that axis will not be visible in projection. That leaves only movement to the left to be projected, therefore the plane will shrink horizontally.



At what rate is the shrinking?


The change in size happens gradually (not linearly), first slower, then faster, or vice-versa, because the trajectory is an arc, not a straight line.

2.1. How to geometrically describe an arc/circle?

An arc can be simplified by using equal segments. Every segment has a certain angle, depending on it’s length, and the next segment inherits the angle and is rotated still by the same degree.



2.2. Why does the trajectory matters?

The closer the plane is to 90 degrees (to the projection plane) the smaller the projection, and the closer it is to being parallel, the closer to actual length. If every projected segment has a different, increasing angle, the length will grow bigger with every increment of the arc. This is the projection of the rate of shrinking..



If the trajectory would be a straight line at 45 degrees, then at 45 degrees the projection would be at half the actual length. However, this means the plane would have to shrink.



In conclusion I would like to add that this is a matter of rotation and it is valid in perspective as well. However, in perspective translation also marks the scaling of an object. I think foreshortening refers only to translation, not to rotation. Nevertheless, a projection can change size according to rotation as well.