[770c98]: / Tools / GRFPrediction / GRF_example.any

Download this file

100 lines (77 with data), 2.9 kB

////**************************** CONDITIONAL CONTACTS ****************************//// 
 /*
   Class template: FootPlateConditionalContact 
 
   Class arguments:
   ----------
   PLATE_BASE_FRAME:
           Is a AnyRefFrame object where the ground planes is attached.
   NORMAL_DIRECTION:
           Defines the normal direction of the ground plane 
           the in PLATE_BASE_FRAME coordinate system.
   NODES_BASE_FOLDER :
           The folder where all contact nodes are located below.
           contact nodes must be AnyRefNodes named must be named Node#
           where # is a number. Eg. Node1 ...Node24
   NUMBER_OF_NODES: 
           The number of contact nodes to expect within NODE_BASE_FRAME
   SHOW_TRIGGER_VOLUME:
           Debug option to visualize the volume where contacts may be 
           triggered.
   
   Optional initialization:
   ------------------------
   Settings
    .LimitDistLow                : 
    .LimitDistHigh               :
    .LimitVelHigh                :
    .Radius                      :
    .Strength                    :
    .FrictionCoefficient         :
    .ScaleFactor                 :
    .ForceVectorDrawScaleFactor  :
   
    
    
  FootPlateConditionalContact <Object_name>(
       NORMAL_DIRECTION     = "<X|Y|*Z>", 
       NUMBER_OF_NODES      = [*1..200],
       NODES_BASE_FOLDER    = <AnyFolder> ,
       PLATE_BASE_FRAME     = <AnyRefFrame>,
       SHOW_TRIGGER_VOLUME = [*0|1] ) =
  {
    Settings =
    {
      [ LimitDistLow = -0.10;               ]   
      [ LimitDistHigh = 0.04;               ]
      [ LimitVelHigh = 0.8;                 ]
      [ GroundVelocity = {0.0, 0.0, 0.0};   ]
      [ Radius = 10;                        ]
      [ Strength = 200;                     ]
      [ FrictionCoefficient = 0.5;          ]
      [ ScaleFactor = 1;                    ]
      [ ForceVectorDrawScaleFactor = 0.0005;] 
    };
    
    CreateFootContactNodes25 FootNodes(foot_ref = Main.HumanModel.BodyModel.Right.Leg.Seg.Foot) = {  };
  };    
    
    
*/


  FootPlateConditionalContact GRF_Prediction_Right(
    PLATE_BASE_FRAME = Main.EnvironmentModel.GlobalRef,
    NORMAL_DIRECTION = "Y",
    NODES_FOLDER = FootNodes,
    NUMBER_OF_NODES = 25 
  ) =
  {
    CreateFootContactNodes25 FootNodes(foot_ref = 
        Main.Studies.HumanModel.BodyModel.Right.Leg.Seg.Foot) = { };
  };
  
  
  
  
  

  FootPlateConditionalContact GRF_Prediction_Left(
    PLATE_BASE_FRAME = Main.EnvironmentModel.GlobalRef,
    NORMAL_DIRECTION = "Y",
    NODES_FOLDER = FootNodes,
    NUMBER_OF_NODES = 25 
  ) =
  {
    Settings =
    {
      LimitDistLow = -0.10; 
      LimitDistHigh = 0.04;
    };
    
    CreateFootContactNodes25 FootNodes(foot_ref = 
        Main.Studies.HumanModel.BodyModel.Left.Leg.Seg.Foot) = { };
  };