--- a +++ b/Application/Examples/THA-KneeBendDemo/Model/RightHandDrivers.any @@ -0,0 +1,138 @@ + + + // ************************************ + // Drivers for the right fingers + // ************************************ + + + //finger1 + AnyKinEqSimpleDriver CMC1Flexion={ + AnyRevoluteJoint &ref= ..HumanModel.Right.ShoulderArm.Seg.Hand.Finger1.Jnt.CMCFlexion; + DriverPos= {.JntPos.Right.Finger1.CMCFlexion}*pi/180; + DriverVel={0}; + }; + + AnyKinEqSimpleDriver CMC1Abduction={ + AnyRevoluteJoint &ref= ..HumanModel.Right.ShoulderArm.Seg.Hand.Finger1.Jnt.CMCAbduction; + DriverPos={.JntPos.Right.Finger1.CMCDeviation}*pi/180; + DriverVel={0}; + }; + + + + AnyKinEqSimpleDriver MCP1Flexion={ + + AnyRevoluteJoint &ref= ..HumanModel.Right.ShoulderArm.Seg.Hand.Finger1.Jnt.MCPFlexion; + DriverPos={.JntPos.Right.Finger1.MCPFlexion}*pi/180; + DriverVel={0}; + Reaction.Type={Off}; + }; + AnyKinEqSimpleDriver MCP1Abduction={ + + AnyRevoluteJoint &ref= ..HumanModel.Right.ShoulderArm.Seg.Hand.Finger1.Jnt.MCPAbduction; + DriverPos={.JntPos.Right.Finger1.MCPDeviation}*pi/180; + DriverVel={0}; + Reaction.Type={Off}; + }; + + AnyKinEqSimpleDriver DIP1={ + AnyRevoluteJoint &ref= ..HumanModel.Right.ShoulderArm.Seg.Hand.Finger1.Jnt.DIP; + DriverPos={.JntPos.Right.Finger1.DIPFlexion}*pi/180; + DriverVel={0}; + }; + + + // finger2 +// AnyKinEqSimpleDriver CMC2={ +// AnyUniversalJoint &ref= ..HumanModel.Right.ShoulderArm.Seg.Hand.Finger2.Jnt.CMC; +// DriverPos={0,0}; +// DriverVel={0,0}; +// }; + AnyKinEqSimpleDriver MCP2={ + AnyRevoluteJoint &ref= ..HumanModel.Right.ShoulderArm.Seg.Hand.Finger2.Jnt.MCP; + DriverPos={.JntPos.Right.Finger2.MCPFlexion}*pi/180; + DriverVel={0}; + }; + AnyKinEqSimpleDriver PIP2={ + AnyRevoluteJoint &ref= ..HumanModel.Right.ShoulderArm.Seg.Hand.Finger2.Jnt.PIP; + DriverPos={.JntPos.Right.Finger2.PIPFlexion}*pi/180; + DriverVel={0}; + }; + AnyKinEqSimpleDriver DIP2={ + AnyRevoluteJoint &ref= ..HumanModel.Right.ShoulderArm.Seg.Hand.Finger2.Jnt.DIP; + DriverPos={.JntPos.Right.Finger2.DIPFlexion}; + DriverVel={0}; + }; + + + + // finger3 +// AnyKinEqSimpleDriver CMC3={ +// AnyUniversalJoint &ref= ..HumanModel.Right.ShoulderArm.Seg.Hand.Finger3.Jnt.CMC; +// DriverPos={0,0}; +// DriverVel={0,0}; +// }; + AnyKinEqSimpleDriver MCP3={ + AnyRevoluteJoint &ref= ..HumanModel.Right.ShoulderArm.Seg.Hand.Finger3.Jnt.MCP; + DriverPos={.JntPos.Right.Finger3.MCPFlexion}*pi/180; + DriverVel={0}; + }; + AnyKinEqSimpleDriver PIP3={ + AnyRevoluteJoint &ref= ..HumanModel.Right.ShoulderArm.Seg.Hand.Finger3.Jnt.PIP; + DriverPos={.JntPos.Right.Finger3.PIPFlexion}*pi/180; + DriverVel={0}; + }; + AnyKinEqSimpleDriver DIP3={ + AnyRevoluteJoint &ref= ..HumanModel.Right.ShoulderArm.Seg.Hand.Finger3.Jnt.DIP; + DriverPos={.JntPos.Right.Finger3.DIPFlexion}*pi/180; + DriverVel={0}; + }; + + + //finger4 +// AnyKinEqSimpleDriver CMC4={ +// AnyUniversalJoint &ref= ..HumanModel.Right.ShoulderArm.Seg.Hand.Finger4.Jnt.CMC; +// DriverPos={0,0}*pi/180; +// DriverVel={0,0}; +// }; + AnyKinEqSimpleDriver MCP4={ + AnyRevoluteJoint &ref= ..HumanModel.Right.ShoulderArm.Seg.Hand.Finger4.Jnt.MCP; + DriverPos={.JntPos.Right.Finger4.MCPFlexion}*pi/180; + DriverVel={0}; + }; + AnyKinEqSimpleDriver PIP4={ + AnyRevoluteJoint &ref= ..HumanModel.Right.ShoulderArm.Seg.Hand.Finger4.Jnt.PIP; + DriverPos={.JntPos.Right.Finger4.PIPFlexion}*pi/180; + DriverVel={0}; + }; + AnyKinEqSimpleDriver DIP4={ + AnyRevoluteJoint &ref= ..HumanModel.Right.ShoulderArm.Seg.Hand.Finger4.Jnt.DIP; + DriverPos={.JntPos.Right.Finger4.DIPFlexion}*pi/180; + DriverVel={0}; + }; + + + // finger5 +// AnyKinEqSimpleDriver CMC5={ +// AnyUniversalJoint &ref= ..HumanModel.Right.ShoulderArm.Seg.Hand.Finger5.Jnt.CMC; +// DriverPos={0,0}; +// DriverVel={0,0}; +// }; + AnyKinEqSimpleDriver MCP5={ + AnyRevoluteJoint &ref= ..HumanModel.Right.ShoulderArm.Seg.Hand.Finger5.Jnt.MCP; + DriverPos={.JntPos.Right.Finger5.MCPFlexion}*pi/180; + DriverVel={0}; + }; + AnyKinEqSimpleDriver PIP5={ + AnyRevoluteJoint &ref= ..HumanModel.Right.ShoulderArm.Seg.Hand.Finger5.Jnt.PIP; + DriverPos={.JntPos.Right.Finger5.PIPFlexion}*pi/180; + DriverVel={0}; + }; + AnyKinEqSimpleDriver DIP5={ + AnyRevoluteJoint &ref= ..HumanModel.Right.ShoulderArm.Seg.Hand.Finger5.Jnt.DIP; + DriverPos={.JntPos.Right.Finger5.DIPFlexion}*pi/180; + DriverVel={0}; + }; + + + \ No newline at end of file