Isoline (FPScript)
Ermittelt eine oder mehrere Isolinien aus einer Datenmatrix oder Signalreihe.
Syntax
Isoline(DataSet, Level [ , Result = ISOLINE_2D ])
Die Syntax der Isoline-Funktion besteht aus folgenden Teilen:
Teil |
Beschreibung |
||||||
---|---|---|---|---|---|---|---|
DataSet |
Der Datensatz, für den die Isolinie berechnet werden soll. Erlaubte Datenstrukturen sind Datenmatrix und Signalreihe. Es sind alle numerischen Datentypen erlaubt. Ist das Argument eine Liste, dann wird die Funktion für jedes Element der Liste ausgeführt und das Ergebnis ist ebenfalls eine Liste. |
||||||
Level |
Gibt den Wert der Ebene an, für die die Isolinie berechnet werden soll. Erlaubte Datenstrukturen sind Einzelwert und Datenreihe. Es sind alle numerischen Datentypen erlaubt. Ist das Argument eine Liste, dann wird deren erstes Element entnommen. Ist dies wieder eine Liste, dann wird der Vorgang wiederholt. |
||||||
Result |
Bestimmt das Ergebnis der Funktion. Das Argument Result kann folgende Werte haben:
Ist das Argument eine Liste, dann wird deren erstes Element entnommen. Ist dies wieder eine Liste, dann wird der Vorgang wiederholt. Wenn das Argument nicht angegeben wird, wird es auf den Vorgabewert ISOLINE_2D gesetzt. |
Anmerkungen
Eine Isolinie wird durch den Schnitt der durch die Daten vorgegebenen Oberfläche und einer horizontalen Ebene gebildet. Das Ergebnis ist entweder ein Signal oder eine Raumkurve, abhängig vom Parameter Result. Wird für den Parameter Level eine Datenreihe angegeben, so werden mehrere Isolinien berechnet und als Liste zurückgegeben. Die Isolinie für eine bestimmte Ebene kann aus mehren, teils geschlossenen, Kurvenzügen bestehen. Diese werden dann im Ergebnis durch einen ungültigen Wert getrennt. Eine optimale Darstellung erhalten Sie, wenn Sie für den Kurvenzug des Diagramms die Option Ungültige Werte überbrücken abschalten.
Verfügbarkeit
FlexPro Basic, Professional, Developer Suite
Beispiele
Isoline(Surface, 100)
Gibt die Isolinie für die Ebene 100 als Signal zurück.
Isoline(Surface, 100, ISOLINE_3D)
Gibt die Isolinie für die Ebene 100 als Raumkurve zurück.
Dim Surface = {{0, 0, 0, 0}, {0, 1, 0, 0}, {0, 0, -1, 0}, {0, 0, 0, 0}}
Surface = Spline2D(Surface, 100, 100, SPLINE_EQUIDISTANT + SPLINE_1DERIVATIVE, -10, 10, -10, 10)
Isoline(Surface, Series(-2, 2, 0.5))
Die Auflösung der Isolinie entspricht der Auflösung der übergebenen Matrix. Wenn nur wenige Gitterpunkte vorliegen, sollte deshalb vorher interpoliert werden. Dieses Beispiel interpoliert die Matrix durch ein Gitter von Spline-Kurven und berechnet anschließend daraus Isolinien für vorgegebene Ebenen.
Die folgende Grafik zeigt das Ergebnis: