|
a |
|
b/Application/Examples/StandingModelScalingDisplay/StandingModelScalingDisplay.Main.any |
|
|
1 |
#include "../libdef.any" |
|
|
2 |
|
|
|
3 |
/** |
|
|
4 |
This application shows all the scaling laws available. |
|
|
5 |
The model can be scaled either regarding to measures between joint center or by representation of a certain percentile of the population. |
|
|
6 |
For further details see the tutorial about scaling at |
|
|
7 |
https://anyscript.org/ammr-doc/Scaling/intro.html |
|
|
8 |
*/ |
|
|
9 |
Main = { |
|
|
10 |
|
|
|
11 |
// Model configuration: |
|
|
12 |
// For more info on body model configuration options please |
|
|
13 |
// load the model and double click on: |
|
|
14 |
#include "BodyModelConfiguration.any" |
|
|
15 |
|
|
|
16 |
|
|
|
17 |
/*--------------- GENERAL CONFIGURATION SECTION ------------------*/ |
|
|
18 |
// Initial positions and velocities file used by this model |
|
|
19 |
#include "Model/Mannequin.any" |
|
|
20 |
|
|
|
21 |
// Custom drawing settings used by this model |
|
|
22 |
#include "Model/DrawSettings.any" |
|
|
23 |
|
|
|
24 |
|
|
|
25 |
//--------------- END OF GENERAL CONFIGURATION ------------------- |
|
|
26 |
|
|
|
27 |
/*------------- SCALING CONFIGURATION SECTION --------------------*/ |
|
|
28 |
|
|
|
29 |
// Scaling laws using joint to joint measures |
|
|
30 |
// #define BM_SCALING _SCALING_STANDARD_ |
|
|
31 |
// #define BM_SCALING _SCALING_NONE_ |
|
|
32 |
// #define BM_SCALING _SCALING_UNIFORM_ |
|
|
33 |
// #define BM_SCALING _SCALING_LENGTHMASS_ |
|
|
34 |
// #define BM_SCALING _SCALING_LENGTHMASSFAT_ |
|
|
35 |
// #define BM_SCALING _SCALING_XYZ_ |
|
|
36 |
// fallback to standard scaling if no scaling is defined |
|
|
37 |
#ifndef BM_SCALING |
|
|
38 |
#define BM_SCALING _SCALING_STANDARD_ |
|
|
39 |
#endif |
|
|
40 |
|
|
|
41 |
//--------------- END OF SCALING CONFIGURATION ------------------- |
|
|
42 |
|
|
|
43 |
|
|
|
44 |
//#include "Model\CustomScaling.any" |
|
|
45 |
|
|
|
46 |
#include "<ANYBODY_PATH_BODY>/HumanModel.any" |
|
|
47 |
|
|
|
48 |
// This folder collects the elements of the model. It is referred by the |
|
|
49 |
// study section below as the target of the analyses. |
|
|
50 |
AnyFolder Model = { |
|
|
51 |
/// Body model without default drivers |
|
|
52 |
AnyFolder &BodyModel=.HumanModel.BodyModel; |
|
|
53 |
/// Reference to the mannequin folder (used by drivers) |
|
|
54 |
AnyFolder &Mannequin =.HumanModel.Mannequin; |
|
|
55 |
|
|
|
56 |
// Environment files are used to include objects surrounding human, e.g. global reference frame |
|
|
57 |
#include "Model\Environment.any" |
|
|
58 |
|
|
|
59 |
AnyFolder ModelEnvironmentConnection = { |
|
|
60 |
// All added constraints reaction forces to simulate standing human |
|
|
61 |
#include "Model\JointsAndDrivers.any" |
|
|
62 |
}; |
|
|
63 |
|
|
|
64 |
// Head scaling visualization and measurements |
|
|
65 |
// #define HEAD_SCALING_XYZ |
|
|
66 |
#ifdef HEAD_SCALING_XYZ |
|
|
67 |
#include "Model\HeadScalingXYZ.any" |
|
|
68 |
#endif |
|
|
69 |
|
|
|
70 |
}; |
|
|
71 |
|
|
|
72 |
|
|
|
73 |
AnyBodyStudy Study = { |
|
|
74 |
AnyFolder &Model = .Model; |
|
|
75 |
|
|
|
76 |
tEnd = 1.0; |
|
|
77 |
Gravity = {0.0, -9.81, 0.0}; |
|
|
78 |
nStep = 1; |
|
|
79 |
// these settings are needed for adding drivers without removing the default set |
|
|
80 |
InitialConditions.SolverType = KinSolOverDeterminate; |
|
|
81 |
Kinematics.SolverType = KinSolOverDeterminate; |
|
|
82 |
|
|
|
83 |
}; // End of study |
|
|
84 |
|
|
|
85 |
// Include an operation sequence to run all required steps of your application (see Operations tab) |
|
|
86 |
#include "<ANYBODY_PATH_MODELUTILS>\Operations\RunAppSequence.any" |
|
|
87 |
|
|
|
88 |
}; //Main |