Perspective Lab
Move the station point, viewing distance, cone of vision, 90° legs and vanishing points. The construction and the box update together. Drag the sheet to pan, scroll to zoom.
How the pieces fit together
The sheet is a window, SP is your eye
Your line of sight hits the window at the centre of vision, CV. The distance from your eye to the window is D. For the paper method, fold the eye down onto the sheet and draw SP D below CV on the vertical through CV. Draw the plan on the same sheet, with the horizon as the window seen edge-on. A visual ray from SP to a plan corner crosses the horizon where that corner belongs in the drawing.
The horizon is your eye level
Every horizontal direction vanishes somewhere on this line. Raise your eye and the box moves down against the horizon. Lower your eye and the box moves up. SP, the cone and the VPs stay put.
The cone of vision is a check, not a construction
The eye sees comfortably within about 30° of the line of sight. On the sheet that is a circle around CV with radius D · tan(30°) ≈ 0.58 · D. Changing the cone changes nothing in the projection; it only changes how far from CV you allow yourself to draw before things look stretched to someone viewing the sheet from a normal distance. On paper it is how you find D: circle your composition, then D = r / tan(30°). The button under Advanced does exactly that.
The box corner sets the 90°
From SP draw two legs parallel to the box's two horizontal edge directions. Where they hit the horizon are VP1 and VP2. The legs are 90° apart because the box is rectangular. Turn the box and both legs swing together. One VP comes in, the other runs out. Use a different angle and you are drawing a prism with that corner angle.
One-point is two-point with the box turned square
At 0° one leg runs along the horizon and never meets it. That VP is at infinity, so those edges stay parallel to the horizon. The other leg points straight at CV, which is where the receding edges meet. Nothing else changes.
Three-point is a tilted line of sight
Sliding the horizon up or down the page only changes eye height. Tilt the line of sight instead and the window tilts with it: verticals converge to VP3 at D / tan(tilt) above or below CV, and the horizon moves to D · tan(tilt) on the other side of CV. The two horizontal VPs spread apart by 1 / cos(tilt), which is why the SP folded about the horizon now sits D / cos(tilt) below it.
Wide-angle and telephoto are just D
Small D puts SP close to the sheet. The VPs crowd in, the cone circle shrinks and convergence gets fast. That is the wide-angle look. Large D flattens convergence, grows the circle and sends the VPs off the sheet. That is the telephoto look. The front edge of the box stays the same size because it sits on the window.
A camera lens is D plus a frame
The focal length is D, scaled to the sheet; the sensor is the frame; the lens's diagonal angle of view is the cone, and the frame sits inscribed in it. A 60° cone is about a 37 mm lens on full frame. 50 mm gives 47°, 24 mm gives 84°, which is why a wide lens warps boxes near the frame edge: with 84° the VPs of a 45° box fall inside the circle.
Quick reference
Formulas for D, the cone, SP, the VPs and lenses
- Cone of vision radius on the sheet
r = D · tan(cone ÷ 2), so a 60° cone givesr ≈ 0.58 · D- Viewing distance from a chosen composition circle
D = r ÷ tan(30°) ≈ 1.73 · r- Station point
- On the vertical through CV,
Dbelow the horizon (D ÷ cos(tilt)when the line of sight is tilted) - Vanishing points of a box rotated θ
VP1 = D · cot(θ)andVP2 = −D · tan(θ)from CV along the horizon; at 45° both sit at±D- Three-point, line of sight tilted by φ
- Horizon moves to
−D · tan(φ), verticals meet atVP3 = D · cot(φ), horizontal VPs spread by1 ÷ cos(φ) - Camera lens
D = focal length × frame width ÷ sensor width; cone = diagonal angle of view2 · atan(sensor diagonal ÷ 2f); 60° ≈ 37 mm on full frame