public class SphericalJoint extends SphericalJointBase
setMaxRotation(double,double,double)
, or a maximum tilt, as described
for setMaxTilt(double)
.ModelComponent.NavpanelVisibility
Modifier and Type | Field and Description |
---|---|
static PropertyList |
myProps |
DEFAULT_JOINT_RADIUS
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 |
---|
SphericalJoint()
Creates a
SphericalJoint which is not attached to any bodies. |
SphericalJoint(ConnectableBody bodyA,
ConnectableBody bodyB,
Point3d originD)
Creates a
SphericalJoint connecting two connectable bodies,
bodyA and bodyB . |
SphericalJoint(ConnectableBody bodyA,
ConnectableBody bodyB,
RigidTransform3d TDW)
Creates a
SphericalJoint connecting two connectable bodies,
bodyA and bodyB . |
SphericalJoint(ConnectableBody bodyA,
ConnectableBody bodyB,
RigidTransform3d TCW,
RigidTransform3d TDW)
Creates a
SphericalJoint connecting two connectable bodies,
bodyA and bodyB . |
SphericalJoint(ConnectableBody bodyA,
Point3d originD)
Creates a
SphericalJoint connecting a single connectable body,
bodyA , to ground. |
SphericalJoint(ConnectableBody bodyA,
RigidTransform3d TDW)
Creates a
SphericalJoint connecting a single connectable body,
bodyA , to ground. |
SphericalJoint(RigidBody bodyA,
RigidTransform3d TCA,
RigidBody bodyB,
RigidTransform3d TDB)
Creates a
SphericalJoint connecting two rigid bodies, bodyA and bodyB . |
Modifier and Type | Method and Description |
---|---|
PropertyList |
getAllPropertyInfo()
Returns a list giving static information about all properties exported by
this object.
|
double |
getMaximumTilt() |
Vector3d |
getMaxRotation() |
double |
getMaxTilt() |
double |
getTilt() |
boolean |
isRotationLimited() |
boolean |
isTiltLimited() |
void |
setMaximumTilt(double max) |
void |
setMaxRotation(double max) |
void |
setMaxRotation(double maxx,
double maxy,
double maxz) |
void |
setMaxRotation(Vector3d maxRot) |
void |
setMaxTilt(double max) |
void |
setRotationLimited(boolean enable) |
void |
setTiltLimited(boolean enable) |
copy, getJointRadius, render, setJointRadius, 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, 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
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 static PropertyList myProps
public SphericalJoint()
SphericalJoint
which is not attached to any bodies. It
can subsequently be connected using one of the setBodies
methods.public SphericalJoint(RigidBody bodyA, RigidTransform3d TCA, RigidBody bodyB, RigidTransform3d TDB)
SphericalJoint
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 SphericalJoint(ConnectableBody bodyA, ConnectableBody bodyB, RigidTransform3d TCW, RigidTransform3d TDW)
SphericalJoint
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 SphericalJoint(ConnectableBody bodyA, ConnectableBody bodyB, RigidTransform3d TDW)
SphericalJoint
connecting two connectable bodies,
bodyA
and bodyB
. The joint frames D and C are assumed to
be initially coincident, with 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 SphericalJoint(ConnectableBody bodyA, RigidTransform3d TDW)
SphericalJoint
connecting a single connectable body,
bodyA
, to ground. The joint frames D and C are assumed to be
initially coincident, with 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 SphericalJoint(ConnectableBody bodyA, ConnectableBody bodyB, Point3d originD)
SphericalJoint
connecting two connectable bodies,
bodyA
and bodyB
. The joint frames D and C are assumed to
be initially coincident, with D (and C) is located (with respect to
world) so that its origin is at pointD
and its orientation is
aligned with the world.
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)public SphericalJoint(ConnectableBody bodyA, Point3d originD)
SphericalJoint
connecting a single connectable body,
bodyA
, to ground. The joint frames D and C are assumed to be
initially coincident, with D (and C) located (with respect to world)
so that its origin is at originD
and its orientation is aligned
with the world.bodyA
- body AoriginD
- origin of frame D (world coordinates)public PropertyList getAllPropertyInfo()
HasProperties
getAllPropertyInfo
in interface HasProperties
getAllPropertyInfo
in class SphericalJointBase
public boolean isTiltLimited()
public void setTiltLimited(boolean enable)
public double getTilt()
public void setMaximumTilt(double max)
public double getMaximumTilt()
public void setMaxTilt(double max)
public double getMaxTilt()
public boolean isRotationLimited()
public void setRotationLimited(boolean enable)
public void setMaxRotation(Vector3d maxRot)
public void setMaxRotation(double maxx, double maxy, double maxz)
public void setMaxRotation(double max)
public Vector3d getMaxRotation()