WeightSlice.GetValue
| Eigenschaft |
Wert |
| Modul |
Trajectory |
| Klasse |
PerfGrid (innere Klasse von Perf1Engine) |
| Typ |
Function |
| Sichtbarkeit |
Public |
| Datei |
Trajectory/Perf1Engine.vb |
Beschreibung
Gibt den Performance-Wert an der angegebenen Gitterposition (IAS-Index, ALT-Index) zurück. Bei ungültigen oder außerhalb des Arrays liegenden Indizes wird der MISSING-Sentinel (-99999) zurückgegeben. Diese Funktion ist der zentrale Zugriffspunkt für die trilineare Interpolation in der Perf1Engine und wird von den FindIasRow- und GetGridValue-Hilfsfunktionen intensiv genutzt.
Signatur
Public Function GetValue(iasIdx As Integer, altIdx As Integer) As Double
Parameter
| Name |
Typ |
Beschreibung |
Standard |
| iasIdx |
Integer |
Zeilenindex in der IAS-Achse des Gitters (0-basiert) |
— |
| altIdx |
Integer |
Spaltenindex in der ALT-Achse des Gitters (0-basiert) |
— |
Rückgabewert
| Typ |
Beschreibung |
| Double |
Performance-Wert (VS in ft/min oder FF in kg/h) an der Gitterposition, oder -99999.0 (MISSING) bei ungültigen Indizes |
Ablaufdiagramm
flowchart TD
A[Start GetValue] --> B{iasIdx < 0 ODER altIdx < 0?}
B -- Ja --> C[Return MISSING = -99999]
B -- Nein --> D{iasIdx > UpperBound0 ODER altIdx > UpperBound1?}
D -- Ja --> C
D -- Nein --> E["Return Values(iasIdx, altIdx)"]
E --> F[Ende]
C --> F
Aufgerufen von
| Modul |
Sub/Function |
Kontext |
| Trajectory/Perf1Engine |
FindIasRow |
Prüft ob eine IAS-Zeile einen gültigen (nicht-MISSING) Wert für einen gegebenen ALT-Index hat |
| Trajectory/Perf1Engine |
GetGridValue |
Wrapper-Funktion für den direkten Gitterzugriff während der Interpolation |
| Tests/Perf1EngineTests |
Diverse Testmethoden |
Verifizierung der eingefügten Werte nach InsertPoint |
Ruft auf
| Modul |
Sub/Function |
Kontext |
| — |
— |
Keine weiteren Aufrufe — reine Daten-Zugriffsfunktion |
Beispiel
Dim page As New Perf1Engine.PerfGrid(55000.0)
' Datenpunkte einfügen
page.InsertPoint(270, 20000, 744)
page.InsertPoint(270, 35000, 328)
' Gültigen Wert abrufen
Dim vs As Double = page.GetValue(0, 0) ' = 744.0 (270 kt / 20000 ft)
' Ungültigen Index abfragen
Dim missing As Double = page.GetValue(-1, 0) ' = -99999.0 (MISSING)
Dim outOfRange As Double = page.GetValue(99, 0) ' = -99999.0 (MISSING)
Änderungshistorie
| Version |
Datum |
Änderung |
| 1.0 |
2026-04-16 |
Erstdokumentation |