Class ODESlider
java.lang.Object
com.marginallyclever.ro3.node.Node
com.marginallyclever.ro3.node.nodes.pose.Pose
com.marginallyclever.ro3.node.nodes.odenode.ODENode
com.marginallyclever.ro3.node.nodes.odenode.ODEJoint
com.marginallyclever.ro3.node.nodes.odenode.ODESlider
- All Implemented Interfaces:
ODELinkAttachListener
,ODELinkDetachListener
,PoseChangeListener
,EventListener
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 Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
fromJSON
(org.json.JSONObject from) Deserialize this node and its children from a JSON object and its children.void
getComponents
(List<JPanel> list) Build a Swing Component that represents this Node.double
double
double
getIcon()
Set a custom icon for this node.void
onPoseChange
(Pose pose) Override this method to receive pose change events from the parent.void
setDistanceMax
(double distance) void
setDistanceMin
(double distance) void
setLocal
(javax.vecmath.Matrix4d m) Set the local transform of this pose.org.json.JSONObject
toJSON()
Serialize this node and its children to a JSON object and its children.void
update
(double dt) Called every frame.Methods inherited from class com.marginallyclever.ro3.node.nodes.odenode.ODEJoint
getPartA, getPartB, linkAttached, linkDetached, setPartA, setPartB
Methods inherited from class com.marginallyclever.ro3.node.nodes.pose.Pose
addPoseChangeListener, getLocal, getParentPose, getPosition, getRotationEuler, getRotationIndex, getWorld, removePoseChangeListener, setPosition, setRotationEuler, setRotationIndex, setWorld
Methods inherited from class com.marginallyclever.ro3.node.Node
addAttachListener, addChild, addChild, addDetachListener, addReadyListener, addRenameListener, findByPath, findChild, findChild, findFirstChild, findFirstSibling, findNodeByID, findParent, findParent, getAbsolutePath, getChildren, getName, getParent, getRootNode, getUniqueID, hasParent, isNameUsedBySibling, removeAttachListener, removeChild, removeDetachListener, removeReadyListener, removeRenameListener, setName, witnessProtection
-
Constructor Details
-
ODESlider
public ODESlider() -
ODESlider
-
-
Method Details
-
getComponents
Description copied from class:Pose
Build a Swing Component that represents this Node.- Overrides:
getComponents
in classODEJoint
- 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. -
onPoseChange
Description copied from class:Pose
Override this method to receive pose change events from the parent.- Specified by:
onPoseChange
in interfacePoseChangeListener
- Overrides:
onPoseChange
in classPose
- Parameters:
pose
- the parent pose that has changed.
-
update
public void update(double dt) Description copied from class:Node
Called every 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. -
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. -
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
Description copied from class:Node
Set a custom icon for this node.
-