libera_utils.footprint_matching.types.BoundingBox#
- class libera_utils.footprint_matching.types.BoundingBox(lat_min: float, lat_max: float, lon_min: float, lon_max: float, wraps_dateline: bool = False, is_polar: bool = False, truncated: bool = False)#
Bases:
NamedTupleGeographic bounding box for a footprint’s PSF contour.
An immutable, hashable seven-element tuple of (lat_min, lat_max, lon_min, lon_max, wraps_dateline, is_polar, truncated).
- Variables:
lat_min (float) – Lower latitude bound in degrees.
lat_min < lat_max.lat_max (float) – Upper latitude bound in degrees.
lon_min (float) – Lower longitude bound in degrees, always with
lon_min <= lon_max. A box that does not cross the antimeridian is in [-180, 180]. A box that crosses it is given in [0, 360), solon_max > 180(e.g.179.9to180.2); subtract 360 from the part above 180 to get signed longitudes. A box enclosing a pole spans the full-180to180.lon_max (float) – Upper longitude bound in degrees.
wraps_dateline (bool) – True when the box crosses the antimeridian, i.e. it is given in the [0, 360) form with
lon_max > 180. The reader base class queries both halves.is_polar (bool) – True when the box reaches 85° latitude or beyond, or encloses a pole (then latitude is pinned to +/-90 and longitude spans -180 to 180). Advisory: a lat/lon rectangle is only a coarse fit at such latitudes.
truncated (bool) – True when the box was clipped at the Earth’s limb because the footprint ran partly off the edge of the Earth at a severe viewing angle (see
geometry.compute_footprint_bounding_box). The footprint therefore has only partial coverage, and the orchestrator should set the corresponding QA flag.
- __init__()#
Methods
count(value, /)Return number of occurrences of value.
index(value[, start, stop])Return first index of value.
- _field_defaults = {'is_polar': False, 'truncated': False, 'wraps_dateline': False}#
- _fields = ('lat_min', 'lat_max', 'lon_min', 'lon_max', 'wraps_dateline', 'is_polar', 'truncated')#
- count(value, /)#
Return number of occurrences of value.
- index(value, start=0, stop=9223372036854775807, /)#
Return first index of value.
Raises ValueError if the value is not present.