2021-04-06
These are our notes to studying perspective without the crutch of cubes. Oh, well, as we added some notes on how to apply this to drawing, there are cubes now. We think this definitely helped with our drawing skills. Please let us know any inaccuracies.
We consider the 3-dimensional Euclidean space \mathbb {R}^3. Let V be the viewing plane and O be the eye point. Then the perspective drawing is, in essence, the projection to V with respect to O. More precisely, the image of a point P in space is the point of intersection of the line OP and the plane V. Let f denote this map.
[TODO: figure of map]
Without loss of generality, we set O to be the origin and V to be the plane z=1. Then the map f is given by: \begin{aligned} f: \mathbb {R}^3\backslash \{z=0\} &\rightarrow V \\ (x,y,z) &\mapsto (x/z,y/z,1). \end{aligned} We may identify the affine space V with \mathbb {R}^2 by taking the vector part, more precisely, by dropping the z-coordinate. In application, we restrict f to the domain z>0.
Let W be a plane. As long as W does not pass O, then f|_W is a bijection.
Let C be intersection of the locus of a degree n polynomial p with the plane W, i.e., the points on C satisfies p in addition to a degree 1 polynomial. In this case, it is easy to see that points on the image of C also satisfies a degree n polynomial.
In particular, f maps lines to lines and conics to conics. Signature is not preserved however. Thus it is possible for the types of conics to change. In application, the image of an ellipse must be an ellipse; otherwise, the source ellipse intersects the xy-plane. This can be seen by going back to the original meaning of conics: curves cut from cones by planes.
Let \mathbf {v} be a vector. Let \ell be a line passing through a point P and parallel to \mathbf {v}. Then points on \ell can be parametrised as P + t\mathbf {v},\qquad t\in\mathbb {R}. Let the coordinates of P be given by (x_P,y_P,z_P) and \mathbf {v} given by (v_1,v_2,v_3). Then if v_3\neq 0, i.e., \mathbf {v} is not parallel to V, then \lim_{t\rightarrow \infty} f (P + t\mathbf {v}) = \lim_{t\rightarrow \infty} (\frac{x_P+tv_1}{z_P+tv_3},\frac{y_P+tv_2}{z_P+tv_3},1) = (\frac{v_1}{v_3},\frac{v_2}{v_3},1). This point is called the vanishing point of \ell. If v_3=0, we should consider infinity to be the vanishing point. The meaning of infinity and which infinity point can be made precise by using projective geometry. Let \mathcal {C}_\mathbf {v} be the collection of lines parallel to \mathbf {v}. In fact, the vanishing point depends only on \mathbf {v}, not on the choice of \ell in \mathcal {C}_\mathbf {v}. Let \mathcal {C}_\mathbf {v} be the collection of lines parallel to \mathbf {v}. Thus every line in \mathcal {C}_\mathbf {v} has the same vanishing point. Thus their images appear to radiate from one point. Note that if we restrict to the z>0 part, the image is a ray.
[TODO: figure of VP for parallel lines.]
Let \ell_O be the line which is parallel to v and which contains O. Geometrically the vanishing point for \mathcal {C}_\mathbf {v} is just the point of intersection of \ell_O and V.
Thus we can answer the question of how many vanishing points there are in a drawing. The answer is the number of lines with different direction vectors. In scenes like cityscape, there are generally three sets of parallel lines with different direction vectors. Each produces a vanishing point as long as the set of lines are not parallel to V. We get the so-called 3-point, 2-point and 1-point perspectives.
Let W be a plane. The set of vanishing points of lines contained in W form a line. Geometrically it is given by intersecting the plane passing through O and parallel to W with V. Let us call it the vanishing line of W. In application, when W is taken to be the ground plane, the vanishing line of W is usually called the horizon or eye level.
[TODO: figure of VL for parallel planes.]
In practice, image of lines are easy to determine once we put down the vanishing points. If we know a point to be the intersections of two lines, we may find its image by finding the intersection of the images of the two lines. As line segments of the same length do not map to line segments of the same length under the perspective projection, this provides an easy way to determine location of image of a point. We can find the image of the centre of a rectangle by intersecting the diagonals of the image of the rectangle, for example. Once we know the image of the centre, we can find image of the disecting points and hence we know how to find the image of the rectangle that extends the original rectangle by one time of its width.
The aim of this section is to study images of line segments of equal length. In application, essentially we operate on V only. One problem arises often. We have the image of a line segment as reference. How do we find the image of the same length along another line?
What we have available are the vanishing points and the reference line segment on V. Once we supply the information of the relative position of O to the lines, then we can transfer the distance from one line to another.
Let \ell be a line. Let P and Q be two points on \ell. Let \ell' be another line that passes through P. Let R be a point on \ell' such that |PQ|=|PR|. Let A be the vanishing point of \ell and B that of \ell'. We would like to find f (R) in terms of f (P), f (Q), A and B.
One observation is that if we know the vanishing point C of QR then f (R) can be found as the intersection of the line connecting CQ and the line connecting BP. However the location of C cannot be determined by f (P), f (Q), A and B alone. We need an additional piece of data, the location of O relative to \ell and \ell'. We focus on the plane W through O and parallel to both \ell and \ell'. We translate \ell and \ell' to W along a vector that is parallel to V and orthogonal to AB. We use superscript t to denote the translated object. On (\ell')^t find the point S such that |P^tS|=|P^tQ^t|. Note that QR is parallel to Q^tS. Then C is the intersection of AB and Q^tS.
[TODO: figure view of V.]
[TODO: figure view of W to get C]
In practice, \ell and \ell' are orthogonal, forming two edges of a cube.
This is already mentioned above.
This is an application of the intersection method. One common need is to find the cast shadow of a stick that stands vertically on the ground under sunlight. Sunlight can be considered as parallel light with given direction \mathbf {v}. The location of shadow of the foot F of the stick is obvious. Let P be the top of the stick. The location of shadow Q of top of stick lies on the line parallel to \mathbf {v} through P. It also lies on the ground plane G. Thus it lies on the line L that is the intersection of the plane parallel to the vertical direction and \mathbf {v} through P and the plane G. Also consider the line M through the shadow point Q on the ground G perpendicular to V. If we consider the component \mathbf {w} of light that is parallel to V, then the line through P along \mathbf {w} intersects M and call the intersection R. Thus we get two lines whose intersection gives the shadow point Q.
To find the image of Q on V, we consider the two families of parallel lines determined by L and M respectively. The family of parallel lines associated to L produces a vanishing point, which we call the ground vanishing point of light (GVPL). Thus f (Q) lies on the line connecting f (F) and GVPL. The point f (R) is easy to find, if we know f (F) and the horizon line and the V-component \mathbf {w} of \mathbf {v}. Let C be the vanishing point for the receding lines that are parallel to the normal of V. Then f (Q) also lies on the line connecting C and f (R). Then using the intersection of the two lines we find f (Q).
Summary: Shadow of top=(GLVP–foot) \cap (centre–horizontal shadow drop).
This can be generalised to finding cast shadow of any point to any plane which may not be orthogonal to the viewing plane. In this case direction of light can be encoded in vanishing point of shadow on the plane and vanishing point of component of light on the plane which is orthogonal to the given plane and which is parallel to the line of intersection of the given plane and the viewing plane. We should give this plane a name to avoid long-winded sentences.
It is cumbersome to always have to differentiate between the cases when family of parallel lines has image lines that radiate from one point or lines that remain parallel. It is best to add points at ‘infinity’. How many points of infinities are there? In \mathbb {R}^2 the families of parallel lines are indexed by direction vectors. Thus we should glue on \mathbb {P}^1:= (\mathbb {R}^2 - \{0\})/\mathbb {R}^\times of them. This gives us the projective space \mathbb {P}^2, in which \mathbb {R}^2 is embedded as follows: \begin{aligned} \mathbb {R}^2 &\rightarrow \mathbb {P}^2 \\ (x,y) &\mapsto (x:y:1) \end{aligned} while points at infinity embed as follows: \begin{aligned} \mathbb {P}^1 &\rightarrow \mathbb {P}^2\\ (a:b) &\mapsto (a:b:0). \end{aligned} Once we call the point (a:b:0) the vanishing point of family of parallel line along the vector (a,b,0), then we can write the theory in a more uniform way.
One can use two VLs to determine VP of the intersection line and one can also use VPs of two lines to determine VL of the plane parallel to both lines.