378 lines (308 with data), 14.4 kB
AnyFolder Mannequin =
{
//^ The values in this mannequin files are initialized with "??=" which allows
//^ the values to be overrriden in the user application.
//^ Hence, all values in this files behaves as default values if not set by
//^ the user.
//^
//^ It is good practice not to edit this file, but instead set the values directly
//^ in your applicaiton:
//^
//^ .. code_block:: AnyScript
//^
//^ Main.HumanModel.Mannequin.Posture =
//^ {
//^ ElbowPronation = -70;
//^ };
//^
/// Folder defining the posture of the HumanModel. The values are used for
/// initial (load time) positions of the model. The values are also sometimes
/// used for driving the model, but that is application dependent.
AnyFolder Posture = {
//This controls the position of the pelvi wrt. to the global reference frame
AnyVar PelvisPosX ??= DesignVar(0.046);
AnyVar PelvisPosY ??= DesignVar(1.16);
AnyVar PelvisPosZ ??= DesignVar(0);
//This controls the rotation of the pelvis wrt. to the global reference frame
AnyVar PelvisRotX ??= DesignVar(0);
AnyVar PelvisRotY ??= DesignVar(0);
AnyVar PelvisRotZ ??= DesignVar(0);
// These variables control the rotation of the thorax wrt the
// pelvis
AnyVar PelvisThoraxExtension ??= DesignVar(PelvisT12Extension);
AnyVar PelvisThoraxLateralBending ??= DesignVar(PelvisT12LateralBending);
AnyVar PelvisThoraxRotation ??= DesignVar(PelvisT12Rotation);
AnyVar PelvisT12Extension ??= DesignVar(0);
AnyVar PelvisT12LateralBending ??= DesignVar(0);
AnyVar PelvisT12Rotation ??= DesignVar(0);
AnyVar T1SkullExtension ??= DesignVar(0);
AnyVar T1SkullLateralBending ??= DesignVar(0);
AnyVar T1SkullRotation ??= DesignVar(0);
AnyVar NeckExtension ??= DesignVar(T1SkullExtension);
AnyVar NeckLateralBending ??= DesignVar(T1SkullLateralBending); // not used when neck is switched off
AnyVar NeckRotation ??= DesignVar(T1SkullRotation); // not used when neck is switched off
AnyFolder Right = {
//Arm
AnyVar SternoClavicularProtraction ??= DesignVar(-23); //This value is not used for initial position
AnyVar SternoClavicularElevation ??= 11.5; //This value is not used for initial position
#if BM_ARM_CLAVICULA_ROTATION_RHYTHM
/// NOTE: This value is unused. The SC ais value is not used as the SC axial rotation is controlled by a rythmn (BM_ARM_CLAVICULA_ROTATION_RHYTHM)
AnyVar SternoClavicularAxialRotation ??= -20; //This value is not used for initial position
#else
AnyVar SternoClavicularAxialRotation ??= -20; //This value is not used for initial position
#endif
AnyVar GlenohumeralFlexion ??= DesignVar(1);
AnyVar GlenohumeralAbduction ??= DesignVar(10);
AnyVar GlenohumeralExternalRotation ??= DesignVar(0);
AnyVar ElbowFlexion ??= 0.01;
AnyVar ElbowPronation ??= -20.0;
AnyVar WristFlexion ??= DesignVar(0);
AnyVar WristAbduction ??= DesignVar(0);
//Leg
AnyVar HipFlexion ??= 0.0;
AnyVar HipAbduction ??= 5.0;
AnyVar HipExternalRotation ??= 0.0;
AnyVar KneeFlexion ??= 0.0;
AnyVar AnklePlantarFlexion ??= 0.0;
AnyVar SubTalarEversion ??= 0.0;
//Detail Hand
AnyFolder Finger1 = {
AnyVar CMCDeviation ??= -20;
AnyVar CMCFlexion ??= 20;
AnyVar MCPFlexion ??= 20;
AnyVar MCPDeviation ??= DesignVar(0);
AnyVar DIPFlexion ??= 20;
};
AnyFolder Finger2 = {
AnyVar MCPFlexion ??= 20;
AnyVar PIPFlexion ??= 20;
AnyVar DIPFlexion ??= 20;
};
AnyFolder Finger3 = {
AnyVar MCPFlexion ??= 20;
AnyVar PIPFlexion ??= 20;
AnyVar DIPFlexion ??= 20;
};
AnyFolder Finger4 = {
AnyVar MCPFlexion ??= 20;
AnyVar PIPFlexion ??= 20;
AnyVar DIPFlexion ??= 20;
};
AnyFolder Finger5 = {
AnyVar MCPFlexion ??= 20;
AnyVar PIPFlexion ??= 20;
AnyVar DIPFlexion ??= 20;
};
};
AnyFolder Left = {
//all values are set to be equal to the right side values
//feel free to change this!
//Arm
AnyVar SternoClavicularProtraction ??= .Right.SternoClavicularProtraction;
AnyVar SternoClavicularElevation ??= .Right.SternoClavicularElevation;
#if BM_ARM_CLAVICULA_ROTATION_RHYTHM
/// NOTE: This value is unused. The SC ais value is not used as the SC axial rotation is controlled by a rythmn (BM_ARM_CLAVICULA_ROTATION_RHYTHM)
AnyVar SternoClavicularAxialRotation ??= .Right.SternoClavicularAxialRotation;
#else
AnyVar SternoClavicularAxialRotation ??= .Right.SternoClavicularAxialRotation; //This value is not used for initial position
#endif
AnyVar GlenohumeralFlexion ??= .Right.GlenohumeralFlexion ;
AnyVar GlenohumeralAbduction ??= .Right.GlenohumeralAbduction ;
AnyVar GlenohumeralExternalRotation ??= .Right.GlenohumeralExternalRotation ;
AnyVar ElbowFlexion ??= .Right.ElbowFlexion;
AnyVar ElbowPronation ??= .Right.ElbowPronation;
AnyVar WristFlexion ??= .Right.WristFlexion;
AnyVar WristAbduction ??= .Right.WristAbduction;
//Leg
AnyVar HipFlexion ??= .Right.HipFlexion;
AnyVar HipAbduction ??= .Right.HipAbduction;
AnyVar HipExternalRotation ??= .Right.HipExternalRotation;
AnyVar KneeFlexion ??= .Right.KneeFlexion;
AnyVar AnklePlantarFlexion ??= .Right.AnklePlantarFlexion ;
AnyVar SubTalarEversion ??= .Right.SubTalarEversion;
//Detail Hand
AnyFolder Finger1 = {
AnyVar CMCDeviation ??= ..Right.Finger1.CMCDeviation;
AnyVar CMCFlexion ??= ..Right.Finger1.CMCFlexion;
AnyVar MCPFlexion ??= ..Right.Finger1.MCPFlexion;
AnyVar MCPDeviation ??= ..Right.Finger1.MCPDeviation;
AnyVar DIPFlexion ??= ..Right.Finger1.DIPFlexion;
};
AnyFolder Finger2 = {
AnyVar MCPFlexion ??= ..Right.Finger2.MCPFlexion;
AnyVar PIPFlexion ??= ..Right.Finger2.PIPFlexion;
AnyVar DIPFlexion ??= ..Right.Finger2.DIPFlexion;
};
AnyFolder Finger3 = {
AnyVar MCPFlexion ??= ..Right.Finger3.MCPFlexion;
AnyVar PIPFlexion ??= ..Right.Finger3.PIPFlexion;
AnyVar DIPFlexion ??= ..Right.Finger3.DIPFlexion;
};
AnyFolder Finger4 = {
AnyVar MCPFlexion ??= ..Right.Finger4.MCPFlexion;
AnyVar PIPFlexion ??= ..Right.Finger4.PIPFlexion;
AnyVar DIPFlexion ??= ..Right.Finger4.DIPFlexion;
};
AnyFolder Finger5 = {
AnyVar MCPFlexion ??= ..Right.Finger5.MCPFlexion;
AnyVar PIPFlexion ??= ..Right.Finger5.PIPFlexion;
AnyVar DIPFlexion ??= ..Right.Finger5.DIPFlexion;
};
};
};
/// Folder defining the Posture velocity of the HumanModel. The values
/// are sometimes used for driving the model, but that is application dependent.
AnyFolder PostureVel = {
//This controls the position of the pelvi wrt. to the global reference frame
AnyVar PelvisPosX ??= DesignVar(0);
AnyVar PelvisPosY ??= DesignVar(0);
AnyVar PelvisPosZ ??= DesignVar(0);
//This controls the rotation of the pelvis wrt. to the global reference frame
AnyVar PelvisRotX ??= DesignVar(0);
AnyVar PelvisRotY ??= DesignVar(0);
AnyVar PelvisRotZ ??= DesignVar(0);
// These variables control the rotation of the thorax wrt the
// pelvis
AnyVar PelvisThoraxExtension ??= DesignVar(PelvisT12Extension);
AnyVar PelvisThoraxLateralBending ??= DesignVar(PelvisT12LateralBending);
AnyVar PelvisThoraxRotation ??= DesignVar(PelvisT12Rotation);
AnyVar PelvisT12Extension ??= DesignVar(0);
AnyVar PelvisT12LateralBending ??= DesignVar(0);
AnyVar PelvisT12Rotation ??= DesignVar(0);
AnyVar T1SkullExtension ??= DesignVar(0);
AnyVar T1SkullLateralBending ??= DesignVar(0);
AnyVar T1SkullRotation ??= DesignVar(0);
AnyVar NeckExtension ??= DesignVar(T1SkullExtension);
AnyVar NeckLateralBending ??= DesignVar(T1SkullLateralBending); // not used when neck is switched off
AnyVar NeckRotation ??= DesignVar(T1SkullRotation); // not used when neck is switched off
AnyFolder Right = {
//Arm
AnyVar SternoClavicularProtraction ??= DesignVar(0); //This value is not used for initial position
AnyVar SternoClavicularElevation ??= DesignVar(0); //This value is not used for initial position
#if BM_ARM_CLAVICULA_ROTATION_RHYTHM
/// NOTE: This value is unused. The SC ais value is not used as the SC axial rotation is controlled by a rythmn (BM_ARM_CLAVICULA_ROTATION_RHYTHM)
AnyVar SternoClavicularAxialRotation ??= DesignVar(0); //This value is not used for initial position
#else
AnyVar SternoClavicularAxialRotation ??= DesignVar(0); //This value is not used for initial position
#endif
AnyVar GlenohumeralFlexion ??= DesignVar(0);
AnyVar GlenohumeralAbduction ??= DesignVar(0);
AnyVar GlenohumeralExternalRotation ??= DesignVar(0);
AnyVar ElbowFlexion ??= 0.0;
AnyVar ElbowPronation ??= 0.0;
AnyVar WristFlexion ??= DesignVar(0);
AnyVar WristAbduction ??= DesignVar(0);
//Leg
AnyVar HipFlexion ??= 0.0;
AnyVar HipAbduction ??= 0.0;
AnyVar HipExternalRotation ??= 0.0;
AnyVar KneeFlexion ??= 0.0;
AnyVar AnklePlantarFlexion ??= 0.0;
AnyVar SubTalarEversion ??= 0.0;
//Detail Hand
AnyFolder Finger1 = {
AnyVar CMCDeviation ??= 0;
AnyVar CMCFlexion ??= 0;
AnyVar MCPFlexion ??= 0;
AnyVar MCPDeviation ??= 0;
AnyVar DIPFlexion ??= 0;
};
AnyFolder Finger2 = {
AnyVar MCPFlexion ??= 0;
AnyVar PIPFlexion ??= 0;
AnyVar DIPFlexion ??= 0;
};
AnyFolder Finger3 = {
AnyVar MCPFlexion ??= 0;
AnyVar PIPFlexion ??= 0;
AnyVar DIPFlexion ??= 0;
};
AnyFolder Finger4 = {
AnyVar MCPFlexion ??= 0;
AnyVar PIPFlexion ??= 0;
AnyVar DIPFlexion ??= 0;
};
AnyFolder Finger5 = {
AnyVar MCPFlexion ??= 0;
AnyVar PIPFlexion ??= 0;
AnyVar DIPFlexion ??= 0;
};
};
AnyFolder Left = {
//all values are set to be equal to the right side values
//feel free to change this!
//Arm
AnyVar SternoClavicularProtraction ??= .Right.SternoClavicularProtraction;
AnyVar SternoClavicularElevation ??= .Right.SternoClavicularElevation;
#if BM_ARM_CLAVICULA_ROTATION_RHYTHM
/// NOTE: This value is unused. The SC ais value is not used as the SC axial rotation is controlled by a rythmn (BM_ARM_CLAVICULA_ROTATION_RHYTHM)
AnyVar SternoClavicularAxialRotation ??= .Right.SternoClavicularAxialRotation; //This value is not used for initial position
#else
AnyVar SternoClavicularAxialRotation ??= .Right.SternoClavicularAxialRotation; //This value is not used for initial position
#endif
AnyVar GlenohumeralFlexion ??= .Right.GlenohumeralFlexion ;
AnyVar GlenohumeralAbduction ??= .Right.GlenohumeralAbduction ;
AnyVar GlenohumeralExternalRotation ??= .Right.GlenohumeralExternalRotation ;
AnyVar ElbowFlexion ??= .Right.ElbowFlexion;
AnyVar ElbowPronation ??= .Right.ElbowPronation;
AnyVar WristFlexion ??= .Right.WristFlexion;
AnyVar WristAbduction ??= .Right.WristAbduction;
//Leg
AnyVar HipFlexion ??= .Right.HipFlexion;
AnyVar HipAbduction ??= .Right.HipAbduction;
AnyVar HipExternalRotation ??= .Right.HipExternalRotation;
AnyVar KneeFlexion ??= .Right.KneeFlexion;
AnyVar AnklePlantarFlexion ??= .Right.AnklePlantarFlexion ;
AnyVar SubTalarEversion ??= .Right.SubTalarEversion;
//Detail Hand
AnyFolder Finger1 = {
AnyVar CMCDeviation ??= 0;
AnyVar CMCFlexion ??= 0;
AnyVar MCPFlexion ??= 0;
AnyVar MCPDeviation ??= 0;
AnyVar DIPFlexion ??= 0;
};
AnyFolder Finger2 = {
AnyVar MCPFlexion ??= 0;
AnyVar PIPFlexion ??= 0;
AnyVar DIPFlexion ??= 0;
};
AnyFolder Finger3 = {
AnyVar MCPFlexion ??= 0;
AnyVar PIPFlexion ??= 0;
AnyVar DIPFlexion ??= 0;
};
AnyFolder Finger4 = {
AnyVar MCPFlexion ??= 0;
AnyVar PIPFlexion ??= 0;
AnyVar DIPFlexion ??= 0;
};
AnyFolder Finger5 = {
AnyVar MCPFlexion ??= 0;
AnyVar PIPFlexion ??= 0;
AnyVar DIPFlexion ??= 0;
};
};
};
// #if LOAD_SECTION == 1
// AnyFolder Load = {
// AnyVec3 TopVertebra ??= {0.000, 0.000, 0.000};
// AnyFolder Right = {
// AnyVec3 Shoulder ??= {0.000, 0.000, 0.000};
// AnyVec3 Elbow ??= {0.000, 0.000, 0.000};
// AnyVec3 Hand ??= {0.000, 0.000, 0.000};
// AnyVec3 Hip ??= {0.000, 0.000, 0.000};
// AnyVec3 Knee ??= {0.000, 0.000, 0.000};
// AnyVec3 Ankle ??= {0.000, 0.000, 0.000};
// };
// AnyFolder Left = {
// AnyVec3 Shoulder ??= {0.000, 0.000, 0.000};
// AnyVec3 Elbow ??= {0.000, 0.000, 0.000};
// AnyVec3 Hand ??= {0.000, 0.000, 0.000};
// AnyVec3 Hip ??= {0.000, 0.000, 0.000};
// AnyVec3 Knee ??= {0.000, 0.000, 0.000};
// AnyVec3 Ankle ??= {0.000, 0.000, 0.000};
// };
// }; // Loads
// #endif
};