int CKinematics::TransformActuatorstoCAD(double *Acts, double *x, double *y, double *z, double *a, double *b, double *c) { if (GeoTableValid) { // with GeoTable we must perform iterative inversion return InvertTransformCADtoActuators(Acts, x, y, z, a, b, c); } else { // with no GeoTable use simple linear method *x = Acts[0] / m_MotionParams.CountsPerInchX; *y = Acts[1] / m_MotionParams.CountsPerInchY; *z = Acts[2] / m_MotionParams.CountsPerInchZ; *a = Acts[3] / m_MotionParams.CountsPerInchA; *b = Acts[4] / m_MotionParams.CountsPerInchB; *c = Acts[5] / m_MotionParams.CountsPerInchC; return 0; } }
int CKinematics3Rod::TransformActuatorstoCAD(double *Acts, double *xr, double *yr, double *zr, double *ar, double *br, double *cr) { return InvertTransformCADtoActuators(Acts, xr, yr, zr, ar, br, cr); }