ImagingPath.halfFieldOfView

raytracing.ImagingPath.halfFieldOfView(self)

The half field of view is the maximum height visible before its chief ray is blocked by the field stop. A ray at that height is the principal ray, of “highest chief ray”.

Returns:

halfFieldOfView – maximum ray height that can still be visible at the image plane. It can be infinity if there is no field stop.

Return type:

float

Examples

>>> from raytracing import *
>>> path = ImagingPath() # define an imaging path
>>> path.objectHeight=6
>>> # use append() to add elements to the imaging path
>>> path.append(Space(d=20))
>>> path.append(Lens(f=20,diameter=5,label="f=20"))
>>> path.append(Space(d=30))
>>> path.append(Lens(f=10,diameter=10,label="f=10"))
>>> path.append(Space(d=10))
>>> print('field of view :', path.fieldOfView())
field of view : 6.666665124862807

Notes

Strategy: take ray at various heights from object and aim at center of pupil (chief ray from that point) until ray is blocked. It is possible to have finite diameter elements but still an infinite field of view and therefore no Field stop.