public class RevoluteJoint extends HingeJoint
theta
is describes the clockwise rotation
instead of the counter-clockwise rotation.ModelComponent.NavpanelVisibility
myProps, THETA_IDX
DEFAULT_SHAFT_LENGTH, DEFAULT_SHAFT_RADIUS
debug, useOldDerivativeMethod
enforceUniqueCompositeNames, enforceUniqueNames, myNumber, NULL_OBJ, useCompactPathNames
COPY_REFERENCES, REST_POSITION
TG_ARTICULATED, TG_DRAGGER, TG_PRESERVE_ORIENTATION, TG_SIMULATING
TRANSPARENT, TWO_DIMENSIONAL
Constructor and Description |
---|
RevoluteJoint()
Creates a
RevoluteJoint which is not attached to any bodies. |
RevoluteJoint(ConnectableBody bodyA,
ConnectableBody bodyB,
RigidTransform3d TDW)
Creates a
RevoluteJoint connecting two connectable bodies, bodyA and bodyB . |
RevoluteJoint(ConnectableBody bodyA,
ConnectableBody bodyB,
RigidTransform3d TCW,
RigidTransform3d TDW)
Creates a
RevoluteJoint connecting two connectable bodies, bodyA and bodyB . |
RevoluteJoint(ConnectableBody bodyA,
RigidTransform3d TDW)
Creates a
RevoluteJoint connecting a single connectable body,
bodyA , to ground. |
RevoluteJoint(RigidBody bodyA,
ConnectableBody bodyB,
Point3d originD,
Vector3d zaxis)
Creates a
RevoluteJoint connecting two connectable bodies, bodyA and bodyB . |
RevoluteJoint(RigidBody bodyA,
RigidTransform3d TCA,
RigidBody bodyB,
RigidTransform3d TDB)
Creates a
RevoluteJoint connecting two rigid bodies, bodyA and bodyB . |
getAllPropertyInfo, getMaxTheta, getMinTheta, getTheta, getThetaRange, isThetaLocked, render, setMaxTheta, setMinTheta, setTheta, setThetaLocked, setThetaRange, setThetaRange, updateBounds
addCoordinateSolveBlocks, addCoordinateVelJacobian, applyCoordinateForce, coordinatesToTCD, getCoordinate, getCoordinateDeg, getCoordinateIndex, getCoordinateMotionType, getCoordinateName, getCoordinateRange, getCoordinateRangeDeg, getCoordinates, getCoordinateSpeed, getCoordinateValue, getMaxCoordinate, getMaxCoordinateDeg, getMinCoordinate, getMinCoordinateDeg, getPosition, getShaftLength, getShaftRadius, getStoredCoordinates, getStoredTCD, getStoredTCD, isCoordinateLocked, numCoordinates, setCoordinate, setCoordinateDeg, setCoordinateLocked, setCoordinateName, setCoordinateRange, setCoordinateRangeDeg, setCoordinates, setShaftLength, setShaftRadius
addBilateralConstraints, addFrictionConstraints, addMasterBlocks, addTransformableDependencies, addUnilateralConstraints, computeConstraintMatrixA, computeConstraintMatrixB, connectToHierarchy, copy, disconnectFromHierarchy, findAttachedBodies, getActivation, getAxisLength, getBilateralForceInA, getBilateralForceInA, getBilateralForceInB, getBilateralForceInB, getBilateralForceInC, getBilateralForceInC, getBilateralForces, getBilateralInfo, getBilateralSizes, getBodyA, getBodyB, getCompliance, getConstrainedComponents, getConstraint, getConstraintFlags, getConstraintForce, getCopyReferences, getCoupling, getCurrentTCD, getCurrentTCW, getCurrentTCW, getCurrentTDW, getCurrentTDW, getDamping, getDrawFrameC, getDrawFrameD, getFrameAttachmentA, getFrameAttachmentB, getFrictionForces, getFrictionState, getHardReferences, getLinearCompliance, getPenetrationTol, getPenetrationTolMode, getPose, getRenderFrame, getRotaryCompliance, getRotaryLimitTol, getRotaryLimitTolMode, getState, getStateVersion, getTransformDGeometryOnly, getTransformPositionOnly, getUnilateralForceInA, getUnilateralForceInA, getUnilateralForceInB, getUnilateralForceInB, getUnilateralForceInC, getUnilateralForceInC, getUnilateralForces, getUnilateralInfo, getUnilateralSizes, getUnilateralState, hasState, isActive, isConnectedToBodies, isDuplicatable, isEnabled, isNotAttached, maxFrictionConstraintSets, numBilateralConstraints, numConstraints, numEngagedUnilateralConstraints, numUnilateralConstraints, prerender, printConnectedBodies, printConstraintInfo, scaleDistance, scaleMass, setAlwaysAdjustBodyA, setAxisLength, setBilateralForces, setBodies, setBodies, setBodies, setBodies, setCompliance, setCurrentTCW, setCurrentTDW, setDamping, setDrawFrameC, setDrawFrameD, setEnabled, setFrictionForces, setFrictionState, setLinearCompliance, setPenetrationTol, setPenetrationTolMode, setRotaryCompliance, setRotaryLimitTol, setRotaryLimitTolMode, setState, setTransformDGeometryOnly, setTransformPositionOnly, setUnilateralForces, setUnilateralState, transformGeometry, transformGeometry, updateAttachments, updateConstraints, zeroForces
createRenderProps, defaultRenderPropsAreNull, getRenderHints, getRenderProps, getSelection, isSelectable, isVisible, numSelectionQueriesNeeded, setRenderProps, setVisible, updateRenderProps
checkFlag, checkName, checkNameUniqueness, clearFlag, clone, createTempFlag, getChildren, getGrandParent, getName, getNameRange, getNavpanelVisibility, getNavpanelVisibility, getNumber, getParent, getProperty, getSoftReferences, hasChildren, isFixed, isMarked, isScanning, isSelected, isWritable, makeValidName, makeValidName, notifyParentOfChange, postscan, printReferences, recursivelyContained, recursivelyContains, removeTempFlag, scan, setFixed, setFlag, setMarked, setName, setNavpanelVisibility, setNavpanelVisibility, setNumber, setParent, setScanning, setSelected, setWritable, updateReferences, write
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
copy, getCopyReferences, isDuplicatable
connectToHierarchy, disconnectFromHierarchy, getHardReferences, getName, getNavpanelVisibility, getNumber, getParent, getSoftReferences, hasState, isFixed, isMarked, isSelected, notifyParentOfChange, scan, setFixed, setMarked, setName, setNumber, setParent, setSelected, setWritable, updateReferences
getProperty
getChildren, hasChildren
postscan
isWritable, write
transformPriority
advanceState, getAuxVarDerivative, getAuxVarState, numAuxVars, requiresAdvance, setAuxVarState
public RevoluteJoint()
RevoluteJoint
which is not attached to any bodies.
It can subsequently be connected using one of the setBodies
methods.public RevoluteJoint(RigidBody bodyA, RigidTransform3d TCA, RigidBody bodyB, RigidTransform3d TDB)
RevoluteJoint
connecting two rigid bodies, bodyA
and bodyB
. If A and B describe the coordinate frames of
bodyA
and bodyB
, then TCA
and TDB
give
the (fixed) transforms from the joint's C and D frames to A and B,
respectively. Since C and D are specified independently, the joint
transform TCD may not necessarily be initialized to the identity.
Specifying bodyB
as null
will cause bodyA
to
be connected to ground, with TDB
then being the same as TDW
.
bodyA
- rigid body ATCA
- transform from joint frame C to body frame AbodyB
- rigid body B (or null
)TDB
- transform from joint frame D to body frame Bpublic RevoluteJoint(ConnectableBody bodyA, ConnectableBody bodyB, RigidTransform3d TCW, RigidTransform3d TDW)
RevoluteJoint
connecting two connectable bodies, bodyA
and bodyB
. The joint frames C and D are located
independently with respect to world coordinates by TCW
and TDW
.
Specifying bodyB
as null
will cause bodyA
to
be connected to ground.
bodyA
- body AbodyB
- body B (or null
)TCW
- initial transform from joint frame C to worldTDW
- initial transform from joint frame D to worldpublic RevoluteJoint(ConnectableBody bodyA, ConnectableBody bodyB, RigidTransform3d TDW)
RevoluteJoint
connecting two connectable bodies, bodyA
and bodyB
. The joint frames D and C are assumed to be
initially coincident, so that theta
will have an initial value of
0. D (and C) is located by TDW
, which gives the transform from D
to world coordinates.bodyA
- body AbodyB
- body BTDW
- initial transform from joint frames D and C to worldpublic RevoluteJoint(ConnectableBody bodyA, RigidTransform3d TDW)
RevoluteJoint
connecting a single connectable body,
bodyA
, to ground. The joint frames D and C are assumed to be
initially coincident, so that theta
will have an initial value of
0. D (and C) is located by TDW
, which gives the transform from D
to world coordinates.bodyA
- body ATDW
- initial transform from joint frames D and C to worldpublic RevoluteJoint(RigidBody bodyA, ConnectableBody bodyB, Point3d originD, Vector3d zaxis)
RevoluteJoint
connecting two connectable bodies, bodyA
and bodyB
. The joint frames D and C are assumed to be
initially coincident, so that theta
will have an initial value of
0. D (and C) is located (with respect to world) so that its origin is at
originD
and its z axis in the direction of zaxis
.
Specifying bodyB
as null
will cause bodyA
to
be connected to ground.
bodyA
- body AbodyB
- body B, or null
if bodyA
is connected
to ground.originD
- origin of frame D (world coordinates)zaxis
- direction of frame D's z axis (world coordinates)