I can do traversing on a feature plane with a pose_trans. For example, if I want to move 5mm in X, 10mm in Y and 15mm in Z axis on a given plane, I can do this by
current_pos = get_actual_tcp_pose()
new_pos = pose_trans(current_pos, p[0.005, 0.010, 0.015, 0, 0, 0])
But if I do a pose_sub(new_pos, current_pos), the result is not p[0.005, 0.010, 0.015, 0, 0, 0]. I think this is because pose_sub gives the difference in base coordinates.
What function would I call to get the result in current_pos’s plane?
Got it for anyone interested.
pose_sub(pose_inv(current_pos), pose_inv(new_pos)) gives the answer as it is the subtraction of translation from tcp to base of the two points