Zum Inhalt

FlightPlan.WithDepartureSegment

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

Beschreibung

Erzeugt einen neuen FlightPlan mit einem neuen DepartureSegment. Alle anderen Felder (ADEP/ADES, Prozedurnamen, uebrige Segmente, Holdings) bleiben unveraendert. Wird sowohl direkt vom FlightPlanActor als auch intern von InsertWaypoint, DeleteWaypoint und ReplaceLeg aufgerufen, wenn die Operation das Departure-Segment betrifft.

Signatur

Public Function WithDepartureSegment(segment As DepartureSegment) As FlightPlan

Parameter

Name Typ Beschreibung Standard
segment DepartureSegment Das neue DepartureSegment, das das bestehende ersetzt

Rückgabewert

Typ Beschreibung
FlightPlan Neuer FlightPlan mit dem uebergebenen DepartureSegment

Ablaufdiagramm

flowchart TD
    A[Start] --> B[Neuen FlightPlan mit uebergebenem segment erstellen]
    B --> C[Alle uebrigen Felder unveraendert uebernehmen]
    C --> D[Neuen FlightPlan zurueckgeben]

Aufgerufen von

Modul Sub/Function Kontext
FlightPlanActor Receive(Of SetDepartureSegment) Setzt das Departure-Segment ueber Actor-Message
FlightPlanModels FlightPlan.InsertWaypoint Einfuegen im Departure-Bereich
FlightPlanModels FlightPlan.DeleteWaypoint Loeschen im Departure-Bereich
FlightPlanModels FlightPlan.ReplaceLeg Leg-Ersatz im Departure-Bereich
TmpyActor SID-Auswahl Setzt neues Departure-Segment im TMPY-Plan
RecordingMapper FlightPlan-Rekonstruktion Replay einer aufgezeichneten Flugroute

Ruft auf

Modul Sub/Function Kontext
FlightPlanModels FlightPlan.New (privat) Erzeugt neue immutable FlightPlan-Instanz

Beispiel

Dim plan = FlightPlan.Empty().WithOriginDestination("EGLL", "LFPG")
Dim depLegs = {
    New FlightPlanLeg("EGLL", 51.47, -0.46, "IF", "", 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
        0, "", 0, 0, 0, False, 0, False, "", FlightPlanLegType.Adep)
}
Dim updated = plan.WithDepartureSegment(New DepartureSegment(depLegs))
' updated.DepartureSegment.Legs.Count = 1
' updated.Adep = "EGLL" (unveraendert)

Änderungshistorie

Version Datum Änderung
1.0 2026-04-16 Erstdokumentation