auto_xyz_Sub¶
auto_xyz_Sub subtrahiert zwei 3D-Datensätze (Kennfelder).
- hDataNew = auto_xyz_Sub(hData, hData2)
- hDataNew = auto_xyz_Sub(hData_Layer, hData2)
- hDataNew = auto_xyz_Sub(hData_Layer, hData2, nSourceType)
Returnwert
hDataNew ist die Zugriffsnummer des neu erzeugten 3D-Datensatzes.
Parameter
- hData
hData ist die Zugriffsnummer (Handle) des Datensatzes auf den die Funktion angewendet werden soll. Der erzeugte Datensatz wird dem Diagramm zugefügt, in dem sich hData befindet.
- hData_Layer
hData_Layer ist ein Vektor von Zugriffsnummern. Das erste Element ist die Zugriffsnummer (Handle) des Datensatzes auf den die Funktion angewendet werden soll. Das zweite Element ist die Zugriffsnummer (Handle) des Diagramms, dem der neue Datensatz zugefügt werden soll.
- hData2
hData2 ist die Zugriffsnummer (Handle) eines weiteren 3D-Datensatzes.
- nSourceType
nSourceType ist einer der folgenden Werte:
Wert
Bedeutung
1
Berechnung über Stützstellen von Datensatz 1.
2
Berechnung über Stützstellen von Datensatz 2.
3
Berechnung über Interpolationsmatrix (Default)
Für den Wert 1 oder 2 werden für beide Datensätze die Z-Koordinaten an den entsprechenden x,y-Stützstellen berechnet und dann entsprechend verknüpft (addiert). Beim Typ 3 werden für beide Datensätze jeweils eine Matrix an den identischen Stützstellen berechnet und danach die beiden Matrizen verknüpft (addiert).
Wenn beide Kennfelder identische oder quasi identische Stützstellen haben, liefert die Funktion mit den Werten 1 oder 2 das genauere Ergebnis.
Kommentar
Die 3D-Datensätze können sowohl von einer Matrix als auch von beliebig verteilten X/Y/Z-Tripeln erzeugt worden sein. Der neue Datensatz wird wie folgt erzeugt:
Es wird der Überlappungsbereich der beiden Kennfelder in der x,y-Ebene bestimmt.
Innerhalb dieses Bereichs werden für beide Kennfelder neue Interpolationsmatrizen berechnet.
Die gewünschte Rechenoperation kann dann elementweise durchgeführt werden.
Von der Ergebnismatrix wird ein neuer Datensatz erzeugt. Die Kennfeldhülle wird vom 1. Datensatz verwendet.
Beispiel
hPage = auto_LoadTemplate("test.ipw")
ssFile1 = auto_ImportData(GetRootDirectory() + "samples/test1.xls")
hData1 = auto_LoadDataset("Diagram1", "EngSpd", "PME", "TOEL1");
ssFile2 = auto_ImportData(GetRootDirectory() + "samples/test2.xls")
hData2 = auto_LoadDataset("Diagram2", "EngSpd", "PME", "TOEL1");
hLayer = PageGetLayerHandle(hPage, "Diagram3");
hDataNew = auto_xyz_Sub([hData1, hLayer], hData2);
PageReplot(hPage);
id-385380