Skip to main content

Crate aerocontext_planning

Crate aerocontext_planning 

Source
Expand description

Flight-route planning: the single engine that turns a route or a flight plan into usable geometry.

Every frontend — the aerocontext CLI, the MCP route_brief tool, a future GUI or iOS app — composes this crate rather than reimplementing any of it. The hub is the flightplan::FlightPlan domain model; Garmin .fpl is one codec (inside flightplan), not the privileged format, so other formats slot in beside it without touching planning logic.

The pieces:

  • flightplan — the FlightPlan model and its .fpl codec.
  • route — expand a route (idents, airways, DCT, lat/lon, SID/STAR tokens) against a NavDataSnapshot into ordered geometry.
  • corridor — a width-bounded corridor around a route, with leg-wise spatial association.
  • crosssection — the vertical profile (climb/cruise/descent, time en route, fuel) from an AircraftProfile.

This crate consumes the cycle-stamped snapshot that aerocontext-navdata produces; it never fetches or distributes data itself.

Re-exports§

pub use corridor::Corridor;
pub use corridor::CorridorError;
pub use crosssection::CrossSection;
pub use crosssection::CrossSectionError;
pub use crosssection::CrossSectionSample;
pub use crosssection::FlightPhase;
pub use flightplan::FlightPlan;
pub use flightplan::FplError;
pub use flightplan::PlanWaypoint;
pub use flightplan::WaypointType;
pub use route::ExpandedRoute;
pub use route::RouteError;
pub use route::RoutePoint;
pub use route::RouteToken;
pub use route::expand_str;

Modules§

corridor
Route corridors: a buffered polygon around a centerline, plus the leg-wise spatial predicates weather/TFR/NOTAM association uses.
crosssection
The route cross-section: the vertical profile along a flight plan — where it climbs, cruises, and descends, and the estimated time and altitude at each waypoint.
flightplan
Garmin FlightPlan v1 .fpl flight plans: import, export, and the bridge to a aerocontext_core::RouteBriefingRequest.
route
Flight-plan route strings: tokenize, then expand against a NavDataSnapshot into an ordered point list.