Zum Inhalt

FlightPlan.WithHoldingPattern

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

Beschreibung

Erzeugt einen neuen FlightPlan mit einem Holding-Pattern am angegebenen Leg-Index (D-11). Das Holding wird im Holdings-Dictionary unter dem globalen Leg-Index gespeichert. Falls bereits ein Holding an diesem Index existiert, wird es ueberschrieben. Alle anderen Felder bleiben unveraendert.

Signatur

Public Function WithHoldingPattern(legIndex As Integer, holding As HoldingPattern) As FlightPlan

Parameter

Name Typ Beschreibung Standard
legIndex Integer Globaler 0-basierter Index des Legs, an dem das Holding gesetzt wird
holding HoldingPattern Das HoldingPattern-Objekt mit Fix, Inbound-Kurs, Drehrichtung, Zeit und Speed

Rückgabewert

Typ Beschreibung
FlightPlan Neuer FlightPlan mit dem hinzugefuegten Holding-Pattern

Ablaufdiagramm

flowchart TD
    A[Start] --> B[Holdings-Dictionary kopieren]
    B --> C["Holding am legIndex setzen/ueberschreiben"]
    C --> D[Neuen FlightPlan mit aktualisiertem Holdings-Dictionary erstellen]
    D --> E[Neuen FlightPlan zurueckgeben]

Aufgerufen von

Modul Sub/Function Kontext
FlightPlanActor Receive(Of SetHoldingPattern) Setzt Holding ueber Actor-Message
RecordingMapper FlightPlan-Rekonstruktion Replay einer aufgezeichneten Flugroute mit Holdings

Ruft auf

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

Beispiel

Dim plan = FlightPlan.Empty().WithEnRouteSegment(New EnRouteSegment({
    New FlightPlanLeg("WPT1", 49.0, 10.0, "TF", "", 90.0, 0.0, 0.0, 0.0, 50.0, 0.0, 0.0,
        0, "", 0, 0, 0, False, 0, False, "", FlightPlanLegType.Normal)
}))

Dim holding As New HoldingPattern("WPT1", 49.0, 10.0, 270.0, "R", 1.5, 220)
Dim updated = plan.WithHoldingPattern(0, holding)
' updated.Holdings.ContainsKey(0) = True
' updated.Holdings(0).InboundCourse = 270.0
' updated.Holdings(0).TurnDirection = "R"

Änderungshistorie

Version Datum Änderung
1.0 2026-04-16 Erstdokumentation