# Path Motion

Path Motion allows complex 3D paths to be specified using simple geometric elements (arcs and lines) in order to define the desired path. Path motion is useful for applications that need to move an end effector in 3D cartesian space on a machine with an arbitrary kinematic model.

This Path Motion feature is not the same as

*legacy*path motion (methods on the Multi Axis class)Pose | Fully defines 3D space location & orientation | Made of vector and quaternion | |

Vector | X, Y, Z or R, P, Y | Made of 3 Doubles | |

Quaternion | W, X, Y, Z | 4 Doubles | |

Lines are defined by an endpoint. The start point will either be the end point of the previously appended motion(For the first move it will be the current position).

Arcs are defined by a rotation direction, endpoint, and center
Alternatively, the can be defined by an endpoint and radius but must then only take place on a specified plane.

Currently, all arcs must take place on the XY, YZ, or XZ plane.

Lines and arcs can be programmed as either relative or aboslute.
Absolute moves will be relative to the origin point of your kinematic space. Relative moves will be relative to the start point(end point of previous move)

`CartesianRobot.PathLine(Pose(1000,1000,0));`

`CartesianRobot.PathArc(RSIRotationDirection.Clockwise,Pose(1000,1000,0),`

Vector`(0,1000,0));`

`CartesianRobot.PathArcXY(RSIRotationDirection.Clockwise,1000,1000,1000);`

Last modified 2mo ago