// ---------------------------------------------------------------------------------------------------------------- // BodyPartSetup - generic handling // ---------------------------------------------------------------------------------------------------------------- // Setup default BM_LEG_DATASET for the TLEM models #if BM_LEG_MODEL == _LEG_MODEL_TLEM1_ #path BM_LEG_TLEM_PATH "../../LegTLEM1" #ifndef BM_LEG_DATASET #define BM_LEG_DATASET "TLEM1.2" #endif #endif #if BM_LEG_MODEL == _LEG_MODEL_TLEM21_ #path BM_LEG_TLEM_PATH "../../LegTLEM2.1" #ifndef BM_LEG_DATASET #define BM_LEG_DATASET "TLEM2.1" #endif #endif #if BM_LEG_MODEL == _LEG_MODEL_TLEM2_ #path BM_LEG_TLEM_PATH "../../LegTLEM" #ifndef BM_LEG_DATASET #define BM_LEG_DATASET "TLEM2.2" #endif #endif #ifdef BM_LEG_DATASET #ifndef BM_LEG_DATASET_PATH #path BM_LEG_DATASET_PATH "<BM_LEG_TLEM_PATH>/" + BM_LEG_DATASET #include "<BM_LEG_DATASET_PATH>/PreprocDefaults.any" #endif #endif // // SCALING related logic // #ifdef BM_SCALING_FILE #if BM_SCALING != _SCALING_CUSTOM_ AnyInt bm_scaling_notice1= notice(0, strformat("\n"+ "------------------------------------------------------------------------------------------------------\n"+ " A custom scaling law is specified by `BM_SCALING_FILE`. "+ " This overrides the selection by the BM_SCALING parameter\n"+ " Set `#define BM_SCALING _SCALING_CUSTOM_` to dismiss this notice.'\n"+ "-------------------------------------------------------------------------------------------------------")); #endif #undef BM_SCALING #define BM_SCALING _SCALING_CUSTOM_ #endif //Base scaling laws according to the configuration file #if (BM_SCALING == _SCALING_NONE_) #path BM_SCALING_FILE "<ANYBODY_PATH_BODY>\Scaling\ScalingNone.any" #endif #if (BM_SCALING == _SCALING_STANDARD_) | (BM_SCALING == _SCALING_UNIFORM_) #path BM_SCALING_FILE "<ANYBODY_PATH_BODY>\Scaling\ScalingUniform.any" #endif #if (BM_SCALING == _SCALING_LENGTHMASS_) #path BM_SCALING_FILE "<ANYBODY_PATH_BODY>\Scaling\ScalingLengthMass.any" #endif #if (BM_SCALING == _SCALING_LENGTHMASSFAT_) #path BM_SCALING_FILE "<ANYBODY_PATH_BODY>\Scaling\ScalingLengthMassFat.any" #endif #if BM_SCALING == _SCALING_XYZ_ #path BM_SCALING_FILE "<ANYBODY_PATH_BODY>\Scaling\ScalingXYZMassFat.any" #endif #ifdef BM_SCALING_ANTHRO_FILE #if BM_SCALING == _SCALING_STANDARD_ | BM_SCALING == _SCALING_NONE_ AnyInt BM_Warning1= warn(0, strformat("\n"+ "------------------------------------------------------------------------------------------------------\n"+ " The BM_SCALING setting is does not work with custom anthropometric data.\n"+ " E.g. anthropmetry set with '#path BM_SCALING_ANTHRO_FILE'\n"+ " BM_SCALING have been redefined to _SCALING_UNIFORM_.\n"+ " To dismiss this warning; set BM_SCALING yourself or do not set BM_SCALING_ANTHRO_FILE.\n"+ "-------------------------------------------------------------------------------------------------------")); #undef BM_SCALING #define BM_SCALING _SCALING_UNIFORM_ #endif #endif // // Muscle Calibration related logic // #if BM_CALIBRATION_TYPE == _CALIBRATION_TYPE_2PAR_ & BM_TRUNK_CERVICAL_RHYTHM == OFF AnyInt bm_cervical_rhythm_notice1= notice(0, strformat("\n"+ "------------------------------------------------------------------------------------------------------\n"+ " Please note that BM_TRUNK_CERVICAL_RHYTHM is set to OFF. \n"+ " No default mannequin drivers are used to drive cervicalspine joints.\n"+ " _CALIBRATION_TYPE_2PAR_ requires BM_TRUNK_CERVICAL_RHYTHM to be ON.\n"+ "-------------------------------------------------------------------------------------------------------")); #endif