Class XyzabcSolver
Support to two-way conversion between MC (machine coordinate) and NP (Normal and Point).
public class XyzabcSolver : IMachineKinematics
- Inheritance
-
XyzabcSolver
- Implements
- Inherited Members
- Extension Methods
Constructors
XyzabcSolver(IXyzabcChain)
Ctor.
public XyzabcSolver(IXyzabcChain srcDevice)
Parameters
srcDeviceIXyzabcChaintarget device
Methods
IsAxisAExisted()
public bool IsAxisAExisted()
Returns
IsAxisBExisted()
public bool IsAxisBExisted()
Returns
IsAxisCExisted()
public bool IsAxisCExisted()
Returns
McAbcToMat(Vec3d)
Converts machine ABC coordinates to a tilt matrix. the tilt matrix is the transformation matrix from table to attacher.
public Mat4d McAbcToMat(Vec3d mcAbc_rad)
Parameters
mcAbc_radVec3dThe machine ABC coordinates in radians
Returns
- Mat4d
The tilt matrix
McToMat(DVec3d)
Converts machine coordinates to an attacher matrix.
public Mat4d McToMat(DVec3d mc)
Parameters
mcDVec3d
Returns
- Mat4d
The attacher matrix
McToPn(DVec3d)
Machine coordinate to tool attacher Pn (Point and Normal). The Pn is from table buckle to tool attacher.
public DVec3d McToPn(DVec3d mc)
Parameters
mcDVec3d
Returns
- DVec3d
tool attacher Pn (Point and Normal)
OrientationToMcAbc(Mat4d, out Vec3d)
Converts a tilt matrix to machine ABC coordinates.
the tilt matrix is the transformation matrix from table to attacher.
the solution only fit the orientation part of the tiltMat.
public bool OrientationToMcAbc(Mat4d tiltMat, out Vec3d mcAbc_rad)
Parameters
tiltMatMat4dThe tilt matrix to convert
mcAbc_radVec3dOutput parameter that will contain the machine ABC coordinates in radians
Returns
- bool
Whether the conversion was successful
PnToMc(DVec3d, out DVec3d)
Tool attacher Pn (Point and Normal) to machine coordinate. The Pn is from table buckle to tool attacher.
public bool PnToMc(DVec3d np, out DVec3d mcXyzabc_rad)
Parameters
Returns
- bool
whether conversion succeeded
Rebuild()
Rebuild the solver. It should be called after the kinematic chain of Hi.Numerical.Xyzabc.XyzabcSolver.SrcDevice is modified.
public void Rebuild()
SetNp(DVec3d, out DVec3d)
Cutter location to machine coordinate.
public bool SetNp(DVec3d np, out DVec3d mc)
Parameters
Returns
- bool
true if solved