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— theFlightPlanmodel and its.fplcodec.route— expand a route (idents, airways, DCT, lat/lon, SID/STAR tokens) against aNavDataSnapshotinto 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 anAircraftProfile.
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
.fplflight plans: import, export, and the bridge to aaerocontext_core::RouteBriefingRequest. - route
- Flight-plan route strings: tokenize, then expand against a
NavDataSnapshotinto an ordered point list.