Zum Inhalt

FlightPlan.RemoveHoldingPattern

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

Beschreibung

Erzeugt einen neuen FlightPlan ohne das Holding-Pattern am angegebenen Leg-Index. Das Holding wird aus dem Holdings-Dictionary entfernt. Falls kein Holding an diesem Index existiert, hat der Aufruf keine Auswirkung. Alle anderen Felder bleiben unveraendert.

Signatur

Public Function RemoveHoldingPattern(legIndex As Integer) As FlightPlan

Parameter

Name Typ Beschreibung Standard
legIndex Integer Globaler 0-basierter Index des Legs, dessen Holding entfernt wird

Rückgabewert

Typ Beschreibung
FlightPlan Neuer FlightPlan ohne das Holding-Pattern am angegebenen Index

Ablaufdiagramm

flowchart TD
    A[Start] --> B[Holdings-Dictionary kopieren]
    B --> C[Eintrag am legIndex entfernen]
    C --> D[Neuen FlightPlan mit aktualisiertem Holdings-Dictionary erstellen]
    D --> E[Neuen FlightPlan zurueckgeben]

Aufgerufen von

Modul Sub/Function Kontext
FlightPlanActor Receive(Of RemoveHoldingPattern) Entfernt Holding ueber Actor-Message
McduActor MCDU-Eingabe Entfernt Holding ueber Hold-Page

Ruft auf

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

Beispiel

Dim holding As New HoldingPattern("WPT1", 49.0, 10.0, 270.0, "R", 1.5, 220)
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 withHold = plan.WithHoldingPattern(0, holding)

Dim removed = withHold.RemoveHoldingPattern(0)
' removed.Holdings.ContainsKey(0) = False

Änderungshistorie

Version Datum Änderung
1.0 2026-04-16 Erstdokumentation