Class ODEAngularMotor
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.ODEAngularMotor
- All Implemented Interfaces:
ODELinkAttachListener,ODELinkDetachListener,PoseChangeListener,EventListener
Wrapper for an angular motor joint in ODE4J. If one side of the motor 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
as well as its relation to the attached parts. If the simulation is NOT paused then the motor
will behave as normal.
The motor applies force on its local Z axis.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddTorque(double qty) voidfromJSON(org.json.JSONObject from) Deserialize this node and its children from a JSON object and its children.doubledoublevoidgetComponents(List<JPanel> list) Build a Swing Component that represents this Node.doublegetIcon()Set a custom icon for this node.org.ode4j.ode.DAMotorJointgetMotor()voidsetAngleMax(double angle) voidsetAngleMin(double angle) voidsetForceMax(double force) voidsetLocal(javax.vecmath.Matrix4d m) Set the local transform of this pose.org.json.JSONObjecttoJSON()Serialize this node and its children to a JSON object and its children.voidupdate(double dt) Called every frame.Methods inherited from class com.marginallyclever.ro3.node.nodes.odenode.ODEJoint
getPartA, getPartB, linkAttached, linkDetached, setPartA, setPartBMethods inherited from class com.marginallyclever.ro3.node.nodes.pose.Pose
addPoseChangeListener, getLocal, getParentPose, getPosition, getRotationEuler, getRotationIndex, getWorld, onPoseChange, removePoseChangeListener, setPosition, setRotationEuler, setRotationIndex, setWorldMethods 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
-
ODEAngularMotor
public ODEAngularMotor() -
ODEAngularMotor
-
-
Method Details
-
getComponents
Description copied from class:PoseBuild a Swing Component that represents this Node.- Overrides:
getComponentsin classODEJoint- Parameters:
list- the list to add components to.
-
getMotor
public org.ode4j.ode.DAMotorJoint getMotor() -
setLocal
-
update
-
toJSON
public org.json.JSONObject toJSON()Description copied from class:NodeSerialize 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:NodeDeserialize 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. -
getAngleMax
public double getAngleMax()- Returns:
- angle in degrees
-
getAngleMin
public double getAngleMin()- Returns:
- angle in degrees
-
setForceMax
public void setForceMax(double force) -
getForceMax
public double getForceMax() -
setAngleMax
public void setAngleMax(double angle) - Parameters:
angle- in degrees
-
setAngleMin
public void setAngleMin(double angle) - Parameters:
angle- in degrees
-
getIcon
-
addTorque
public void addTorque(double qty)
-