How to drive human model by using joint angle data?

Hi~~ I am Kuang-Wei

I am using AnyBody 4.0.1, I have some questions about AnyBody.

Q1. I calculated the joint angle from MOCAP data. Now I want to input the data to drive the human model, but I have some problems in AnyScript. ( I know how to drive model using marker data.)

My script:

AnyKinEqInterPolDriver AnkleAngleDriverRight = {
AnyUniversalJoint &PlantarFlexion = ; <— Not sure the joint type and
FileName = “AnkleFle.txt”;
Type = Bspline;
BsplineOrder = 4;

Q2. Why the number of joint moment not always 3 ?
In the ankle joint, only 1 moment, knee joint has 2 moments and hip joint without moment.

Q3. In the human model, only 1 degree of freedom in the knee joint. Is that possible to modify the joint type by myself ? In the future, will the knee joint change to the 3 degree of freedom?


Hi Kuang-Wei,
Q1: Something simple as this should work:

AnyKinEqInterPolDriver AnkleDriverRightPol =
Type = Bspline;
BsplineOrder = 4;
FileName = “AnkleFle.txt”;

AnyKinMeasureOrg &ref1=..HumanModel.Interface.Right.AnklePlantarFlexion;

A good start point to alter drivers is to use the FreePosture model’s drivers.

The number of joint moments is related to the defined joint type. In the hip is a spherical joint, meaning there are only forces transfered, but no moments - 0 joint moments. The knee is a hinge joint. One moment is free, two are constraint - 2 joint moments and so on.
Yes its possible to modify any joint, but of course you need to make sure that the model can be solved kinetic-wise. So it may e.g. appear that there are not enought muscles. Right now there are no short term plans to change the knee joint from our side. This webcast may be interesting for you “Quantifying strain in the anterior cruciate ligament during voluntary and forced movements”, you can find it under the on-demand webcasts on the AnyBody webpage.
Hope this helps,