Camera field of view, frame size at a distance and pixel size on the ground
Shooting parameters
Result
Preparing the calculation…Angles of view
Frame at distance
Detail
Equivalents
Diagram
Diagram not updated: the code did not return the required valuesWhere these formulas come from
The angle depends neither on sensor size nor on focal length alone, only on their ratio. That is why a full frame with 50 mm frames the same scene as a sensor half the size with a 25 mm lens.
Manufacturers quote the diagonal angle — it is the largest of the three and looks better on a spec sheet. To work out the area covered you need the horizontal and vertical ones.
Crop factor is how many times smaller the sensor diagonal is than the 35 mm film frame diagonal (43.27 mm). Multiply the focal length by it to get the equivalent focal length: the lens does not change, only the field of view does.
In photogrammetry the number that matters is GSD, the size of one pixel on the ground. Megapixels alone say nothing about detail without distance and focal length.
Where the model breaks down: wide lenses show noticeable distortion, a fisheye uses a completely different projection, and shooting close up (distance comparable to focal length) needs a magnification correction. The fisheye formula is in the code, commented out.
Python code of the calculation — editable
Everything above the marker is set by the form fields. Everything below is plain Python: edit the formulas and press Run — the result and the diagram will recalculate.