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) = { };
};