kernelv_ch_get_cs_shift_vector()

Prototyp

KERNELV_RETURN

kernelv_ch_get_cs_shift_vector(unsigned long int chanIndex,
                                                    unsigned short csIndex,
                                                    double *vector,
                                                    unsigned long int bufferSize,
                                                    unsigned long int *retBytes);

Beschreibung

Liefert die Verschiebung des Ursprungs des durch den Parameter csIndex angegebenen Koordinatensystems zurück.

Es wird ein Vektor mit drei Elementen zurückgegeben, der die Verschiebung des Koordinatensystem-Ursprungs zum Ursprung des unterlagerten Koordinatensystems angibt.

Es wird der Verschiebungsvektor zurückgegeben, der z.B. durch die Parameter v1, v2, v3 des folgenden NC-Befehls erzeugt wird:

#CS DEF [CS1] [ <v1>,<v2>,<v3>,<ϕ1>,<ϕ2>,<ϕ3> ]

Falls an dem angegebenen Index im Koordinatensystems-Stack kein Koordinatensystem definiert ist, wird ein Nullvektor zurückgegeben und der Rückgabewert der  Funktion ist ERR_CNC_NO_DATA.

Parameter

Name

Typ

Bedeutung

chanIndex

unsigned long

Kanalindex des Kanals.

csIndex

unsigned short

Index des Koordinatensystems im Koordinatensystem-Stack.

vector

double*

Zeiger auf den Speicherplatz für den Verschiebungsvektor.

bufferSize

unsigned long

Länge des Speicherbereiches für die Rotationsmatrix muss mindestens 3 x sizeof(double) sein.

returnLength

unsigned long*

Zeiger auf den Wert in den die tatsächlich zurückgegebene Anzahl Bytes geschrieben werden soll.

Falls der übergebene Speicher zu klein für die Rückgabe des Wertes ist, wird der Rückgabewert ERR_CNC_RET_MEMORY zurückgegeben und es wird über diesen Parameter die benötigte Speichergröße zurückgegeben.

Rückgabewerte

Symbol

Wert

Bedeutung

RET_FINISHED

0

Die Funktion wurde fehlerfrei durchgeführt.

ERR_INVALID_CHAN

-1

Der übergebene Kanalindex ist größer als die Anzahl der konfigurierten Kanäle – 1

ERR_CNC_NOT_INIT

-3

Der Simulations-CNC-Kern ist noch nicht initialisiert.

ERR_CNC_RET_MEMORY

-4

Der oder die Rückgabewerte passen nicht in den bereitgestellten Speicher. In diesem Fall wird über returnLength die zur Rückgabe benötigte Mindestgröße zurückgegeben.

ERR_READ_ERR

-26

Beim Lesen von Daten aus der kernelv-DLL ist ein Fehler aufgetreten.

ERR_CNC_NO_DATA

-28

Die angeforderten Daten sind nicht verfügbar. An der durch den Aufrufparameter csIndex angegebenen Stelle im Koordinatensystem-Stack steht kein definiertes Koordinatensystem. Es wird ein Nullvektor zurückgegeben.

ERR_INVALID_PARAMETER

-30

Es wurde ein ungültiger Parameter übergeben:

Der in Parameter csIndex übergebene Koordinatensystemindex ist größer als der maximal mögliche Index im Koordinatensystem-Stack.