Total Knee Replacement

Hi

I’m quite new to Anybody so apologies in advance if this is a bit obvious. I’m currently using a tutorial and am trying to model TKR but can’t find the repository AMMRV1.5.1? Where can I download this from?

Ammar

Hey Ammar,

welcome to the AnyBody Forum. It is very tough to find the Rep 1.5.1, because it doesn’t exist yet :wink:
But I can explain how to get AMMRv1.5. If you run the AnyBody Modeling System v5.2, click on Help and Demo. There you will find:

[i]The AnyBody AnyScript Demo Repository
This is a demo version of the AnyBody Managed Model Repository (AMMR).

To re-install/update the installed demo files, follow this link.[/i]

So follow that link!


Thank you for your reply!

I am still having problems as if I go to help and demo I don’t get the message you specified but instead I get an error saying the file cannot be found? Should I reinstall Anybody, or is there any other way I can access those files?

Ammar

Hey Ammar,

this is a strange behaviour. I’ve never seen that before. Can you please try to re-install AnyBody. Did you get any error messages during installation?? If re-installing doesn’t work, please provide info on your system, what windows, what AMS license…

Sorry for the inconvenience.


can you check if you have a folder called AMMR in the folder where AnyBody is installed? You should find the models in there as well.

For Example at:

C:\Program Files…\AnyBody…\AMMR


Thank you Amir

I haven’t had an opportunity to go through what you said yet as I have had another problem. I cannot seem to be able to convert my C3D files into Anyscript files. I can run the c3d2any file but nothing happens apart from the DOS promt appearing and quickly disappearing. Are there any tutorial based on how to convert?

Hi Ammar,

Try using a command prompt to see what error message it gives. (CMD command in Windows)

Regards,
Pavel

Hi Pavel

Thank you for your reply. I have just realised that the cd32any file which I have is meant for Anybody versions 2,3 and 4. I currently have 5.2. A colleague of mine said it is possible to convert from C3D to Anyscript file using the Anybody program. If so, how would I do this?

Hi Ammar,

Yes, indeed. You don’t need the C3D2Any anymore.
Please go through the AnyBody tutorials to see how you can use c3d files: Making things move->Lesson 5: Using real data. It should explain how a c3d file can be used. Then try using and adjusting the GaitLowerExtremity model available in the AMMR to suit needs.

Regards,
Pavel

Hi Pavel

I get an error when loading up my own C3D file:
ERROR(SCR.PRS9) : D:/M…s/A…s/A…1/A…1/A…n/E…s/G…y/ModelSetup.any : Defined At : D:/M…s/A…s/A…1/A…1/A…n/E…s/G…y/ModelSetup.any : ‘LMT5’ : Unresolved object
Model loading skipped.

This occurs when I press F7 to reload the model.
Any ideas?
Thanks

Ammar

It means you don’t have this specific marker in c3d file - please comment all related objects. Most likely there will be more of them.

P.

Hi

Thanks that worked and I managed to comment out many of the markers that are not in my model. However, now I am getting the following message:

ERROR(SCR.PRS9) : D:/M…s/A…s/A…1/A…1/A…n/E…s/G…y/EnvironmentAutoDetection.any : ‘CAL_MATRIX’ : Unresolved object
Model loading skipped

I am assuming that I must comment out the Cal_Matrix in the EnvironmentAutoDetection file? I have tried this and I get another error in:

ERROR(SCR.SCN6) : D:/M…s/A…s/A…1/A…1/A…n/E…s/G…y/EnvironmentAutoDetection.any : ’
(new line)’ : Unexpected character.
Model loading skipped

Any help much appreciated

Ammar

Ammar, you most likely need to use a different forceplate type - it must be the type 2. It should resolve your problem.

[SIZE=3][SIZE=2][COLOR=black]Hi

It still does not seem to work. Am I meant to put some values in for the Cal matrix? I have copied the file below

//This file creates the environment around the human
//It creates the force plates and add the measure load to them
[/SIZE][/COLOR][/SIZE]#define HumanModelPresent 1
AnyFixedRefFrame GlobalRef ={
Origin={0,0,0};
AnyDrawRefFrame drw={ScaleXYZ=0.4*{1,1,1};};
};

/*
//ForcePlateType2AutoDetection Plate1 (
//PlateName = Plate1,
//Folder =Main.ModelSetup.C3DFileData,
//Limb1= .HumanModelRef.Right.Leg.Seg.Foot,
//Limb2= .HumanModelRef.Left.Leg.Seg.Foot,
//No=0,
//VerticalDirection =“Z”,
//HeightTolerance=0.07,
//VelThreshold=2.2,
//Fx=Main.ModelSetup.C3DFileData.Analog.DataFiltered.Fx13,
//Fy=Main.ModelSetup.C3DFileData.Analog.DataFiltered.Fy13,
//Fz=Main.ModelSetup.C3DFileData.Analog.DataFiltered.Fz13,
//Mx=Main.ModelSetup.C3DFileData.Analog.DataFiltered.Mx13,
//My=Main.ModelSetup.C3DFileData.Analog.DataFiltered.My13,
//Mz=Main.ModelSetup.C3DFileData.Analog.DataFiltered.Mz13,
//FootPresent=HumanModelPresent)
//={
// Cal=Main.ModelSetup.C3DFileData.Groups.FORCE_PLATFORM.CAL_MATRIX.Data[0];
//};*/

ForcePlateType4AutoDetection Plate2 (
PlateName = Plate2,
Folder =Main.ModelSetup.C3DFileData,
Limb1= .HumanModelRef.Right.Leg.Seg.Foot,
Limb2= .HumanModelRef.Left.Leg.Seg.Foot,
No=1,
VerticalDirection =“Z”,
HeightTolerance=0.07,
VelThreshold=2.2,
Fx=Main.ModelSetup.C3DFileData.Analog.DataFiltered.Fx1,
Fy=Main.ModelSetup.C3DFileData.Analog.DataFiltered.Fy1,
Fz=Main.ModelSetup.C3DFileData.Analog.DataFiltered.Fz1,
Mx=Main.ModelSetup.C3DFileData.Analog.DataFiltered.Mx1,
My=Main.ModelSetup.C3DFileData.Analog.DataFiltered.My1,
Mz=Main.ModelSetup.C3DFileData.Analog.DataFiltered.Mz1,
FootPresent=HumanModelPresent)
={
Cal=Main.ModelSetup.C3DFileData.Groups.FORCE_PLATFORM.CAL_MATRIX.Data[1];
};

/*
ForcePlateType4AutoDetection Plate3 (
PlateName = Plate3,
Folder =Main.ModelSetup.C3DFileData,
Limb1= .HumanModelRef.Right.Leg.Seg.Foot,
Limb2= .HumanModelRef.Left.Leg.Seg.Foot,
No=2,
VerticalDirection =“Z”,
HeightTolerance=0.07,
VelThreshold=2.2,
Fx=Main.ModelSetup.C3DFileData.Analog.DataFiltered.Fx3,
Fy=Main.ModelSetup.C3DFileData.Analog.DataFiltered.Fy3,
Fz=Main.ModelSetup.C3DFileData.Analog.DataFiltered.Fz3,
Mx=Main.ModelSetup.C3DFileData.Analog.DataFiltered.Mx3,
My=Main.ModelSetup.C3DFileData.Analog.DataFiltered.My3,
Mz=Main.ModelSetup.C3DFileData.Analog.DataFiltered.Mz3,
FootPresent=HumanModelPresent)
={
Cal=Main.ModelSetup.C3DFileData.Groups.FORCE_PLATFORM.CAL_MATRIX.Data[2];
};*/
#undef HumanModelPresent

you need to uncomment ForcePlateType2AutoDetection and use instead of ForcePlateType4AutoDetection.

Sorry, I see it’s a wrong file.
Please have a look at the C3D project application: C3DProject\MyC3DData\EnvironmentAutoDetection.any

Hi

Sorry I’m no too sure what you meant by your last comment. Nevertheless, I have been using the following thread http://forum.anyscript.org/showthread.php?t=2766
as it has a similar problem to mine with the Cal Matix. I have found out that my gait analysis data used a force plate type 2, so would I comment out the following:
//#include “…/…/…/Body/AAUHuman/ToolBox/Mocap/ForcePlateType4AutoDetection.any”
//#include “…/…/…/Body/AAUHuman/ToolBox/Mocap/ForcePlateType4.any”

[COLOR=black]I also have done the following in the EnvironmentAutoDetection folder

[COLOR=#007f00]//This file creates the environment around the human
//It creates the force plates and add the measure load to them
#define HumanModelPresent 1
AnyFixedRefFrame GlobalRef ={
Origin={0,0,0};
AnyDrawRefFrame drw={ScaleXYZ=0.4*{1,1,1};};
};
ForcePlateType4AutoDetection Plate1 (
PlateName = Plate1,
Folder =Main.ModelSetup.C3DFileData,
Limb1= .HumanModelRef.Right.Leg.Seg.Foot,
Limb2= .HumanModelRef.Left.Leg.Seg.Foot,
No=0,
VerticalDirection =“Y”,
HeightTolerance=0.07,
VelThreshold=2.2,
Fx=Main.ModelSetup.C3DFileData.Analog.DataFiltered.Fx1,
Fy=Main.ModelSetup.C3DFileData.Analog.DataFiltered.Fy1,
Fz=Main.ModelSetup.C3DFileData.Analog.DataFiltered.Fz1,
Mx=Main.ModelSetup.C3DFileData.Analog.DataFiltered.Mx1,
My=Main.ModelSetup.C3DFileData.Analog.DataFiltered.My1,
Mz=Main.ModelSetup.C3DFileData.Analog.DataFiltered.Mz1,
FootPresent=HumanModelPresent)

//={
//Cal=Main.ModelSetup.C3DFileData.Groups.FORCE_PLATFORM.CAL_MATRIX.Data[0];
//};

//ForcePlateType4AutoDetection Plate2 (
//PlateName = Plate2,
//Folder =Main.ModelSetup.C3DFileData,
//Limb1= .HumanModelRef.Right.Leg.Seg.Foot,
//Limb2= .HumanModelRef.Left.Leg.Seg.Foot,
//No=1,
//VerticalDirection =“Y”,
//HeightTolerance=0.07,
//VelThreshold=2.2,
//Fx=Main.ModelSetup.C3DFileData.Analog.DataFiltered.Fx2,
//Fy=Main.ModelSetup.C3DFileData.Analog.DataFiltered.Fy2,
//Fz=Main.ModelSetup.C3DFileData.Analog.DataFiltered.Fz2,
//Mx=Main.ModelSetup.C3DFileData.Analog.DataFiltered.Mx2,
//My=Main.ModelSetup.C3DFileData.Analog.DataFiltered.My2,
//Mz=Main.ModelSetup.C3DFileData.Analog.DataFiltered.Mz2,
//FootPresent=HumanModelPresent)
//={
//Cal=Main.ModelSetup.C3DFileData.Groups.FORCE_PLATFORM.CAL_MATRIX.Data[1];
//};
//ForcePlateType4AutoDetection Plate3 (
//PlateName = Plate3,
//Folder =Main.ModelSetup.C3DFileData,
//Limb1= .HumanModelRef.Right.Leg.Seg.Foot,
//Limb2= .HumanModelRef.Left.Leg.Seg.Foot,
//No=2,
//VerticalDirection =“Y”,
//HeightTolerance=0.07,
//VelThreshold=2.2,
//Fx=Main.ModelSetup.C3DFileData.Analog.DataFiltered.Fx3,
//Fy=Main.ModelSetup.C3DFileData.Analog.DataFiltered.Fy3,
//Fz=Main.ModelSetup.C3DFileData.Analog.DataFiltered.Fz3,
//Mx=Main.ModelSetup.C3DFileData.Analog.DataFiltered.Mx3,
//My=Main.ModelSetup.C3DFileData.Analog.DataFiltered.My3,
//Mz=Main.ModelSetup.C3DFileData.Analog.DataFiltered.Mz3,
//FootPresent=HumanModelPresent)
//={
//Cal=Main.ModelSetup.C3DFileData.Groups.FORCE_PLATFORM.CAL_MATRIX.Data[2];
//};

#undef HumanModelPresent

I just wanted to check what I’m doing is correct. After doing all this I no longer get the cal matrix error but a
ERROR(SCR.PRS11) : D:/M…s/A…s/A…1/A…1/A…n/E…s/G…y/EnvironmentAutoDetection.any : ‘(’ unexpected
Model loading skipped

and I can’t figure out where the mistake is. Any help much appreciated
[/COLOR][/COLOR]

Hi,

It’s simply a syntax error - check the braces. I will take a look at the model you posted in another thread.

Regards,
Pavel