types
The types module defines the core data structures used throughout the library. These are all plain Python dataclasses.
TrackPoint
A single point along the propagated ground track. The pipeline produces a list of these from the SGP4 propagation step.
@dataclass
class TrackPoint:
time: datetime
lat: float
lon: float
altitude_km: float | None = None
GeoBox
A geographic bounding box defined by latitude and longitude bounds. The box_id property returns a zero-padded string identifier like "box_006".
@dataclass
class GeoBox:
lat_min: float
lat_max: float
lon_min: float
lon_max: float
box_index: int
BoxWindow
The full spatial and temporal descriptor for one download box. Combines a GeoBox with the time window and track index range for that segment.
@dataclass
class BoxWindow:
box: GeoBox
t_enter: datetime # when the object entered the box
t_exit: datetime # when the object exited the box
t_download_start: datetime # t_enter minus pre-padding
t_download_end: datetime # t_exit plus post-padding
first_track_index: int
last_track_index: int
n_points: int
TrackSegment
Precomputed great-circle arc geometry for one segment between two consecutive track points. Used internally by the geodesy module for efficient cross-track distance calculations. All angular values are in radians.