AMotorJointD
Wrapper node for the ODE joint type angular motor (amotor). See www.ode.org for detailed description of the underlying engine.
Inheritance
Code
XML encoding
<AMotorJointD mode='0' axisNum='3' axis1='1 0 0' axis2='0 1 0' axis3='0 0 1' axis1RelOrientation='0' axis2RelOrientation='0' axis3RelOrientation='0' torque1='0' torque2='0' torque3='0' loStop1='-1e20' loStop2='-1e20' loStop3='-1e20' hiStop1='1e20' hiStop2='1e20' hiStop3='1e20' vel1='0' vel2='0' vel3='0' fmax1='0' fmax2='0' fmax3='0' fudge1='1' fudge2='1' fudge3='1' bounce1='0' bounce2='0' bounce3='0' cfm1='1e-5' cfm2='1e-5' cfm3='1e-5' stopErp1='0.2' stopErp2='0.2' stopErp3='0.2' stopCfm1='0' stopCfm2='0' stopCfm3='0' logFeature='' />
Classic encoding
AMotorJointD { mode 0 axisNum 3 axis1 1 0 0 axis2 0 1 0 axis3 0 0 1 axis1RelOrientation 0 axis2RelOrientation 0 axis3RelOrientation 0 torque1 0 torque2 0 torque3 0 loStop1 -1e20 loStop2 -1e20 loStop3 -1e20 hiStop1 1e20 hiStop2 1e20 hiStop3 1e20 vel1 0 vel2 0 vel3 0 fmax1 0 fmax2 0 fmax3 0 fudge1 1 fudge2 1 fudge3 1 bounce1 0 bounce2 0 bounce3 0 cfm1 1e-5 cfm2 1e-5 cfm3 1e-5 stopErp1 0.2 stopErp2 0.2 stopErp3 0.2 stopCfm1 0 stopCfm2 0 stopCfm3 0 logFeature [""] }
Interface
Filter: X3D only | Avalon only | All
id | Name | DataType | PartType | Default | ValueType | Description |
---|---|---|---|---|---|---|
axis1 | SFVec3f | inputOutput | 1 0 0 | axis1 | ||
axis1RelOrientation | SFInt32 | inputOutput | 0 | [0, 2] | Reference frame of axis1 orientation. 0: The axis is anchored to the global frame. 1: The axis is anchored to the first body. 2: The axis is anchored to the second body. | |
axis2 | SFVec3f | inputOutput | 0 1 0 | axis2 | ||
axis2RelOrientation | SFInt32 | inputOutput | 0 | [0, 2] | Reference frame of axis2 orientation. 0: The axis is anchored to the global frame. 1: The axis is anchored to the first body. 2: The axis is anchored to the second body. | |
axis3 | SFVec3f | inputOutput | 0 0 1 | axis3 | ||
axis3RelOrientation | SFInt32 | inputOutput | 0 | [0, 2] | Reference frame of axis3 orientation. 0: The axis is anchored to the global frame. 1: The axis is anchored to the first body. 2: The axis is anchored to the second body. | |
axisNum | SFInt32 | inputOutput | 3 | [0, 3] | Number of axes used. | |
bodies | MFNode | initializeOnly | Node | the two bodies connected by this joint | ||
bounce1 | SFFloat | inputOutput | 0 | [0, 1] | bounciness for stops on axis1 | |
bounce2 | SFFloat | inputOutput | 0 | [0, 1] | bounciness for stops on axis1 | |
bounce3 | SFFloat | inputOutput | 0 | [0, 1] | bounciness for stops on axis1 | |
cfm1 | SFFloat | inputOutput | 1e-5 | (0, 1] | CFM (constraint force mixing) when not at a stop on axis1. See ODE docs for explanation of the CFM concept. | |
cfm2 | SFFloat | inputOutput | 1e-5 | (0, 1] | CFM (constraint force mixing) when not at a stop on axis2. See ODE docs for explanation of the CFM concept. | |
cfm3 | SFFloat | inputOutput | 1e-5 | (0, 1] | CFM (constraint force mixing) when not at a stop on axis3. See ODE docs for explanation of the CFM concept. | |
fmax1 | SFFloat | inputOutput | 0 | [0, inf) | maximum force applied to axis1 | |
fmax2 | SFFloat | inputOutput | 0 | [0, inf) | maximum force applied to axis2 | |
fmax3 | SFFloat | inputOutput | 0 | [0, inf) | maximum force applied to axis3 | |
force1Feedback | SFVec3f | outputOnly | returns the computed force applied to body1 on each simulation step | |||
force2Feedback | SFVec3f | inputOnly | returns the computed force applied to body2 on each simulation step | |||
fudge1 | SFFloat | inputOutput | 1 | [0, 1] | correction factor. If joint is "jumpy" at stops try to reduce this. | |
fudge2 | SFFloat | inputOutput | 1 | [0, 1] | correction factor. If joint is "jumpy" at stops try to reduce this [0,1]. | |
fudge3 | SFFloat | inputOutput | 1 | [0, 1] | correction factor. If joint is "jumpy" at stops try to reduce this. | |
hiStop1 | SFFloat | inputOutput | 1e20 | (-inf, inf) | high stop angle for axis1 | |
hiStop2 | SFFloat | inputOutput | 1e20 | (-inf, inf) | high stop angle for axis1 | |
hiStop3 | SFFloat | inputOutput | 1e20 | (-inf, inf) | high stop angle for axis1 | |
logFeature | MFString | inputOutput | state, child, parent, route, eventIn, eventOut | controls the logging of changes, state: log state changes (e.g. live), child: log child add/remove, parent: log parent add/remove, route: log route add/remove; eventIn: log receiving of events, eventOut: log sending of events: guiView, runtime system should create node-view, guiEdit: runtime system should create node-editeverything: log everything | ||
loStop1 | SFFloat | inputOutput | -1e20 | (-inf, inf) | lower stop angle for axis1 | |
loStop2 | SFFloat | inputOutput | -1e20 | (-inf, inf) | lower stop angle for axis2 | |
loStop3 | SFFloat | inputOutput | -1e20 | (-inf, inf) | lower stop angle for axis3 | |
metadata | SFNode | inputOutput | MetadataObject | container for payload metadata inside MetadataSet element | ||
mode | SFInt32 | inputOutput | 0 | [0, 1] | See documentation of ODE for details. 0: is user mode (axes and joint angle settings are entirely controlled by the user); 1: is euler mode (Euler angles are automatically computed. The axis a1 is also automatically computed. The AMotor axes must be set correctly when in this mode. When this mode is initially set the current relative orientations of the bodies will correspond to all euler angles at zero.). | |
stopCfm1 | SFFloat | inputOutput | 0 | (0, 1] | CFM (constraint force mixing) when at a stop on axis1. See ODE docs for explanation of the CFM concept. | |
stopCfm2 | SFFloat | inputOutput | 0 | (0, 1] | CFM (constraint force mixing) when at a stop on axis2. See ODE docs for explanation of the CFM concept. | |
stopCfm3 | SFFloat | inputOutput | 0 | (0, 1] | CFM (constraint force mixing) when at a stop on axis3. See ODE docs for explanation of the CFM concept. | |
stopErp1 | SFFloat | inputOutput | 0.2 | (0, 1] | ERP (error reduction parameter) for stops on axis1. See ODE docs for explanation of the ERP concept. | |
stopErp2 | SFFloat | inputOutput | 0.2 | (0, 1] | ERP (error reduction parameter) for stops on axis2. See ODE docs for explanation of the ERP concept. | |
stopErp3 | SFFloat | inputOutput | 0.2 | (0, 1] | ERP (error reduction parameter) for stops on axis3. See ODE docs for explanation of the ERP concept. | |
torque1 | SFFloat | inputOutput | 0 | (-inf, inf) | torque on axis1 | |
torque1Feedback | SFVec3f | outputOnly | returns the computed torque applied to body1 on each simulation step | |||
torque2 | SFFloat | inputOutput | 0 | (-inf, inf) | torque on axis2 | |
torque2Feedback | SFVec3f | outputOnly | returns the computed torque applied to body2 on each simulation step | |||
torque3 | SFFloat | inputOutput | 0 | (-inf, inf) | torque on axis3 | |
vel1 | SFFloat | inputOutput | 0 | (-inf, inf) | angular velocity on axis1 | |
vel2 | SFFloat | inputOutput | 0 | (-inf, inf) | angular velocity on axis2 | |
vel3 | SFFloat | inputOutput | 0 | (-inf, inf) | angular velocity on axis3 |