Zum Inhalt

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