Zum Inhalt

FlightPlan.DeleteWaypoint

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

Beschreibung

Loescht das Leg am angegebenen globalen Index. Die Methode bestimmt anhand der Segment-Groessen, in welches Segment der Index faellt, und delegiert an die WithDeletedLeg-Methode des entsprechenden Segments. Gibt einen neuen FlightPlan ohne das entfernte Leg zurueck.

Signatur

Public Function DeleteWaypoint(legIndex As Integer) As FlightPlan

Parameter

Name Typ Beschreibung Standard
legIndex Integer Globaler 0-basierter Index des zu loeschenden Legs

Rückgabewert

Typ Beschreibung
FlightPlan Neuer FlightPlan ohne das entfernte Leg

Ablaufdiagramm

flowchart TD
    A[Start] --> B[Segment-Counts ermitteln: dep, enr, arr, app]
    B --> C{legIndex < depCount?}
    C -- Ja --> D[Aus DepartureSegment loeschen]
    C -- Nein --> E{legIndex < depCount + enrCount?}
    E -- Ja --> F[Aus EnRouteSegment loeschen]
    E -- Nein --> G{legIndex < dep+enr+arrCount?}
    G -- Ja --> H[Aus ArrivalSegment loeschen]
    G -- Nein --> I{legIndex < dep+enr+arr+appCount?}
    I -- Ja --> J[Aus ApproachSegment loeschen]
    I -- Nein --> K[Aus MissedApproachSegment loeschen]

Aufgerufen von

Modul Sub/Function Kontext
FlightPlanActor Receive(Of DeleteWaypoint) Loescht Waypoint ueber Actor-Message
TmpyActor Waypoint-Loeschung Loescht Waypoint im TMPY-Plan
TmpyActor SID-Neuaufbau Entfernt alte Discontinuity-Legs
McduActor MCDU-Eingabe Loescht Waypoint ueber MCDU-Interaktion

Ruft auf

Modul Sub/Function Kontext
FlightPlanModels DepartureSegment.WithDeletedLeg Loeschen im Departure-Bereich
FlightPlanModels EnRouteSegment.WithDeletedLeg Loeschen im EnRoute-Bereich
FlightPlanModels ArrivalSegment.WithDeletedLeg Loeschen im Arrival-Bereich
FlightPlanModels ApproachSegment.WithDeletedLeg Loeschen im Approach-Bereich
FlightPlanModels MissedApproachSegment.WithDeletedLeg Loeschen im MissedApproach-Bereich
FlightPlanModels FlightPlan.WithDepartureSegment Neuer FlightPlan mit aktualisiertem Segment
FlightPlanModels FlightPlan.WithEnRouteSegment Neuer FlightPlan mit aktualisiertem Segment
FlightPlanModels FlightPlan.WithArrivalSegment Neuer FlightPlan mit aktualisiertem Segment
FlightPlanModels FlightPlan.WithApproachSegment Neuer FlightPlan mit aktualisiertem Segment
FlightPlanModels FlightPlan.WithMissedApproachSegment Neuer FlightPlan mit aktualisiertem Segment

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),
    New FlightPlanLeg("WPT2", 49.5, 10.5, "TF", "", 90.0, 0.0, 0.0, 0.0, 30.0, 0.0, 0.0,
        0, "", 0, 0, 0, False, 0, False, "", FlightPlanLegType.Normal)
}))

Dim updated = plan.DeleteWaypoint(0)
' updated.GetAllLegs().Count = 1
' updated.GetAllLegs()(0).WaypointIdent = "WPT2"

Änderungshistorie

Version Datum Änderung
1.0 2026-04-16 Erstdokumentation