FlightPlanLeg.WithVerticalConstraint
| Eigenschaft |
Wert |
| Modul |
FlightPlan |
| Klasse |
FlightPlanLeg |
| Typ |
Function |
| Sichtbarkeit |
Public |
| Datei |
FlightPlan/FlightPlanModels.vb |
Beschreibung
Erzeugt eine neue FlightPlanLeg-Instanz mit aktualisierten vertikalen Constraints (Hoehenbeschraenkung und Geschwindigkeitsbeschraenkung). Alle anderen Felder des urspruenglichen Legs bleiben unveraendert (immutable Copy-on-Write-Muster). Die Methode wird verwendet, um Hoehen- und Speed-Constraints an einzelnen Wegpunkten im Flugplan zu setzen oder zu aendern.
Signatur
Public Function WithVerticalConstraint(altConstraintType As String, altConstraint1 As Integer, altConstraint2 As Integer, speedConstraint As Integer) As FlightPlanLeg
Parameter
| Name |
Typ |
Beschreibung |
Standard |
| altConstraintType |
String |
Typ der Hoehenbeschraenkung: "+" (at or above), "-" (at or below), "@" (at), oder "" (keine) |
— |
| altConstraint1 |
Integer |
Primaere Hoehenbeschraenkung in Fuss; 0 = keine Beschraenkung |
— |
| altConstraint2 |
Integer |
Obere Grenze fuer Fenster-Constraints in Fuss; 0 = kein Fenster |
— |
| speedConstraint |
Integer |
Geschwindigkeitsbeschraenkung in Knoten; 0 = keine Beschraenkung |
— |
Rückgabewert
| Typ |
Beschreibung |
| FlightPlanLeg |
Neue FlightPlanLeg-Instanz mit den aktualisierten Constraint-Werten; alle uebrigen Felder sind unveraendert |
Ablaufdiagramm
flowchart TD
A[Start] --> B[Neues FlightPlanLeg mit allen bestehenden Feldern erstellen]
B --> C[speedConstraint, altConstraintType, altConstraint1, altConstraint2 durch neue Werte ersetzen]
C --> D[Neues FlightPlanLeg zurueckgeben]
Aufgerufen von
| Modul |
Sub/Function |
Kontext |
| FlightPlanModels |
FlightPlan.SetVerticalConstraint |
Aktualisiert den Constraint eines Legs am globalen Index |
| FlightPlanModelTests |
Test_SetVerticalConstraint_* |
Unit-Tests fuer Constraint-Aenderungen |
Ruft auf
| Modul |
Sub/Function |
Kontext |
| FlightPlanModels |
FlightPlanLeg.New |
Erzeugt die neue immutable Kopie mit allen Feldern |
Beispiel
' Bestehendes Leg mit neuem Hoehen- und Speed-Constraint versehen
Dim leg As New FlightPlanLeg("ROMEO", 48.5, 11.3, "TF", "", 180.0, 0.0, 0.0, 0.0, 25.0, 0.0, 0.0,
0, "", 0, 0, 0, False, 0, False, "", FlightPlanLegType.Normal)
' At-Constraint auf 5000 ft und Speed 250 kt setzen
Dim updated = leg.WithVerticalConstraint("@", 5000, 0, 250)
' updated.AltConstraintType = "@"
' updated.AltConstraint1 = 5000
' updated.SpeedConstraint = 250
' updated.WaypointIdent = "ROMEO" (unveraendert)
Änderungshistorie
| Version |
Datum |
Änderung |
| 1.0 |
2026-04-16 |
Erstdokumentation |