public class CustomJoint extends JointBase
ModelComponent.FilePathSaveType, ModelComponent.NavpanelVisibility| Modifier and Type | Field and Description |
|---|---|
static int |
THETA_IDX |
static int |
X_IDX |
DEFAULT_SHAFT_LENGTH, DEFAULT_SHAFT_RADIUS, myPropsdebug, useOldDerivativeMethodenforceUniqueCompositeNames, enforceUniqueNames, myNumber, NULL_OBJ, useCompactPathNamesTG_ARTICULATED, TG_DRAGGER, TG_PRESERVE_ORIENTATION, TG_SIMULATINGTRANSPARENT, TWO_DIMENSIONAL| Constructor and Description |
|---|
CustomJoint()
Creates a
CustomJoint which is not attached to any
bodies. |
CustomJoint(ConnectableBody bodyA,
ConnectableBody bodyB,
RigidTransform3d TDW)
Creates a
CustomJoint connecting two connectable bodies,
bodyA and bodyB. |
| Modifier and Type | Method and Description |
|---|---|
RenderProps |
createRenderProps()
Factory method to create render properties appropriate to this object.
|
double |
getSlotDepth()
Returns the slot render depth.
|
double |
getTheta()
Queries this joint's theta value, in degrees.
|
double |
getX()
Queries this joint's x value.
|
DoubleInterval |
getXRange()
Queries the x range limits for this joint.
|
void |
render(Renderer renderer,
int flags)
Render this object using the functionality of the supplied
Renderer. |
void |
setSlotDepth(double d)
Sets the slot render depth.
|
void |
setTheta(double theta)
Sets this joint's theta value, in degrees.
|
void |
setX(double x)
Sets this joint's x value.
|
void |
setXRange(DoubleInterval range)
Sets the x range limits for this joint.
|
addCoordinateMobilities, addCoordinateSolveBlocks, addCoordinateVelJacobian, applyCoordinateForce, coordinatesToTCD, getAllPropertyInfo, getCoordinate, getCoordinateDeg, getCoordinateIndex, getCoordinateMotionType, getCoordinateName, getCoordinateRange, getCoordinateRangeDeg, getCoordinates, getCoordinateSpeed, getCoordinateValue, getCoordinateValueDeg, getMaxCoordinate, getMaxCoordinateDeg, getMinCoordinate, getMinCoordinateDeg, getPosition, getRangeLimitCompliance, getRangeLimitDamping, getRangeLimitForce, getShaftLength, getShaftRadius, getStoredCoordinates, getStoredTCD, getStoredTCD, isCoordinateLocked, numCoordinates, setCoordinate, setCoordinateDeg, setCoordinateLocked, setCoordinateName, setCoordinateRange, setCoordinateRangeDeg, setCoordinates, setRangeLimitCompliance, setShaftLength, setShaftRadiusaddBilateralConstraints, addBilateralConstraints, addFrictionConstraints, addMasterBlocks, addTransformableDependencies, addUnilateralConstraints, addUnilateralConstraints, computeConstraintMatrixA, computeConstraintMatrixB, connectToHierarchy, copy, disconnectFromHierarchy, findAttachedBodies, findConnectedBodies, 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, getOtherBody, 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, setBodyA, setBodyA, setBodyB, setBodyB, setCompliance, setCurrentTCW, setCurrentTDW, setDamping, setDrawFrameC, setDrawFrameD, setEnabled, setFrictionForces, setFrictionState, setLinearCompliance, setPenetrationTol, setPenetrationTolMode, setRotaryCompliance, setRotaryLimitTol, setRotaryLimitTolMode, setState, setTransformDGeometryOnly, setTransformPositionOnly, setUnilateralForces, setUnilateralState, transformGeometry, transformGeometry, updateAttachments, updateBounds, updateConstraints, withinLoop, zeroForcesdefaultRenderPropsAreNull, getRenderHints, getRenderProps, getSelection, isSelectable, numSelectionQueriesNeeded, setRenderPropscheckFlag, 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, writeequals, getClass, hashCode, notify, notifyAll, toString, wait, wait, waittransformPriorityadvanceState, getAuxVarDerivative, getAuxVarState, numAuxVars, requiresAdvance, setAuxVarStategetName, getNavpanelVisibility, getNumber, getParent, getSoftReferences, isFixed, isMarked, isSelected, notifyParentOfChange, scan, setFixed, setMarked, setName, setNumber, setParent, setSelected, setWritable, updateReferencesgetPropertygetChildren, hasChildrenpostscanisWritable, writepublic CustomJoint()
CustomJoint which is not attached to any
bodies. It can subsequently be connected using one of the setBodies methods.public CustomJoint(ConnectableBody bodyA, ConnectableBody bodyB, RigidTransform3d TDW)
CustomJoint connecting two connectable bodies,
bodyA and bodyB. The joint frames D and C are assumed to
be initially coincident, so that theta and x will have
initial values 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 double getSlotDepth()
public void setSlotDepth(double d)
d - slot render depthpublic double getTheta()
setTheta(double) for
more details.public void setTheta(double theta)
theta - new theta valuepublic double getX()
setX(double) for more details.public void setX(double x)
x - new x valuepublic DoubleInterval getXRange()
setXRange(DoubleInterval) for more details.public void setXRange(DoubleInterval range)
[-inf, inf], which implies no limits. If x travels beyond
these limits during dynamic simulation, unilateral constraints will be
activated to enforce them. Setting the lower limit to -inf or the
upper limit to inf removes the lower or upper limit,
respectively.range - x range limits for this jointpublic RenderProps createRenderProps()
HasRenderPropscreateRenderProps in interface HasRenderPropscreateRenderProps in class RenderableConstrainerBasepublic void render(Renderer renderer, int flags)
IsRenderableRenderer.render in interface IsRenderablerender in class BodyConnectorrenderer - provides the functionality used to perform the rendering.flags - flags that may be used to control different
aspects of the rendering. Flags are defined in Renderer
and currently include
Renderer.HIGHLIGHT and
Renderer.SORT_FACES.