# Field of View Calculator

> Computes the horizontal, vertical and diagonal angles of view of a rectilinear lens from its focal length and the sensor dimensions, and the width and height of the scene covered at a given subject distance.

- Calculator id: `field-of-view` · Category: Photography & Optics (`photography`) · Tool name: `calculate_field_of_view`
- Canonical page: https://tttkmbb.com/photography/field-of-view · This document: https://tttkmbb.com/photography/field-of-view.md · JSON definition: https://tttkmbb.com/photography/field-of-view.json

## Purpose

Computes the horizontal, vertical and diagonal angles of view of a rectilinear lens from its focal length and the sensor dimensions, and the width and height of the scene covered at a given subject distance.

**Use when:** You need the angle of view of a lens on a specific sensor, or how wide a scene (in metres) a lens covers at a known distance.

**Do not use when:** You want the full-frame equivalent focal length (use crop-factor), or the lens is a fisheye, whose projection is not rectilinear.

## Input

| Parameter | Type | Unit | Required | Description |
| --- | --- | --- | --- | --- |
| `focal_length_mm` | number | mm | required | Actual (not equivalent) focal length of the lens in millimetres. (min 1, max 5000) |
| `sensor` | enum: full_frame \| aps_c \| aps_c_canon \| micro_four_thirds \| one_inch \| medium_format_44x33 \| smartphone_1_over_2_3 |  | optional, default "full_frame" | Sensor format preset providing the sensor width and height. |
| `sensor_width_mm` | number | mm | optional | Optional sensor width in mm; overrides the sensor preset. (> 0, max 200) |
| `sensor_height_mm` | number | mm | optional | Optional sensor height in mm; overrides the sensor preset. (> 0, max 200) |
| `subject_distance_m` | number | m | optional | Optional distance to the subject plane; when given, the covered frame width and height at that distance are returned. (> 0, max 100000) |

## Output

| Field | Type | Unit | Description |
| --- | --- | --- | --- |
| `horizontal_angle_degrees` | number | ° | 2·atan(sensor width / (2·f)). |
| `vertical_angle_degrees` | number | ° | 2·atan(sensor height / (2·f)). |
| `diagonal_angle_degrees` | number | ° | 2·atan(sensor diagonal / (2·f)); the figure lens makers usually quote. |
| `sensor_width_used_mm` | number | mm | Sensor width applied (preset or override). |
| `sensor_height_used_mm` | number | mm | Sensor height applied (preset or override). |
| `frame_width_m` | number | m | Scene width covered at subject_distance_m (only when given). |
| `frame_height_m` | number | m | Scene height covered at subject_distance_m (only when given). |
| `magnification` | number |  | Sensor width / frame width at the subject distance (only when given). |

## Formula

`angle = 2·atan(d / (2·focal_length_mm)) with d = sensor width, height or diagonal; frame_width_m = 2·subject_distance_m·tan(horizontal_angle / 2), frame_height_m likewise`

Rectilinear lens focused at infinity (thin-lens approximation); at close distances focus breathing and lens extension narrow the real angle slightly. Distance is measured from the lens' front nodal point, which is close to the sensor-plane distance for normal subjects.

## Data Sources

- Wikipedia – Angle of view (photography) — https://en.wikipedia.org/wiki/Angle_of_view_(photography) (reference, retrieved 2026-09-24)
- Cambridge in Colour – Digital camera sensor sizes — https://www.cambridgeincolour.com/tutorials/digital-camera-sensor-size.htm (reference, retrieved 2026-09-24)

Data freshness: `static`. Deterministic formula with fixed constants; results never go stale. Inputs supplied by the caller determine the output.

## API

- `GET https://tttkmbb.com/api/v1/calculate/field-of-view?focal_length_mm=…`
- `POST https://tttkmbb.com/api/v1/calculate/field-of-view` with JSON body `{"inputs": {…}}`
- Response: unified envelope (`success`, `request`, `result.values`, `result.units`, `sources`, `freshness`, `timestamp`, `next_actions`, `links`); see https://tttkmbb.com/docs/response-format.md
- Schema: https://tttkmbb.com/api/v1/calculators/field-of-view · OpenAPI operationId `calculate_field_of_view` in https://tttkmbb.com/openapi.json
- Authentication: none. Rate limit: fair use, see https://tttkmbb.com/docs/rate-limits.md.

## MCP

- Server: `https://tttkmbb.com/mcp` (Streamable HTTP, JSON-RPC 2.0, no auth)
- Tool:  `run_calculator` with `{"calculator_id": "field-of-view", "inputs": {…}}`

## Example

- 50 mm on full frame: inputs `{"focal_length_mm":50,"sensor":"full_frame"}` → `{"horizontal_angle_degrees":39.6,"vertical_angle_degrees":26.99,"diagonal_angle_degrees":46.79}`
- 200 mm on full frame, subject at 20 m: inputs `{"focal_length_mm":200,"sensor":"full_frame","subject_distance_m":20}` → `{"horizontal_angle_degrees":10.29,"vertical_angle_degrees":6.87,"frame_width_m":3.6,"frame_height_m":2.4}`

```
GET https://tttkmbb.com/api/v1/calculate/field-of-view?focal_length_mm=50&sensor=full_frame
```

## Limitations

You want the full-frame equivalent focal length (use crop-factor), or the lens is a fisheye, whose projection is not rectilinear. Rectilinear lens focused at infinity (thin-lens approximation); at close distances focus breathing and lens extension narrow the real angle slightly. Distance is measured from the lens' front nodal point, which is close to the sensor-plane distance for normal subjects. All values are computed from the formula above; no measurement or live data is involved.

## FAQ

**Why do lens makers quote a different angle?**

Manufacturers quote the diagonal angle of view for the sensor the lens is designed for. The horizontal angle is what most people mean by 'how wide', so all three are returned.

**How do I use this for a crop-sensor camera?**

Enter the lens' actual focal length and pick the sensor preset (APS-C, Micro Four Thirds ...); the smaller sensor narrows the angle, which is the same effect the crop factor describes.

## Related

- [Crop Factor Calculator](https://tttkmbb.com/photography/crop-factor.md) — Equivalent focal length that gives the same angle of view on full frame.
- [Depth of Field Calculator](https://tttkmbb.com/photography/depth-of-field.md) — How much of the covered scene is in focus.
- [Telescope Magnification Calculator](https://tttkmbb.com/photography/telescope-magnification.md) — True field of view of a telescope and eyepiece.
