Zum Inhalt

FlightPlan.WithInitialLegs

Eigenschaft Wert
Modul FlightPlan
Klasse FlightPlan
Typ Function
Sichtbarkeit Public
Datei FlightPlan/FlightPlanModels.vb

Beschreibung

Erzeugt einen neuen FlightPlan mit der initialen VB6-Leg-Struktur: ADEP-Leg im DepartureSegment, Discontinuity-Leg im EnRouteSegment, sowie ADES-Leg, END_OF_F_PLN und END_OF_ALTN_F_PLN im ArrivalSegment. Entspricht der VB6-Funktion FPLHandler.cls Initial_FPL_Setup (Zeilen 1594-1755). Approach- und MissedApproach-Segmente werden geleert, Holdings zurueckgesetzt.

Signatur

Public Function WithInitialLegs(adep As String, ades As String, adepLat As Double, adepLon As Double, adesLat As Double, adesLon As Double) As FlightPlan

Parameter

Name Typ Beschreibung Standard
adep String ICAO-Code des Abflughafens
ades String ICAO-Code des Zielflughafens
adepLat Double Breitengrad des Abflughafens in Dezimalgrad
adepLon Double Laengengrad des Abflughafens in Dezimalgrad
adesLat Double Breitengrad des Zielflughafens in Dezimalgrad
adesLon Double Laengengrad des Zielflughafens in Dezimalgrad

Rückgabewert

Typ Beschreibung
FlightPlan Neuer FlightPlan mit initialer Leg-Struktur (ADEP -> DISC -> ADES -> END-Markierungen)

Ablaufdiagramm

flowchart TD
    A[Start] --> B["ADEP-Leg erstellen (Typ=Adep, ArinC=IF)"]
    B --> C["Discontinuity-Leg erstellen (Typ=Discontinuity)"]
    C --> D["ADES-Leg erstellen (Typ=Ades)"]
    D --> E["END_OF_F_PLN-Leg erstellen"]
    E --> F["END_OF_ALTN_F_PLN-Leg erstellen"]
    F --> G["DepartureSegment = ADEP"]
    G --> H["EnRouteSegment = DISC"]
    H --> I["ArrivalSegment = ADES + END + END_ALTN"]
    I --> J[Neuen FlightPlan zurueckgeben]

Aufgerufen von

Modul Sub/Function Kontext
FlightPlanActor Receive(Of InitializeFlightPlan) Initialisiert den Flugplan nach ADEP/ADES-Eingabe

Ruft auf

Modul Sub/Function Kontext
FlightPlanModels FlightPlanLeg.New Erzeugt ADEP-, Discontinuity-, ADES- und END-Legs
FlightPlanModels DepartureSegment.New(IEnumerable) Erstellt Departure-Segment mit ADEP-Leg
FlightPlanModels EnRouteSegment.New(IEnumerable) Erstellt EnRoute-Segment mit Discontinuity-Leg
FlightPlanModels ArrivalSegment.New(IEnumerable) Erstellt Arrival-Segment mit ADES- und END-Legs
FlightPlanModels FlightPlan.New (privat) Erzeugt neue immutable FlightPlan-Instanz

Beispiel

Dim plan = FlightPlan.Empty().WithOriginDestination("EGLL", "KJFK")
Dim initialized = plan.WithInitialLegs("EGLL", "KJFK", 51.4775, -0.4614, 40.6413, -73.7781)
' initialized.DepartureSegment.Legs(0).WaypointIdent = "EGLL"
' initialized.EnRouteSegment.Legs(0).LegType = FlightPlanLegType.Discontinuity
' initialized.ArrivalSegment.Legs(0).WaypointIdent = "KJFK"
' initialized.ArrivalSegment.Legs(1).LegType = FlightPlanLegType.EndOfFlightPlan
' initialized.ArrivalSegment.Legs(2).LegType = FlightPlanLegType.EndOfAlternateFPln

Änderungshistorie

Version Datum Änderung
1.0 2026-04-16 Erstdokumentation