166 lines (113 with data), 3.6 kB
#class_template OptimizeAnthropometricsOnOff (PelvisWidthOnOff,ThighLengthOnOff,ShankLengthOnOff,FootLengthOnOff,HeadHeightOnOff,TrunkHeightOnOff ,UpperArmLengthOnOff,LowerArmLengthOnOff ,Model1, Model2 ){
#if Model1 == 1
AnyFolder &ref= Main.Studies.ParameterIdentification ;
ref={
AnyFolder &Lengths=Main.Studies.HumanModel.Anthropometrics.SegmentDimensions;
#if PelvisWidthOnOff == "On"
AnyDesVar PelvisWidth = {
Val = .Lengths.PelvisWidth;
};
#endif
#if ThighLengthOnOff =="On"
AnyDesVar ThighLengths = {
Val =.Lengths.Right.ThighLength;
};
#endif
#if ShankLengthOnOff =="On"
AnyDesVar ShankLengths = {
Val = .Lengths.Right.ShankLength;
};
#endif
#if FootLengthOnOff =="On"
AnyDesVar FootLengths = {
Val = .Lengths.Right.FootLength;
};
#endif
// #if VarusValgusOnOff =="On"
//
//
// AnyDesVar VarusValgusRight = {
// Val = Main.Studies.KinematicStudyForParameterIdentification.HumanModel.BodyModel.Right.Leg.Seg.Thigh.KneeJoint.AxisRot;
// };
//
// AnyDesVar VarusValgusLeft = {
// Val = Main.Studies.KinematicStudyForParameterIdentification.HumanModel.BodyModel.Left.Leg.Seg.Thigh.KneeJoint.AxisRot;
// };
//
// //This ensures the legs varus valgus is the same for left and right side
// AnyDesMeasure VarusValgusEquality = {
// Val = .VarusValgusRight.Val-.VarusValgusLeft.Val ;
// Type= EqualToZero;
// };
//
//
// #endif
#if HeadHeightOnOff =="On"
AnyDesVar HeadHeight = {
Val = .Lengths.HeadHeight;
};
#endif
#if TrunkHeightOnOff =="On"
AnyDesVar TrunkHeight = {
Val = .Lengths.TrunkHeight;
};
#endif
#if UpperArmLengthOnOff=="On"
AnyDesVar UpperArmLength = {
Val = .Lengths.Right.UpperArmLength ;
};
#endif
#if LowerArmLengthOnOff =="On"
AnyDesVar LowerArmLength = {
Val = .Lengths.Right.LowerArmLength ;
};
#endif
};
#endif
#if Model2 == 1
AnyFolder &ref2= Main.Studies.LoadParametersOptimizationResults ;
ref2={
AnyFolder &Lengths=Main.Studies.HumanModel.Anthropometrics.SegmentDimensions;
#if PelvisWidthOnOff=="On"
AnyDesVar PelvisWidth = {
Val = .Lengths.PelvisWidth;
};
#endif
#if ThighLengthOnOff =="On"
AnyDesVar ThighLengths = {
Val =.Lengths.Right.ThighLength;
};
#endif
#if ShankLengthOnOff =="On"
AnyDesVar ShankLengths = {
Val = .Lengths.Right.ShankLength;
};
#endif
#if FootLengthOnOff =="On"
AnyDesVar FootLengths = {
Val = .Lengths.Right.FootLength;
};
#endif
#if HeadHeightOnOff =="On"
AnyDesVar HeadHeight = {
Val = .Lengths.HeadHeight;
};
#endif
#if TrunkHeightOnOff =="On"
AnyDesVar TrunkHeight = {
Val = .Lengths.TrunkHeight;
};
#endif
#if UpperArmLengthOnOff=="On"
AnyDesVar UpperArmLength = {
Val = .Lengths.Right.UpperArmLength ;
};
#endif
#if LowerArmLengthOnOff =="On"
AnyDesVar LowerArmLength = {
Val = .Lengths.Right.LowerArmLength ;
};
#endif
};
#endif
}; // End of InsertSegmentClass