Class PrismaticJoint


  • public class PrismaticJoint
    extends Joint
    Prismatic joints.

    PrismaticJoint implements a prismatic joint for the displacement in the
    direction of the z-axis of an arbitrary displacement transform.
    • Constructor Detail

      • PrismaticJoint

        public PrismaticJoint​(long cPtr,
                              boolean cMemoryOwn)
      • PrismaticJoint

        public PrismaticJoint​(java.lang.String name,
                              Transform3Dd transform)
        Constructs PrismaticJoint

        Parameters:
        name - [in] Name of the joints
        transform - [in] Static transform of the joint
    • Method Detail

      • delete

        public void delete()
        Overrides:
        delete in class Joint
      • multiplyJointTransform

        public void multiplyJointTransform​(Transform3Dd parent,
                                           Q q,
                                           Transform3Dd result)
        Post-multiply the transform of the joint to the parent transform.

        The transform is calculated for the joint values of q.

        This method is equivalent to Frame::multiplyTransform except that is operates
        directly on a joint vector instead of a State.

        Parameters:
        parent - [in] The world transform of the parent frame.
        q - [in] Joint values for the joint
        result - [in] The transform of the frame in the world frame.
      • getJointTransform

        public Transform3Dd getJointTransform​(double q)
        The transform of the joint relative to its parent.

        The transform is calculated for the joint values of state.

        This method is equivalent to Frame::multiplyTransform except that is operates
        directly on a joint vector instead of a State.


        Parameters:
        q - [in] Joint values for the joint

        Returns:
        The transform of the frame relative to its displacement transform.
      • getTransform

        public Transform3Dd getTransform​(double q)
        The transform of the joint relative to its parent.

        The transform is calculated for the joint values of state.

        This method is equivalent to Frame::multiplyTransform except that is operates
        directly on a joint vector instead of a State.


        Parameters:
        q - [in] Joint values for the joint

        Returns:
        The transform of the frame relative to its parent transform.
      • getTransform

        public Transform3Dd getTransform​(State state)
        The transform of the frame relative to its parent.

        The transform is calculated for the joint values of state.

        The exact implementation of getTransform() depends on the type of
        frame. See for example RevoluteJoint and PrismaticJoint.

        Overrides:
        getTransform in class Frame
        Parameters:
        state - [in] Joint values for the forward kinematics tree.

        Returns:
        The transform of the frame relative to its parent.
      • getFixedTransform

        public Transform3Dd getFixedTransform()
        Description copied from class: Joint
        get the fixed transform from parent to this joint

        Notice that this does not include the actual rotation of the joint (its state)
        only its fixed transform.

        Overrides:
        getFixedTransform in class Joint
        Returns:
        fixed part of transform from paretn to joint
      • setFixedTransform

        public void setFixedTransform​(Transform3Dd t3d)
        Description copied from class: Joint
        change the transform from parent to joint base.
        Overrides:
        setFixedTransform in class Joint
        Parameters:
        t3d - [in] the new transform.
      • getJointTransform

        public Transform3Dd getJointTransform​(State state)
        Description copied from class: Joint
        get the isolated joint transformation which is purely dependent on
        q.
        Overrides:
        getJointTransform in class Joint
        Parameters:
        state - [in] the state from which to extract q
        Returns:
        the joint transformation
      • getJacobian

        public void getJacobian​(long row,
                                long col,
                                Transform3Dd joint,
                                Transform3Dd tcp,
                                State state,
                                Jacobian jacobian)
        Description copied from class: Joint
        Finds the Jacobian of the joints and adds it in jacobian.

        Calculates the Jacobian contribution to the device Jacobian when controlling a frame
        tcp and given a current joint pose joint.

        The values are stored from row row to row+5 and column col to
        col+(joint.getDOF()-1).

        Overrides:
        getJacobian in class Joint
        Parameters:
        row - [in] Row where values should be stored
        col - [in] Column where values should be stored
        joint - [in] Transform of the joint
        tcp - [in] Transformation of the point to control
        state -
        jacobian - [in] Jacobian to which to add the results.
      • removeJointMapping

        public void removeJointMapping()
        Description copied from class: Joint
        removes mapping of joint values
        Overrides:
        removeJointMapping in class Joint