SetCartesianTransform
Sets a Cartesian transformation between the MCS and PCS.
Syntax
KsCommandStatus SetCartesianTransform(
int Index,
double TransX,
double TransY,
double TransZ,
double RotAngle1,
double RotAngle2,
double RotAngle3,
McExecutionMode ExecutionMode
);
Parameters
Index [in]: the index of an axis group. Indexes are zero based. Aliases affect this parameter. You can have up to 32 groups.
TransX [in]: X-component of translation vector.
TransY [in]: Y-component of translation vector.
TransZ [in]: Z-component of translation vector.
RotAngle1 [in]: Z-axis rotation angle component. Unit: degree.
RotAngle2 [in]: Y-axis rotation angle component. Unit: degree.
RotAngle3 [in]: X-axis rotation angle component. Unit: degree.
ExecutionMode [in]: defines the chronological sequence of the function. See the McExecutionMode type.
Remarks
- For the transform vector, KINGSTAR rotates first and then translates.
- Deselection of PCS can be done by an execution of this function with {TransX, TransY, TransZ, RotAngle1, RotAngle2, RotAngle3} = {0, 0, 0, 0, 0, 0} as translation and rotation input values.
- The system may support a neutral transformation. With activating the neutral transformation the axes are referenced in the MCS system again.
- More than one cartesian transformation can be applicable at the same time on the same group of axes.
Definition of the translation:
Example of the definition of the rotation:
The rotation is defined by a subsequent rotation around every coordinate direction beginning with the Z-direction.
Definition of the rotation:
Example: a rotation in the plane (2-dimensions)
SetCartesianTransform with { 50, 50, 0, 0, 0, 30 }:
Return value
Returns the KsCommandStatus structure.
Example
N/A
Requirements
RT | Win32 | |
---|---|---|
Minimum supported version | 4.1 | 4.1 |
Header | ksmotion.h | ksmotion.h |
Library | KsApi_Rtss.lib | KsApi.lib |
See also