# How to construct a cube in 3-point perspective

I want to construct a correct cube in three-point perspective (not eyeball it). Assuming I have a horizon line, the three vanishing points and one edge of the cube (line a), how do I know how long the other edges (lines b and c) must be?

• As I understand this question, you are looking for a method of calculating all of the points. IMO, this is a very technical mathematical problem and is off topic. Perhaps math.stackexchange.com would be a more appropriate place to ask. Commented Dec 17, 2013 at 22:51
• @what I asked if this was suitable for migration. In its current form, this question isn't a clear fit for Mathematics. If you would like help trying to reformulate the question so that it is suitable for their community, I would suggest you drop into their chat room Commented Dec 18, 2013 at 13:54

I'm unclear if [a] includes the entire side or just the top path of that side.

1. Reflect [a] on a vertical axis, from the left side, this provides [b].
2. Rotate [a] (or [b]) to a 90° vertical, this provides [c]
3. Then simply duplicate, move, and align these segments to form the cube.

## Let's assume that [a] includes that entire side and not a single path.

1. angle p = angle q
2. length of r = length of s

That's really all you need to know.

One side provides 2 points of the 3pt perspective:

Closer view (and I've indicated the interior angles):

The angle you need to be aware of is the yellow angle. The angle of the center, top corner of largest side is reflected in center, middle corner of the top (or bottom) side. If you rotate that angle (yellow) around it's connecting point, so that the left side of the rotation aligns with the top edge of the existing angle, you get the first angle of the top side.

Now place the shortest vertical from the known side [x] at that angle, lining it up to that corner of [a]. This provides [x1] and allows you to determine 2 more perspective lines:

You may notice that the magenta angle is also reflected in this opposite side of [x].

You can now simple extend [x1] to the horizon line resulting in the 3rd point of perspective.

With the 3rd perspective point it's a simple matter to finish off the cube:

Although The only thing I copied from your sample image was side [a], here's a final comparison:

There is some minute difference, but I'm chalking that up to alignment issues on my part, since I wasn't absolutely ensuring all paths and angles were perfectly aligned at all times.

• I think that given the 3 points and (a) (which IIRC he states as known positions), it is plausible there is a solution, but it gets really hairy really fast Commented Dec 18, 2013 at 19:04
• @horatio yup.. I've edited. Wasn't thinking "geometry" like I should have been. Commented Dec 18, 2013 at 19:42
• I don't think this method is right. At least when I generate these mathematically correct with matrix manipulation, then the angle theory does not work. This is something thats strictly true only for isometric images. Commented Dec 19, 2013 at 11:48
• @Scott You will realize that your method does not work if you try it with a cube viewed from a lower angle, like one of these cubes: de.depositphotos.com/7495306/…
– user18356
Commented Dec 19, 2013 at 12:40
• I corrected my question: wrong:side => correct:edge
– user18356
Commented Dec 19, 2013 at 12:42

This seem to be a pretty well explained article on the subject:

At this point it's customary to explore the capabilities of 2PP in a variety of specific drawing problems. I want to keep the momentum and look at three point perspective, which allows you to construct a form in any orientation (from any viewpoint).

Three point perspective is often illustrated with aerial views of Manhattan, looking down on a skyline bristling with skyscrapers. But artists will find 3PP equally useful in still life or figure paintings — where the view downward onto a table of objects or a piece of furniture can be just as steep — and in landscape views up toward soaring cliffs or a stand of tall trees.

• Can you add a quick summary? Otherwise the answer will become useless if the link goes down. Commented Dec 18, 2013 at 11:22
• @user568458 Well yes, now i have to. Its just that the graphical methods are and their explanations are a bit involved (which is why you can not summarize a 100 paragraph explanation with 2 paragraphs that connect this to the methods of 2 point perspective). So I need to reserve 2 hours of my time to draft the explanation. Its still going to be considerably longer than you'd care to read. Commented Dec 19, 2013 at 12:08
• You don't need to duplicate the article (though, if you can summarise it and if you wanted to, that'd be great). You could maybe just mention the things it discusses (e.g. auxiliary lines) and maybe the most relevant of the diagrams, so that people know what they're clicking on and so they could google some of those terms if the link was to go down. Commented Dec 19, 2013 at 12:18
• @user568458 From going quickly through the article, the summary is that it's much more complicated than one would perhaps assume and involves a hefty amount of geometry
– J.E
Commented Sep 11, 2019 at 12:16

From what I remember, I've have always eyed my drawings whenever I use 3-point perspective. The key is to be sure you are properly aligned with your `vanishing points` and `horizon line`.

Here's a quick example.

How long A, B & C are will depend solely on how large you want the box to be. The angle of B & A must be aligned/pointed to the vanishing points of either side.

• That looks a lot like two point perspective. Three point perspective would have the 'vertical' sides converging at point 3. Commented Dec 18, 2013 at 18:04
• @AlexFeinman - You are correct, sir. Been too long. I've updated my image to reflect a 3 point, not a 2 point. Commented Dec 18, 2013 at 18:18
• I think that the question is more along the lines of "how do I calculate the exact intersections." Your example is sound but given that there are infinitely many angles from (1)(2)(3), which angle gives you the correct placement? Commented Dec 18, 2013 at 19:06

Shortly: You can find b and c and construct the wanted 2D perspective image by finding at first a 3D cube which has the given edge (=a) and the given vanishing points in its 3-point perspective image. With the 3D cube and by using sight lines from the station point to the vertices of the cube you construct in 3D the wanted 2D drawing.

The work starts by finding the used station point in front of the image plane. The given vanishing points of the wanted cube drawing define the placement of the station point in relative to the image plane.

With the station point and vanishing points you can find a 3D cube which has the given edge a in its image. It's not unique. You can select freely how far behind the image plane the cube is placed.

With that 3D cube you can construct the wanted drawing with 3D sight lines. The whole construction is possible in a 3D CAD program with no calculations.

The construction of the wanted drawing purely in 2D is beyond my knowledge, so it's skipped. With 2-point perspective the scaling is quite manageable in 2D with the well known measure point method, but that was not asked. The questioner also was not interested in pre-calculated special cases.

So, you have 3 vanishing points which should belong to a perspective drawing of an unknown cube. You know one edge (you called it a) in the drawing. You asked how to construct the whole drawing of a fitting cube. You didn't say is the side a already drawn on the image plane or is only its length given. I guess edge a is already drawn, it points to one of the vanishing points and you want to draw the rest of the cube.

It, of course, assumes that the perspective image is based on the common 3D radial projection method where lines of sight from the station point mark the details to the image plane. See the next example of the assumed 3D imaging method (=an 2D image of a 3D CAD model of the construction of an 2D image of a 3D cube):

The red lines are the sight lines to the visible vertices of the blue cube.

The actual image is drawn by connecting with dark lines the points where the sight lines punch the image plane. The straight on the face view of the perspective image is this

(sorry for the grid, I forgot to disable it from the program preferences. It pops up automatically in exact straight on the face views of planes)

If the vanishing points are given the placement of the station point and the orientation (=directions of the sides) of the cube become fully defined. That's because the vanishing points are the places where three lines drawn from the station point in parallel with the edges of the cube meet the image plane:

Every cube which in 3D have the same orientation in relative to the image plane would have in the image the same 3 vanishing points, no matter how much the cube was scaled or moved (without rotating) in the 3D half space which can be imaged to the same plane from the same station point.

The station point is the top point of a tetrahedron which is made of those three green lines and the triangle formed by the vanishing points. The proper placement exists if the triangle of the vanishing points has no angle bigger than 90 degrees.

The next image shows that knowing only the length of edge a and the vanishing points doesn't declare uniquely the image of the whole cube:

The blue cubes and the transparent red cubes have all the same orientation, so the vanishing points in the shown 2D drawing are the same. The blue 3D cubes have edge length = 24mm and the red 3D cubes have edge length = 32mm. The image of the bottom right red cube is as high as the images of the blue cubes which are substantially closer to the station point. But the apparently shorter edges of the bottom right cube in the drawing are substantially shorter than the drawn corresponding edges of the blue cubes. Thus knowing only the vanishing points and the length of one drawn edge leaves the case ambiguous . infinitely many cubes can fulfill the given conditions. => Let's assume that the edge a is given as drawn line which points towards one of the vanishing points.

Let's see what usable knowledge we can extract more by having the vanishing points and one edge (=a) drawn on the image plane, Already we have the place of the station point and the directions of the edges of thece cube in 3D space (not yet as calculated, we return to it later). In the next image we have the station point, the green perpendicular lines from the station point to the vanishing points and the red edge (=a) in the drawing. The rest of the drawing is still unknown except it must present a cube which has edges in parallel with the green lines:

If we draw the 3D sight lines (blue) through the endpoints of the known drawn edge we can decide that the actual edge of the cube must be placed somewhere behind the image plane between the sight lines. But it's still not known where:

The direction of the actual cube edge is clear. It must be parallel with the green line from the station point to vanishing point Vr.

A vigilant reader may now suspect that there's used one constraint too much. But no worry: The actual edge, the blue sight lines and the drawn edge must all be in the same plane. That's because as a vector the drawn edge a points towards vanishing point Vr.

In the next image a copy (=f) of the green line from the station point to Vr is placed in a random place between the sight lines, truncated to fit into the gap and colored to orange. Line segment f should be one acceptable actual edge of the 3D cube.

The 3D cube edges edges which correspond the wanted sides b and c can be constructed in 3D by placing the copies of the 2 remaining green lines at the right end of f and by truncating them to the length of f:

The rest of the edges of the 3D cube can be made by duplicating and moving the drawn 3 edges:

The drawn edge a was stolen from the drawing of the blue cube in the beginning of this story. How the new 3D cube is related with the blue cube? At least it cannot be the same because edge f was placed randomly between the 2 sight lines. Edge f has only the same image (=a). Answer: The new cube is in different distance from the station point. It's further than the blue cube, but by continuing the original red sight lines which end to the vertices of the blue cube we get the sight lines for the orange cube:

Because the sight lines for the orange cube punch the image plane at the same points as the red sight lines for the blue cube the cubes must have the same image.

Of course, the questioner didn't have any already drawn 3D cube, but he should construct one like the orange cube was constructed above. Then the wanted perspective drawing can be constructed in 3D as shown in the beginning of this story. Nothing is needed to actually drawn in 3D. With math one could handle all objects as formulas. My math skills are far below the needed level, so I drew things in a 3D CAD program.

The place of the station point

I promised to show that the vanishing points define where the station point must be placed in relative with the image plane. It needs only elementary math. Actually no calculations are needed if one draws it in a 3D CAD program. We'll see it later.

In the next image S is the unknown station point. It's at the top vertex of a tetrahedron. The base triangle of the tetrahedron contains the given vanishing points P, Q and R.

The side lengths k, m and n of the base triangle can be measured or calculated from coordinates because the vanishing points P, Q and R were exactly known.

The distances t, u and v between of the station point S and the vanishing points can be calculated with elementary geometry. Edges SP, SQ and SR must have same directions as the edges of the 3D cube. Thus triangles PQS, PRS and RQS are rectangular. The Pythagorean Theorem states the equation group E1 for the side lengths of the triangles. Simple algebraic shuffling gives the solved distances t, u and v in equation group E2.

The station point is the intersection point of three spheres which have centers P, Q and R and radiuses t, u and v. S can be found by drawing in a CAD program or by calculating its coordinates starting from the equations of the spheres.

Advanced CAD program can be forced to draw line segments PS, QS and RS by setting constraints for the lines. Unfortunately I don't have such software.

Quite complex geometric calculations give the height of the tetrahedron and the placement of the height vector on the image plane inside the triangle PQR. I skip that calculation.

One can also clip a piece of paper and bend it to the tetrahedron:

Only the rectangular lengths t, u and v must be measured and drawn to the paper. k, m and n are formed automatically to the right lengths by clipping.

The place of the station point without calculations

I claimed above that no calculations are needed, there's a way to find the place of the station point by drawing in a 3D CAD program. It's based on the next elementary geometry fact:

Angle PSQ must be 90 degrees if point S is on a circle and PQ is the diagonal of the same circle.

We apply this reversely. We draw 3 spheres which have diagonals PQ, PR and RQ. The station point S must be the intersection point of the surfaces of the three spheres.

We try this to our previous 3D image plane. Its vanishing points are connected now with line segments:

The CAD program allows 2-click drawing of the spheres with the wanted diagonals. To see the intersection I made the spheres transparent and colored them differently. Unfortunately it's not enough to show clearly where the surfaces of the spheres intersect:

But we can Boolean subtract 2 spheres from the third. It makes the intersection more visible:

The possible places of the station point are the sharp cusps. There's 2 of them in the remainder of the biggest sphere. The spheres were made transparent, so the remainder is also transparent.

In the next image the the original station is made visible again:

The station point could also be in the other cusp behind the image plane. That station point would have the opposite watching direction.

Use an isometric grid like this:

Each segment is one unit.

This isn't perfect for doing large objects since there won't be a vanishing point, but for small cubes and shapes it works well.

• The question is "How to construct a cube in 3-point perspective" though... not "How to construct an isometric cube" Commented Dec 18, 2013 at 0:17
• Fair enough. I was going by the image that OP posted. It looks isometric to me, and not 3-PP, so I thought I'd throw this out there. Commented Dec 19, 2013 at 16:37