Create New Marker Set from GaitFullBody

Hi Andy

Please try to add the script below in your environment file

I have tested the script on the model running it in InversDynamicAnalysis

it should add three contact forces between the plate and the right foot…

you will need to adjust the limits to get the correct timings on the forces…

Please note that since currently the pelvis is entirely carried these new contacts will only carry the weight of the legs…

Best regards
Søren

AnyFolder ConditionalContact={
AnyVar StaticFrictionCoefficient=0.8;
AnyVar Strength=2000;

  AnyFolder ToeLateralContactNodeLeft= {
    
    
    BaseObject ={AnyDrawRefFrame drw={};};
    AnyRefFrame &TargetObject=  ....HumanModel.BodyModel.Right.Leg.Seg.Foot.ToeLateralContactNode;//Location where the force is applied
    AnyRefFrame &BaseObject=..GlobalRef; //Object which delivers the forces  
    AnyRefFrame &StrengthObject=TargetObject; //Node used for strength measurement, occasionally this is different from the target object
    
    AnyFolder &DrawRef=Main.DrawSettings; //reference to the folder which contains drawsettings
    //low limit for the strength measure function, if the distance measured along Direction[0] is below this val. the strength will be zero (negative)
    AnyVar UserDefinedLimitLow=-0.1; 
    //high limit for the strength measure function, if the distance measured along Direction[0] is above this val. the strength will be zero
    AnyVar UserDefinedLimitHigh=0.1; 
    
    //high limit for the strength measure function, if the radius measured along the plane with Direction[0] as normal is above this val. the strength will be zero
    AnyVar UserDefinedRadiusLimit=1; 
    
    AnyVar Strength =.Strength;  //strength of muscles
    AnyVar StaticFrictionCoefficient=.StaticFrictionCoefficient; //Friction coefficient
    AnyVar ScaleFactor =1; //scale factor for draw vectors it can be set differently than by the drawsettings
    
    
    AnyIntArray Direction={1,0,2}; //first element gives normal direction
    #include  "..\..\..\Body\AAUHuman\ToolBox\FrictionContactMuscles\ContactSurfaceLinPush.any"
  };
  

  AnyFolder ToeMedialContactNodeLeft= {
    AnyRefFrame &TargetObject=  ....HumanModel.BodyModel.Right.Leg.Seg.Foot.ToeMedialContactNode;//Location where the force is applied
    AnyRefFrame &BaseObject=..GlobalRef; //Object which delivers the forces  
    AnyRefFrame &StrengthObject=TargetObject; //Node used for strength measurement, occasionally this is different from the target object
    
    AnyFolder &DrawRef=Main.DrawSettings; //reference to the folder which contains drawsettings
    //low limit for the strength measure function, if the distance measured along Direction[0] is below this val. the strength will be zero (negative)
    AnyVar UserDefinedLimitLow=-0.05; 
    //high limit for the strength measure function, if the distance measured along Direction[0] is above this val. the strength will be zero
    AnyVar UserDefinedLimitHigh=0.05; 
    
    //high limit for the strength measure function, if the radius measured along the plane with Direction[0] as normal is above this val. the strength will be zero
    AnyVar UserDefinedRadiusLimit=0.4; 
    
    AnyVar Strength =.Strength;  //strength of muscles
    AnyVar StaticFrictionCoefficient=.StaticFrictionCoefficient; //Friction coefficient
    AnyVar ScaleFactor =1; //scale factor for draw vectors it can be set differently than by the drawsettings
    
    
    AnyIntArray Direction={1,0,2}; //first element gives normal direction
    #include  "..\..\..\Body\AAUHuman\ToolBox\FrictionContactMuscles\ContactSurfaceLinPush.any"
    
  };
  
  
  AnyFolder HeelSupportLeft = {
    AnyRefFrame &TargetObject=  ....HumanModel.BodyModel.Right.Leg.Seg.Foot.HeelNode;//Location where the force is applied
    AnyRefFrame &BaseObject=..GlobalRef; //Object which delivers the forces  
    AnyRefFrame &StrengthObject=TargetObject; //Node used for strength measurement, occasionally this is different from the target object
    
    AnyFolder &DrawRef=Main.DrawSettings; //reference to the folder which contains drawsettings
    //low limit for the strength measure function, if the distance measured along Direction[0] is below this val. the strength will be zero (negative)
    AnyVar UserDefinedLimitLow=-0.05; 
    //high limit for the strength measure function, if the distance measured along Direction[0] is above this val. the strength will be zero
    AnyVar UserDefinedLimitHigh=0.05; 
    
    //high limit for the strength measure function, if the radius measured along the plane with Direction[0] as normal is above this val. the strength will be zero
    AnyVar UserDefinedRadiusLimit=0.4; 
    
    AnyVar Strength =.Strength;  //strength of muscles
    AnyVar StaticFrictionCoefficient=.StaticFrictionCoefficient; //Friction coefficient
    AnyVar ScaleFactor =1; //scale factor for draw vectors it can be set differently than by the drawsettings
    
    
    AnyIntArray Direction={1,0,2}; //first element gives normal direction
    #include  "..\..\..\Body\AAUHuman\ToolBox\FrictionContactMuscles\ContactSurfaceLinPush.any"
    
  };



};

Thank you very much, Søren.

I will try it.

Best regards
Andy