All Implemented Interfaces:
ODELinkAttachListener, ODELinkDetachListener, PoseChangeListener, EventListener

public class ODESlider extends ODEJoint

Wrapper for a slider joint in ODE4J. If one side of the hinge is null then it is attached to the world.

If the physics simulation is paused then then moving this Pose will adjust the position and orientation of the hinge, as well as it's relation to the attached parts. If the simulation is NOT paused then the hinge will behave as normal.

If partA and partB are connected then sliderjoint will allow relative linear motion along the specified axis.

If only one of the two parts is connected then the slider joint will allow the connected part to move freely along the specified axis while the other end remains fixed.

  • Constructor Details

    • ODESlider

      public ODESlider()
    • ODESlider

      public ODESlider(String name)
  • Method Details

    • getComponents

      public void getComponents(List<JPanel> list)
      Description copied from class: Pose
      Build a Swing Component that represents this Node.
      Overrides:
      getComponents in class ODEJoint
      Parameters:
      list - the list to add components to.
    • setLocal

      public void setLocal(javax.vecmath.Matrix4d m)
      Description copied from class: Pose
      Set the local transform of this pose. This is the best method to override if you want to capture changes to the local OR world transform.
      Overrides:
      setLocal in class Pose
      Parameters:
      m - the new local transform.
    • onPoseChange

      public void onPoseChange(Pose pose)
      Description copied from class: Pose
      Override this method to receive pose change events from the parent.
      Specified by:
      onPoseChange in interface PoseChangeListener
      Overrides:
      onPoseChange in class Pose
      Parameters:
      pose - the parent pose that has changed.
    • update

      public void update(double dt)
      Description copied from class: Node
      Called every frame.
      Overrides:
      update in class ODENode
      Parameters:
      dt - the time since the last frame.
    • toJSON

      public org.json.JSONObject toJSON()
      Description copied from class: Node
      Serialize this node and its children to a JSON object and its children. Classes that override this method should call super.toJSON() first, then add to the object returned.
      Overrides:
      toJSON in class ODEJoint
      Returns:
      the JSON object.
    • fromJSON

      public void fromJSON(org.json.JSONObject from)
      Description copied from class: Node
      Deserialize this node and its children from a JSON object and its children. Classes that override this method should call super.fromJSON(). When they do it will trigger the creation of child nodes. The child nodes will then call their own fromJSON() methods.
      Overrides:
      fromJSON in class ODEJoint
      Parameters:
      from - the JSON object to read from.
    • getDistanceMax

      public double getDistanceMax()
      Returns:
      distance. can be +infinity.
    • getDistanceMin

      public double getDistanceMin()
      Returns:
      distance. can be -infinity.
    • getDistance

      public double getDistance()
    • setDistanceMax

      public void setDistanceMax(double distance)
      Parameters:
      distance - can be +infinity.
    • setDistanceMin

      public void setDistanceMin(double distance)
      Parameters:
      distance - can be -infinity.
    • getIcon

      public Icon getIcon()
      Description copied from class: Node
      Set a custom icon for this node.
      Overrides:
      getIcon in class Pose
      Returns:
      the icon, or null if none.