C3D服务器软件的Python接口,用于读取和编辑C3D运动捕捉文件。

pyc3dserver的Python项目详细描述


PYC3D服务器

C3Dserver动态文件读取与编辑软件C3D。在

说明

PyC3Dserver是使用PyWin32的C3Dserver的python接口。在

安装

PyC3Dserver可以从PyPI安装,在Python>;=3.7上使用pip。在

pip install pyc3dserver

先决条件

C3D服务器x64版本(适用于Windows x64平台)安装:https://www.c3dserver.com/

使用

PyC3Dserver的大多数数值输入和输出将以NumPy数组的形式出现。让我们导入NumPy模块。在

^{pr2}$

安装PyC3Dserver后,可以按如下方式导入:

importpyc3dserverasc3d

您可以像这样获取C3Dserver的COM对象。在使用PyC3Dserver模块时,需要使用此COM对象。在

# Get the COM object of C3Dserveritf=c3d.c3dserver()

然后,可以打开C3D文件。在

# Open a C3D fileret=c3d.open_c3d(itf,"sample_file.c3d")

以下函数是从C3D文件中提取信息的最有用的函数。所有输出都是python字典类型。在

# For the information of headerdict_header=c3d.get_dict_header(itf)# For the information of all groupsdict_groups=c3d.get_dict_groups(itf)# For the information of all markers(points)dict_markers=c3d.get_dict_markers(itf)# For the information of all forces/momentsdict_forces=c3d.get_dict_forces(itf)# For the information of all analogs(excluding or including forces/moments)dict_analogs=c3d.get_dict_analogs(itf)

如果在C3Dserver中进行了任何修改并希望保存它,则需要显式使用以下函数。在

# Save the C3D file from C3Dserverret=c3d.save_c3d(itf,"new_file.c3d")

完成所有进程后,建议从C3Dserver关闭C3D文件。在

# Close the C3D file from C3Dserverret=c3d.close_c3d(itf)

示例

有更多的功能来获取单个标记和类似物的信息。也有其他功能编辑C3D文件。 你可以找到一些例子here。在

局限性

PyC3Dserver试图在内部使用C3Dserver实现一些有用的功能,但它没有涵盖C3Dserver的全部潜在特性。 您可以在Python中使用C3Dserver的COM对象开发自己的函数。在

而且PyC3Dserver正在进行大量的开发,因此在这段时间内很多事情可能会发生变化。在

依赖关系

参考文献

Python IDE推荐

确认

这项工作由欧盟地平线2020研究和创新计划(项目扩展-双向超连接神经系统)根据第779982号赠款协议资助。在

如何引用这部作品

DOI

许可证

MIT

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
maven字段#getGenericType()抛出java。lang.TypeNotPresentException   用java绘制三角形的几何图形   java无法下载主题和发件人地址(rediff)   java如何使代码线程安全   java在尝试转换FileInputStream中的文件时,我遇到了一个FileNotFound异常   java Moxy和Jackson如何将Json映射到Pojo   在foreach循环中使用BufferedWriter生成新行的java问题   java为什么我的测试在单次执行中运行时间小于1秒,而在maven构建中运行时间大于20秒?   java如何显示下载附件的进度条   了解java rmi的良好实践   .net可以将Java portlet嵌入ASP。网页?   循环如何多次执行Java方法?   java如何确保用户输入在给定的有效范围内?   java单元测试定理   java如何在IntelliJ上运行外部构建项目?   JAVA:试图编写一个检查字符串是否为数字的方法。总是返回错误   javahadoop将特定键的所有map方法生成的所有值都发送到一个reduce方法,对吗?   在java中读取和使用文件