6:32 PM, Sunday June 21st 2020
What is an intersection? The lesson instructions explain:
The intersection between two lines is where a point sits on both lines at the same time
The intersection between two planes is where a line runs along both planes at the same time
In the case of boxes they are formed from six planes. So If we can figure out the intersection between planes we could extend that method to boxes.
So a plane. What is it? It's a flat surface. In DrawABox we call planes what could be described geometrically as rectangular plane. A general plane in geometric/mathematic terms is actually infinite. The prime example of this is the ground plane. It extends infinitely all the way to the horizon line.
Note the connection there: For every infinite plane you can find it's respective horizon line.
How you you find an horizon line for an arbitrary plane? There's an easy method: say you have a flat object (a piece or carboard, a flat ruler, your hand with all your fingers straightened out) placed on the flat table surface. Now lets say you raise that object, without rotating it, all the way to your eye level. At that point you will be seeing the object edge on. That edge is aligned with the horizon line:
That little trick works for any plane in any orientation. You don't even have to do it physically. You can imagine a box, and then imagine moving eacho of the planes of the box outward until you see it edge on. Then you can trace the horizon line for that plane.
There a few things you can do with this. Let's say you do the above procedure for the three planes of a box that are facing the viewer. You will end up with three horizon lines. Those three horizon lines form a triangle. The corners of those triangles are exactly the vanishing points for the box!!
But why are the vanishing points there? What are vanishing points anyway? When we draw boxes what we actually are drawing are the edges of the box. What is an edge? The edge is the the line in between two adjacent planes. To be more specific: It is the common line between two adjacent planes.
So now we can go back where we started: An intersection between planes is the common line between two planes. In other words, by drawing boxes we have been drawing intersections all along!!
So the next logical step is to take our knowledge of drawing boxes and apply it to draw intersections. We know that order to draw the edges of a box (which are actually intersections) we consider the vanishing points for those edges. When drawing intersection between two planes then it is expected that intersection will converge at some vanishing point.
But how we find the location of that vanishing point for the intersection between planes. The answer for that is above: we consider the horizon line for each of the two participating planes, where those horizon line cross is where the vanishing point for the intersection line is:
The above statement gives us the direction of the intersection line (towards the respective vanishing point). It doesn't give us the start location of the intersection line. That's because the first intersection line can start at an arbitrary location (which is still inside the overlap between the boxes).
And with that we finally have all the tools to draw the intersection between two boxes:
Draw two boxes with some overlap
Pick a point inside that overlap
That point lies on a pair of planes, one from each box
Find the horizon lines for those two planes
Find where those horizon lines cross to find the vanishing point for the intersection
Use that vanishing point to draw the intersection line until an edge of either box is reached
Examine which pair of planes lie beyond that edge
Repeat from step #4
But of course, since this is DrawABox you cannot plot anything of the above. Not that it would be possible to plot everything within a piece of paper. Still, it is possible to estimate it well enough to get mostly convincing intersections.