342 lines (282 with data), 18.5 kB
/// Support conditions between the seat and the human body
AnyFolder SeatSupport = {
AnyVar Strength=....Parameters.SupportSettings.LowerbodySupportStrength;
AnyVar StaticFrictionCoefficient=....Parameters.SupportSettings.StaticFrictionSeat;
AnyFolder &Pelvis =...BodyModel.Trunk.SegmentsLumbar.PelvisSeg;
Pelvis = {
AnyRefNode Seat_contact1R={
sRel=.Seat_contactR.sRel+{0.085,0.01,0};
AnyDrawNode drw={ScaleXYZ=0.005*{1,1,1};RGB={0,0,1};};
};
AnyRefNode Seat_contact1L={
sRel=.Seat_contactL.sRel+{0.085,0.01,0};
AnyDrawNode drw={ScaleXYZ=0.005*{1,1,1};RGB={0,0,1};};
};
AnyRefNode Seat_contact2R={
sRel=.Seat_contactR.sRel+{0.065,0.005,0};
AnyDrawNode drw={ScaleXYZ=0.005*{1,1,1};RGB={0,0,1};};
};
AnyRefNode Seat_contact2L={
sRel=.Seat_contactL.sRel+{0.065,0.005,0};
AnyDrawNode drw={ScaleXYZ=0.005*{1,1,1};RGB={0,0,1};};
};
AnyRefNode Seat_contact3R={
sRel=.Seat_contactR.sRel+{0.025,0,0};
AnyDrawNode drw={ScaleXYZ=0.005*{1,1,1};RGB={0,0,1};};
};
AnyRefNode Seat_contact3L={
sRel=.Seat_contactL.sRel+{0.025,0,0};
AnyDrawNode drw={ScaleXYZ=0.005*{1,1,1};RGB={0,0,1};};
};
AnyRefNode Seat_contact4R={
sRel=.Seat_contactR.sRel+{-0.015,0.01,0};
AnyDrawNode drw={ScaleXYZ=0.005*{1,1,1};RGB={0,0,1};};
};
AnyRefNode Seat_contact4L={
sRel=.Seat_contactL.sRel+{-0.015,0.01,0};
AnyDrawNode drw={ScaleXYZ=0.005*{1,1,1};RGB={0,0,1};};
};
};
// AnyFolder &ThighR = ...BodyModel.Right.Leg.Seg.Thigh;
// ThighR={
// AnyRefNode SupportNodeFront =
// {
// sRel = {-0.05000, -0.1000, -0.028000};
// AnyDrawNode drw={ScaleXYZ=0.005*{1,1,1};RGB={0,0,1};};
// };
// AnyRefNode SupportNodeBack =
// {
// sRel = {-0.05000, 0.1000, -0.028000};
// AnyDrawNode drw={ScaleXYZ=0.005*{1,1,1};RGB={0,0,1};};
// };
// };
//
// AnyFolder &ThighL = ...BodyModel.Left.Leg.Seg.Thigh;
// ThighL={
// AnyRefNode SupportNodeFront =
// {
// sRel = {-0.05000, -0.1000, 0.028000};
// AnyDrawNode drw={ScaleXYZ=0.005*{1,1,1};RGB={0,0,1};};
// };
// AnyRefNode SupportNodeBack =
// {
// sRel = {-0.05000, 0.1000, 0.028000};
// AnyDrawNode drw={ScaleXYZ=0.005*{1,1,1};RGB={0,0,1};};
// };
// };
AnyFolder &ref=...BodyModel.Trunk;
AnyVar CC_Radius = max({Main.Parameters.DesignParameters.Hip_Rest_Height/2,
Main.Parameters.DesignParameters.Hip_Rest_Width/2}) ;
AnyVar CC_LimitLow = -Main.Parameters.DesignParameters.Hip_Rest_Thick/2;
AnyVar CC_LimitHigh = Main.Parameters.DesignParameters.Hip_Rest_Thick/2;
AnyRefFrame& CC_Base_Frame = Main.Model.EnvironmentModel.Segs.Hip_Rest.cc_base_node;
AnyIntArray CC_Direction = {1,2,0};
// AnyFolder ThighSupportFrontR={
// AnyRefFrame &BaseObject = .CC_Base_Frame;
// AnyRefFrame &TargetObject =....BodyModel.Right.Leg.Seg.Thigh.SupportNodeFront;
//
// 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=.CC_LimitLow;
// //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=.CC_LimitHigh;
// //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=.CC_Radius;
//
// 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= .CC_Direction; //first element gives normal direction
// #include "<ANYBODY_PATH_MODELUTILS>\FrictionContactMuscles\ContactSurfaceLinPush.any"
// };
//
// AnyFolder ThighSupportBackR={
// AnyRefFrame &BaseObject = .CC_Base_Frame;
// AnyRefFrame &TargetObject =....BodyModel.Right.Leg.Seg.Thigh.SupportNodeBack;
//
// 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=.CC_LimitLow;
// //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=.CC_LimitHigh;
// //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=.CC_Radius;
//
// 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= .CC_Direction; //first element gives normal direction
// #include "<ANYBODY_PATH_MODELUTILS>\FrictionContactMuscles\ContactSurfaceLinPush.any"
// };
//
// AnyFolder ThighSupportFrontL={
// AnyRefFrame &BaseObject = .CC_Base_Frame;
// AnyRefFrame &TargetObject =....BodyModel.Left.Leg.Seg.Thigh.SupportNodeFront;
//
// 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=.CC_LimitLow;
// //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=.CC_LimitHigh;
// //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=.CC_Radius;
//
// 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= .CC_Direction; //first element gives normal direction
// #include "<ANYBODY_PATH_MODELUTILS>\FrictionContactMuscles\ContactSurfaceLinPush.any"
// };
//
// AnyFolder ThighSupportBackL={
// AnyRefFrame &BaseObject = .CC_Base_Frame;
// AnyRefFrame &TargetObject =....BodyModel.Left.Leg.Seg.Thigh.SupportNodeBack;
//
// 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=.CC_LimitLow;
// //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=.CC_LimitHigh;
// //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=.CC_Radius;
//
// 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= .CC_Direction; //first element gives normal direction
// #include "<ANYBODY_PATH_MODELUTILS>\FrictionContactMuscles\ContactSurfaceLinPush.any"
// };
AnyFolder Seat_contact1R={
AnyRefFrame &BaseObject = .CC_Base_Frame;
AnyRefFrame &TargetObject =....BodyModel.Trunk.SegmentsLumbar.PelvisSeg.Seat_contact1R;
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
AnyVar UserDefinedLimitLow=.CC_LimitLow;
AnyVar UserDefinedLimitHigh=.CC_LimitHigh;
AnyVar UserDefinedRadiusLimit=.CC_Radius;
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= .CC_Direction; //first element gives normal direction
#include "<ANYBODY_PATH_MODELUTILS>\FrictionContactMuscles\ContactSurfaceLinPush.any"
};
AnyFolder Seat_contact1L={
AnyRefFrame &BaseObject =.CC_Base_Frame;
AnyRefFrame &TargetObject =....BodyModel.Trunk.SegmentsLumbar.PelvisSeg.Seat_contact1L;
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
AnyVar UserDefinedLimitLow=.CC_LimitLow;
AnyVar UserDefinedLimitHigh=.CC_LimitHigh;
AnyVar UserDefinedRadiusLimit=.CC_Radius;
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= .CC_Direction; //first element gives normal direction
#include "<ANYBODY_PATH_MODELUTILS>\FrictionContactMuscles\ContactSurfaceLinPush.any"
};
AnyFolder Seat_contact2R={
AnyRefFrame &BaseObject = .CC_Base_Frame;
AnyRefFrame &TargetObject =....BodyModel.Trunk.SegmentsLumbar.PelvisSeg.Seat_contact2R;
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
AnyVar UserDefinedLimitLow=.CC_LimitLow;
AnyVar UserDefinedLimitHigh=.CC_LimitHigh;
AnyVar UserDefinedRadiusLimit=.CC_Radius;
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= .CC_Direction; //first element gives normal direction
#include "<ANYBODY_PATH_MODELUTILS>\FrictionContactMuscles\ContactSurfaceLinPush.any"
};
AnyFolder Seat_contact2L={
AnyRefFrame &BaseObject = .CC_Base_Frame;
AnyRefFrame &TargetObject =....BodyModel.Trunk.SegmentsLumbar.PelvisSeg.Seat_contact2L;
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
AnyVar UserDefinedLimitLow=.CC_LimitLow;
AnyVar UserDefinedLimitHigh=.CC_LimitHigh;
AnyVar UserDefinedRadiusLimit=.CC_Radius;
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= .CC_Direction; //first element gives normal direction
#include "<ANYBODY_PATH_MODELUTILS>\FrictionContactMuscles\ContactSurfaceLinPush.any"
};
AnyFolder Seat_contact3R={
AnyRefFrame &BaseObject = .CC_Base_Frame;
AnyRefFrame &TargetObject =....BodyModel.Trunk.SegmentsLumbar.PelvisSeg.Seat_contact3R;
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
AnyVar UserDefinedLimitLow=.CC_LimitLow;
AnyVar UserDefinedLimitHigh=.CC_LimitHigh;
AnyVar UserDefinedRadiusLimit=.CC_Radius;
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= .CC_Direction; //first element gives normal direction
#include "<ANYBODY_PATH_MODELUTILS>\FrictionContactMuscles\ContactSurfaceLinPush.any"
};
AnyFolder Seat_contact3L={
AnyRefFrame &BaseObject = .CC_Base_Frame;
AnyRefFrame &TargetObject =....BodyModel.Trunk.SegmentsLumbar.PelvisSeg.Seat_contact3L;
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=.CC_LimitLow;
//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=.CC_LimitHigh;
//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=.CC_Radius;
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= .CC_Direction; //first element gives normal direction
#include "<ANYBODY_PATH_MODELUTILS>\FrictionContactMuscles\ContactSurfaceLinPush.any"
};
AnyFolder Seat_contact4R={
AnyRefFrame &BaseObject = .CC_Base_Frame;
AnyRefFrame &TargetObject =....BodyModel.Trunk.SegmentsLumbar.PelvisSeg.Seat_contact4R;
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=.CC_LimitLow;
//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=.CC_LimitHigh;
//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=.CC_Radius;
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= .CC_Direction; //first element gives normal direction
#include "<ANYBODY_PATH_MODELUTILS>\FrictionContactMuscles\ContactSurfaceLinPush.any"
};
AnyFolder Seat_contact4L = {
AnyRefFrame &BaseObject = .CC_Base_Frame;
AnyRefFrame &TargetObject =....BodyModel.Trunk.SegmentsLumbar.PelvisSeg.Seat_contact4L;
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=.CC_LimitLow;
//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=.CC_LimitHigh;
//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=.CC_Radius;
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= .CC_Direction; //first element gives normal direction
#include "<ANYBODY_PATH_MODELUTILS>\FrictionContactMuscles\ContactSurfaceLinPush.any"
};
};