--- a +++ b/Tools/ModelUtilities/FrictionContactMuscles/ContactRot.any @@ -0,0 +1,31 @@ + + +AnyKinMeasureOrg Dist={ + AnyKinLinear Lin={ + AnyRefNode &Box =..BaseObject; + AnySeg &Hand = ..TargetObject; +}; +MeasureOrganizer ={.AxisNormalToSurfaceOfBaseObject}; + +}; + + +AnyKinRotational Rot={ + AnyRefNode &Box =.BaseObject; + AnySeg &Hand = .TargetObject; + Type=RotVector; +}; + +AnyRecruitedActuator ContactMuscle={ + AnyKinMeasureOrg RotX={ + AnyKinLinear &ref=..Rot; + MeasureOrganizer={..Direction}; + }; + AnyVar limit=0; + Strength = 1e-5*(1/(sqrt((.Dist.Pos[0]-limit)^2)+.Epsilon))^2; + Type = NonNegative; + SET_DEFAULT_ACTUATOR_VOLUME; + +}; + +