kernelv_ch_get_total_cs_offset

Prototyp

KERNELV_RETURN

 

kernelv_ch_get_total_cs_offset(unsigned long int chanIndex,
                                                           double *vector,
                                                           unsigned long int bufferSize,
                                                           unsigned long int *retBytes);

Beschreibung

Liefert die Verschiebung des Ursprungs des durch die Verkettung aller aktiven Koordinatensysteme entstandenen resultierenden Koordinatensystems zurück.

Es wird ein Vektor mit drei Elementen zurückgegeben, der die Verschiebung des Koordinatensystem-Ursprungs zum Ursprung des Basiskoordinatensystems 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 kein Koordinatensystem aktiv ist, wird ein Nullvektor zurückgegeben.

Parameter

Name

Typ

Bedeutung

chanIndex

unsigned long

Kanalindex des Kanals.

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.