Switch to unified view

a b/Tools/AnyMocap/ModelSetup.any
1
ModelSetup = {
2
3
 AnyFolder TrialSpecificData = {
4
     #include "TrialSpecificData_Defaults.any"
5
     #include "<MOCAP_TRIAL_SPECIFIC_DATA>"
6
 };
7
8
 AnyFolder SubjectSpecificData = {
9
   #include "SubjectSpecificData_Defaults.any"
10
   #include "<MOCAP_SUBJECT_SPECIFIC_DATA>"
11
 };
12
13
 AnyFolder LabSpecificData= {
14
   #include "LabSpecificData_Defaults.any"
15
   #include "<MOCAP_LAB_SPECIFIC_DATA>"
16
 };
17
 
18
 // This file checks if all the defines statements 
19
 // are made correctly.
20
 #include "CheckAnyMoCapConfiguration.any"
21
 
22
 
23
 Main = {
24
    #include "<BODY_MODEL_CONFIG_FILE>"
25
 };
26
 
27
 #if MOCAP_INPUT_DATA_TYPE == "C3D"
28
 AnyInputC3D C3DFileData =  {
29
    AnyComponentDefinition obj = {};
30
 };
31
 #include "<MOCAP_C3DSETTINGS>"
32
 #endif
33
 
34
 #if MOCAP_INPUT_DATA_TYPE == "BVH"
35
 
36
 /// Redirects to BVHFileData, so models expecting C3D emulation still work.
37
 AnyFolder C3DFileData = {AnyFolder& Header = .BVHFileData.Header;};
38
 
39
 AnyInputBVH BVHFileData = { 
40
    AnyComponentDefinition obj = {
41
      SubGroupRegexSearch = ".*\.([_[:alnum:]]+?)\.([_[:alnum:]]+?)";
42
      SubGroupRegexReplace = "$1";
43
    };
44
 }; 
45
 #include "<MOCAP_BVHSETTINGS>" 
46
 #endif
47
 
48
 
49
 AnyFolder MocapExtraDrivers = {
50
   AnyComponentDefinition obj = {};
51
   #include "<MOCAP_EXTRA_DRIVERS_FILE>"
52
 };
53
 
54
 AnyFolder MocapDrivers = {
55
    AnyComponentDefinition obj = {
56
      // regex pattern starts at the component level
57
      SubGroupRegexSearch = "([_[:alnum:]]+)\.([_[:alnum:]]+?)";
58
      SubGroupRegexReplace = "$1";
59
    };
60
    #include "<MOCAP_MARKER_PROTOCOL_FILE>"
61
 };
62
63
 AnyFolder ParameterIdentification = { };
64
 
65
 #if MOCAP_FILTER_JOINT_ANGLES == ON
66
   /// Filter for Joint Angles (Output of the marker tracking step).
67
   AnyFolder JointAngleFilter = 
68
   {
69
      AnyInt N ??= 1;
70
      AnyVar Fs ??= (Main.Studies.MarkerTracking.nStep-1)
71
          /(Main.Studies.MarkerTracking.tEnd-Main.Studies.MarkerTracking.tStart);
72
      AnyVar Fc ??= 10;
73
      AnySwitchVar FilterForwardBackwardOnOff ??= On;
74
 
75
     AnyFunButterworthFilter FilterFun = 
76
     {
77
        AutomaticInitialConditionOnOff = On;
78
        FilterForwardBackwardOnOff = .FilterForwardBackwardOnOff;
79
        N = .N;
80
        Fs = .Fs;
81
        Fc = {.Fc};
82
        Type = LowPass;
83
     };
84
  }; 
85
86
  #endif   
87
88
 // Study for saving a loading the parameters from calibration trials 
89
 //(dynamic or standing refereces)
90
 #include "SaveLoadParameters.any"
91
 
92
 #include "ModelViews.any"  
93
  
94
  
95
 //markers adds macros automatically into this folder
96
 AnyFolder Macros =  
97
 {
98
99
    AnyOperationMacro SaveOutputToHDF = 
100
    {
101
       OPERATION_DISPLAY_PRIORITY(PriorityLow);
102
       MacroStr = {
103
         "classoperation Main.Studies.MarkerTracking.Output" + strquote("Save data")
104
         + "--type= " + strquote("Deep")
105
         + "--file= " + strquote(ANYBODY_PATH_OUTPUT + "/" + MOCAP_TEST_FILENAME_PREFIX +  MOCAP_OUTPUT_FILENAME_PREFIX
106
         + Main.ModelSetup.TrialSpecificData.TrialFileName + "_MarkerTracking.anydata.h5"),
107
                    
108
         "classoperation Main.Studies.InverseDynamicStudy.Output" + strquote("Save data")
109
         + "--type= " + strquote("Deep")
110
         + "--file= " + strquote(ANYBODY_PATH_OUTPUT + "/" + MOCAP_TEST_FILENAME_PREFIX  +  MOCAP_OUTPUT_FILENAME_PREFIX
111
         + Main.ModelSetup.TrialSpecificData.TrialFileName + "_InverseDynamicStudy.anydata.h5")
112
      };
113
    };
114
    AnyOperationMacro LoadOutputFromHDF = 
115
    {
116
       OPERATION_DISPLAY_PRIORITY(PriorityLow);
117
       MacroStr = {
118
         "classoperation Main.Studies.MarkerTracking.Output" + strquote("Load data")
119
         + "--file= " + strquote(ANYBODY_PATH_OUTPUT + "/" + MOCAP_TEST_FILENAME_PREFIX +  MOCAP_OUTPUT_FILENAME_PREFIX
120
         + Main.ModelSetup.TrialSpecificData.TrialFileName + "_MarkerTracking.anydata.h5"),
121
                    
122
         "classoperation Main.Studies.InverseDynamicStudy.Output" + strquote("Load data")
123
         + "--file= " + strquote(ANYBODY_PATH_OUTPUT + "/" + MOCAP_TEST_FILENAME_PREFIX +  MOCAP_OUTPUT_FILENAME_PREFIX
124
         + Main.ModelSetup.TrialSpecificData.TrialFileName + "_InverseDynamicStudy.anydata.h5")
125
       };
126
    };
127
 }; // Macros
128
 
129
 
130
};
131
132
133
AnyFolder ModelSetup = {};
134
135
ModelSetup = 
136
{
137
  //DocumentationLink = AMMR_PATH_DOC + "/anymocap.html";
138
  AnyFolder Views = {};
139
};
140
141
142
#ifdef BM_DRAWSETTINGS_FILE
143
// Ensure that HumanModel does not 
144
// include DrawSettings as well. 
145
#define BM_DRAWSETTINGS_SKIP ON
146
#include "<BM_DRAWSETTINGS_FILE>"
147
#endif
148
149
150
#include "CheckAnyMoCapPostConfiguration.any"
151