SatelliteCameraViewer.SatelliteCamera.CameraFOV module

CameraFOV.py

Field-of-view box (RA/Dec polygon)

class SatelliteCameraViewer.SatelliteCamera.CameraFOV.CameraFOV[source]

Bases: object

Methods

camera_fov_angular_width_height(camera, ...)

Compute: - Angular width and height of the camera FOV - Approximate solid angle (steradians) using a spherical polygon area

camera_fov_border_vectors(camera, attitude, ...)

Sample the full border of the camera sensor and return a list of 3D GCRS unit vectors representing the FOV boundary.

camera_fov_convex_hull(camera, attitude, ...)

Sample the border of the sensor and compute a convex hull on the sphere.

camera_fov_healpix_mask(camera, attitude, ...)

Return HEALPix pixel indices inside the camera FOV.

camera_fov_radec_box(camera, attitude, obs_time)

Compute RA/Dec for the four corners of the camera sensor.

camera_fov_solid_angle(camera, attitude, ...)

Compute the solid angle of the camera FOV in steradians using a robust 3D spherical polygon method.

classmethod camera_fov_angular_width_height(camera: CameraIntrinsics, attitude: CameraAttitude, obs_time: datetime)[source]

Compute: - Angular width and height of the camera FOV - Approximate solid angle (steradians) using a spherical polygon area

classmethod camera_fov_border_vectors(camera: CameraIntrinsics, attitude: CameraAttitude, obs_time: datetime, border_step=50)[source]

Sample the full border of the camera sensor and return a list of 3D GCRS unit vectors representing the FOV boundary.

border_step = number of samples per edge (higher for ultra-wide lenses)

classmethod camera_fov_convex_hull(camera: CameraIntrinsics, attitude: CameraAttitude, obs_time: datetime, border_step: int = 100)[source]

Sample the border of the sensor and compute a convex hull on the sphere. Returns: - hull_coords: SkyCoord of hull vertices (in order) - hull: ConvexHull object in 3D unit-vector space

classmethod camera_fov_healpix_mask(camera: CameraIntrinsics, attitude: CameraAttitude, obs_time: datetime, nside=64)[source]

Return HEALPix pixel indices inside the camera FOV. Uses 3D spherical polygon for robustness.

classmethod camera_fov_radec_box(camera: CameraIntrinsics, attitude: CameraAttitude, obs_time: datetime)[source]

Compute RA/Dec for the four corners of the camera sensor. Returns a dict with RA/Dec for each corner and a SkyCoord polygon.

classmethod camera_fov_solid_angle(camera: CameraIntrinsics, attitude: CameraAttitude, obs_time: datetime)[source]

Compute the solid angle of the camera FOV in steradians using a robust 3D spherical polygon method.

exception SatelliteCameraViewer.SatelliteCamera.CameraFOV.CameraFOVError[source]

Bases: Exception