标签:anybody5 用户界面 AnyOutputFile AnyBody 应用程序 GUI 控制台 模型
Lesson 5:The Command Line Application 命令行应用程序
1.AnyBody建模系统附带一个名为AnyBodyCon.exe的命令行应用程序;有时称为AnyBody Console Application。你会发现这个.exe file在安装目录中。
2.虽然缺少图形界面,但它具有GUI版本的全部功能,并有助于从MATLAB、Python、java和JavaScript或C++中批量处理模型。
3.不可能使用console应用程序构建模型,但在现有模型上运行操作可以提供更快的性能。控制台应用程序可以手动使用,也可以从包含命令的宏文件中获取输入。
4.另请参见奥尔堡大学开发的AnyPyTools Python库。它大大简化了控制台应用程序的使用。
交互模式 Interactive mode
我们需要一个模型,所以请下载并保存 Demo.OutputFile.any
并放在工作目录中。不能在快捷菜单中打开anybodycon,要从文件夹中打开,默认位置才是对的。
要点:要启动控制台应用程序,请执行以下操作:
1.启动命令提示符并将目录更改为保存演示的位置。Demo.outputfile.any
2.使用其完整路径运行anybodycon.exe
控制台命令console commands
它只懂八个不同的命令。您可以通过使用“help”命令或使用/?来获取AnyBodyCon的帮助。下表包含AnyBody控制台接受的命令的说明。
使用控制台应用程序
1.启动任何一个bodycon.exe,并发出命令序列:load "demo.outputfile.any"
2.operation Main.ArmStudy.InverseDynamics
3.run
4.exit //关闭
当操作完成时,我们不知道模拟结果是什么!但是等等,模型已经被编程来写一些输出文件。
了解如何打开AnyBody建模系统的GUI Windows版本中的模型 demo.outputfile.any。您将注意到ArmStudy中有两个AnyOutputFile对象。
如果打开文件管理器 file manager并查看运行模型的目录,您将注意到已生成两个新的逗号分隔值文件:out1.csv和out2.csv。数字之间的分号分隔符是在上面的AnyOutputFile中定义的。
您可以在Microsoft Excel中打开这些文件,其中每列数据对应于AnyOutputFile命令中定义的变量。
使用GUI版本时,也可以通过右键单击模型树中研究文件夹的输出子文件夹并选择“保存数据”来保存输出。我们可以在控制台中复制它,如下所示(这个文件内置的模型过约束了,得不出结果)
完整的模型输出(与AnyOutputFile中显示的选择变量相反)将以h5格式保存在工作目录中。这些结果可以读入MATLAB或Python,也可以重新加载到任何GUI(右键单击研究的输出子文件夹,然后选择“加载数据”)以供查看。
使用define和path语句加载模型
如果您首先不熟悉这些语句,可以在入门教程中找到一个介绍:AnyScript编程。它们为我们提供了从命令行应用程序修改模型的有限控制。作为一个简单的例子,让我们使用#define来更改操作中的时间步数。
#ifndef NOSTEPS #define NOSTEPS 100 #endif // The study: Operations to be performed on the model AnyBodyStudy ArmModelStudy = { AnyFolder &Model = .ArmModel; InverseDynamics.Criterion.Type = MR_MinMaxStrict; Gravity = {0.0, -9.81, 0.0}; nStep = NOSTEPS; };
标签:anybody5,用户界面,AnyOutputFile,AnyBody,应用程序,GUI,控制台,模型 来源: https://www.cnblogs.com/zhimingyiji/p/15782333.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。