The second joint of the coupler. If joint_1 is a revolute or slider joint, this joint can also be a revolute or slider joint depending on the coupler type. If joint_1 is a cylindrical joint, then this joint is ignored. If the type is gear or rack and pinion, the joints must have a common link.
The constraint ratio between the joints. It determines how far joint_2 moves for a unit movement of joint_1. If ratio is defined, the contact point will be calculated for gear and rack/pinion couplers, otherwise, if the contact point is defined, the ratio will be calculated.
The smart point that defines the origin of the contact point between the joints. This is only used for gear and rack/pinion couplers currently. If defined, the ratio will be calculated, otherwise, the contact point will be calculated if the ratio is defined. See uf.so.h for creation of this object.
The orientation matrix that defines the orientation at the contact point between the two joints. This is only used for gear and rack/pinion couplers and is strictly optional. A default orientation matrix will be calculated if not defined. Use UF_CSYS_create_matrix for the creation of object.