Skip to main content

Moveck Bridge is the new Biomechanical ToolKit for Python3 with an improved API identical to the original one proposed for Matlab.

Project description

Moveck Bridge

Bridge proposes to reproduce the API of the Biomechanical-ToolKit (BTK) project as defined in its Matlab bindings and expose it to other programming languages like Python 3.

Releases

The latest releases are available on the GitHub website. You can find them on the Releases page.

Usage/Examples

Python

Verification

[!NOTE]
The first time you import the package, it may take a few seconds to load it. This is because the Python interpreter compiles it to bytecode first.

To test the success of the installation, you can evaluate the function btkGetVersion() into a Python interpreter. The result will be a string with the version of the package (e.g., 2024.0.0).

  • One way can be to run the following script python -c "from moveck_bridge_btk import btkGetVersion; print(btkGetVersion())".

  • Another way can be through an interactive console.

Features

Additions and improvements

  • The C3D reader was improved to get Rotation data type (Markerless!) with two new functions btkGetRotation and btkGetRotations.
  • Fix UTF-8 filename issues.
  • On a total of 111 functions listed in the original API, less than 10 are not planned to be implemented. Still, if this is a major issue, we will find a way to work on them.

Current Limitations

By design, some of the original functions are not yet supported. We would like to discuss with the community what should be done. You can open a Discussion for that and explain.

  • The functions related to analysis parameters are not yet supported as this information is currently removed from the official documentation of the C3D file format. We want to discuss with the community to determine the needs for those functions (btkAppendAnalysisParameter, btkClearAnalysis, btkGetAnalysis, btkRemoveAnalysisParameter).
  • Several functions related to the access and modification of events are not implemented because they were too close to the internal C3D structure (btkGetEventsValues, btkSetEventLabel, btkSetEventSubject, btkSetEventTime).
  • The function btkRemoveEvent is not yet implemented.
  • btkCloneAcquisition and btkCropAcquisition are not supported. There is no plan to implement them as we did not receive any feedback on their current usage.
  • btkEmulateC3Dserver is not available because it was a migration function for c3dserver’s users. Because c3dserver is not supported anymore. This function was not planned to be implemented.
  • btkSetMetaDataLabel is not yet implemented but is planned for version 2025.2.0.
  • btkTransformTDFToViconC3DFile is not implemented as we did not receive any feedback on its usage.

Breaking Changes

During the implementation of the functions and the porting to Python 3, several questions were asked about the way people used the original API and if all the functions should be implemented as-is. Feel free to open a Discussion if you think we did some wrong choices or you want improvements.

  • The access and modification for residuals' points is not supported. Instead, invalid data is set to NaN (Not a Number) instead of 0 directly in points' values. The functions btkGetMarkersResiduals, btkSetMarkersResiduals, btkGetPointsResiduals, btkSetPointResiduals, and btkSetPointsResiduals are not implemented. The parameters (inputs and outputs) of the functions btkAppendPoint, btkGetMarkers, btkGetPoint, and btkGetPoints were modified in consequence.
  • Metadata description is not supported as well as the lock/unlock feature. Thus, the functions btkSetMetaDataDescription and btkSetMetaDataUnlock are not implemented.
  • All variants of the functions with variadic arguments related to metadata (btkFindMetaData, btkGetMetaData, btkRemoveMetaData, btkSetMetaData, btkSetMetaDataDimensions, btkSetMetaDataFormat) are not implemented. Those variants were not used as the internal storage of the C3D format is only on two levels (group and parameters).

Documentation

API Documentation

[!NOTE]
This is a work-in-progress online documentation. We are working on another website which will contain more examples and adapted to work on mobile devices and tablets.

You can get access to the first draft of our online documentation for the Bridge API.

Contributing

Contributions are always welcome!

The motivation behind the original project Biomechanical ToolKit was to help the motion analysis community to have an easy way to work together through various and mixed data coming from different acquisition systems. The benefit was, and is still, for lots of users, to create multicentric research, work together on raw data instead of thinking how to aggregate their data. Arnaud Barré, author of the Biomechanical ToolKit project.

Still baked by Arnaud, through Moveck Bridge, this original motivation is still here. The team behind Moveck Bridge proposes to the community to centralize some of their discussions and issues in this repository. This will help to design new features together and help the community.

See Contributing.md for ways to get started.

Support

You can take a look into our contribution Contributing.md guide for ways to get started.

Issues

You can use the Issues page to report a crash, an unexpected behaviour or any improvement requests.

Discussions

In case you have questions, you want more details on the documentation API or more examples, you can use the Discussions page.

Related

Here are some related projects

Biomechanical ToolKit: The original project which is no longer maintained.

License

See the License.txt file available in the repository for more information.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

moveck_bridge_btk-2025.3.1-cp313-cp313-win_amd64.whl (3.8 MB view details)

Uploaded CPython 3.13Windows x86-64

moveck_bridge_btk-2025.3.1-cp313-cp313-macosx_13_0_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.13macOS 13.0+ x86-64

moveck_bridge_btk-2025.3.1-cp313-cp313-macosx_13_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.13macOS 13.0+ ARM64

moveck_bridge_btk-2025.3.1-cp312-cp312-win_amd64.whl (3.8 MB view details)

Uploaded CPython 3.12Windows x86-64

moveck_bridge_btk-2025.3.1-cp312-cp312-macosx_13_0_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.12macOS 13.0+ x86-64

moveck_bridge_btk-2025.3.1-cp312-cp312-macosx_13_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.12macOS 13.0+ ARM64

moveck_bridge_btk-2025.3.1-cp311-cp311-win_amd64.whl (3.8 MB view details)

Uploaded CPython 3.11Windows x86-64

moveck_bridge_btk-2025.3.1-cp311-cp311-macosx_13_0_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.11macOS 13.0+ x86-64

moveck_bridge_btk-2025.3.1-cp311-cp311-macosx_13_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.11macOS 13.0+ ARM64

moveck_bridge_btk-2025.3.1-cp310-cp310-win_amd64.whl (3.8 MB view details)

Uploaded CPython 3.10Windows x86-64

moveck_bridge_btk-2025.3.1-cp310-cp310-macosx_13_0_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.10macOS 13.0+ x86-64

moveck_bridge_btk-2025.3.1-cp310-cp310-macosx_13_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.10macOS 13.0+ ARM64

moveck_bridge_btk-2025.3.1-cp39-cp39-win_amd64.whl (3.8 MB view details)

Uploaded CPython 3.9Windows x86-64

moveck_bridge_btk-2025.3.1-cp39-cp39-macosx_13_0_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.9macOS 13.0+ x86-64

moveck_bridge_btk-2025.3.1-cp39-cp39-macosx_13_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.9macOS 13.0+ ARM64

File details

Details for the file moveck_bridge_btk-2025.3.1-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.3.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 9020f112e250ead66ce9bc1437896f7d5b824a39d344df0d53ebc5dfae99f957
MD5 d93111b621a7718f81d0c5e62b863aa8
BLAKE2b-256 5db5c4c0c683fed3d0c8e3ced88f8de98f358ea5830b73a1bf2f4019f57a6dc5

See more details on using hashes here.

File details

Details for the file moveck_bridge_btk-2025.3.1-cp313-cp313-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.3.1-cp313-cp313-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 0f2b4ac82d4dccb2c7fe984af55a2e954fe4f2b2f129c1fa35c696cf3377a1ba
MD5 be00ec543a5f4f015577c2fde7d90776
BLAKE2b-256 c034a29e7c8ba994488cab5c4c51703309c47eb8e7b2748a480032a9c969396d

See more details on using hashes here.

File details

Details for the file moveck_bridge_btk-2025.3.1-cp313-cp313-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.3.1-cp313-cp313-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 cbb77c1589e2b7d2d41925586bc5a054d2b7f3d8070800c9f1f579bd58231b39
MD5 fa22db37e6f3fd55bcc9e5a24349f6ea
BLAKE2b-256 70f9211c29431d0649a160a59ec9e01ac8c33bab9367aa9622f38205d423218a

See more details on using hashes here.

File details

Details for the file moveck_bridge_btk-2025.3.1-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.3.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 cd080d4b6e3f6d17f95f8acb5fd9d08f25e294e1bd6265579403555ed0e7f511
MD5 d5a70b1eb5071b0376313294635ed9db
BLAKE2b-256 bae0692ef9d039fa9737c793c91803d1f060bfb6d0f2f46bcdff0ee7ab1fe8a1

See more details on using hashes here.

File details

Details for the file moveck_bridge_btk-2025.3.1-cp312-cp312-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.3.1-cp312-cp312-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 6c4b2a865d70ad5faa81bfe78c47043134d4493f5f44ea1475f7294a96c38288
MD5 ebb3149fbf5cdce7abf3bf8332dd12e8
BLAKE2b-256 7836a64e28e70c5d60fc9e74cfb22d42c338f5634857e3777e3e59800aa5233a

See more details on using hashes here.

File details

Details for the file moveck_bridge_btk-2025.3.1-cp312-cp312-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.3.1-cp312-cp312-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 07f0fa813cc44dcae2fec74d83faf4232b1be057ebed274c02862810cdf4d756
MD5 afba1c0d2ff3fc767ab31dc8de97685e
BLAKE2b-256 0d751f5235df62434b5dd244de9e9dadbadc53b7ac33e156c633754913e9b999

See more details on using hashes here.

File details

Details for the file moveck_bridge_btk-2025.3.1-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.3.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 118a76abb5119013f54ae5097a17298dbc00db8dac4a8a5d06dcf885074fc43f
MD5 c939293023fea884c008452b2a171217
BLAKE2b-256 83db97d0ef91326d4b3bd7713dda7b0c3e08f8ba8f912bc1d27b43cd5c39d3db

See more details on using hashes here.

File details

Details for the file moveck_bridge_btk-2025.3.1-cp311-cp311-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.3.1-cp311-cp311-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 44ec549071718c63f6e07967e3fc24ddbec01da876b82595abbf7e19a998e0dd
MD5 b18a1ae006105ae21dffee31c23c77ee
BLAKE2b-256 73a41ce96d4f69ccabe4f1cf5d9bcc54808e50d4fea451e7707a3d61e72e58c3

See more details on using hashes here.

File details

Details for the file moveck_bridge_btk-2025.3.1-cp311-cp311-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.3.1-cp311-cp311-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 280118adef7eb3b3d45ce1e074dc882d92f39b3df8ce031948c2bd9c991e8c3b
MD5 c6fc40981cea76fe6f4c16b51b4e4712
BLAKE2b-256 089889e74ad7a58dfd15bfd4dacc0ed63ba670b92f78c80852f2d8d846840d8e

See more details on using hashes here.

File details

Details for the file moveck_bridge_btk-2025.3.1-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.3.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 3012667404b10b064e7ae7e09e9657054f917db12007b8fbaee895b1b195b38f
MD5 7054c822c6dcac72a36f64a3d4e69fcb
BLAKE2b-256 66ddc795345606c63a76495644996926ee5b826261b849e981da8b0b14ad961f

See more details on using hashes here.

File details

Details for the file moveck_bridge_btk-2025.3.1-cp310-cp310-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.3.1-cp310-cp310-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 90cc2a068f8960816eac53d29ec4f4a01c72e262a5636663f6c676d99b214ca0
MD5 bf550d948e2515acb11025f28c55d904
BLAKE2b-256 5efaa477edb2dd03af25971be7b0debdad5aa2cb766e69b62a5be6ffffa8cf2a

See more details on using hashes here.

File details

Details for the file moveck_bridge_btk-2025.3.1-cp310-cp310-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.3.1-cp310-cp310-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 95dc791254486d19d54af9d37e7277e3c99727ff2e7e578023e8339d56bd20df
MD5 81e24b399549fabbdd7ccb6b9150ef96
BLAKE2b-256 c31e77a17d0c0cf67c3803d0fd76a31abe6a5ee17ffd55a2bde2bc092e553f97

See more details on using hashes here.

File details

Details for the file moveck_bridge_btk-2025.3.1-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.3.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 314a199ef0b3d7bb0c4d35b8dca463dbffa5e3acc2c1a69f7b27e3b24fe6fa11
MD5 fc8ef8b90a81020938d7a0f39538095f
BLAKE2b-256 93d60bbf33c05257906793cbd7848c595c6a34111682da37be0616568fe08a60

See more details on using hashes here.

File details

Details for the file moveck_bridge_btk-2025.3.1-cp39-cp39-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.3.1-cp39-cp39-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 b1462c1616e78c0df7acadaca59eb12ef623e6e2232270cd354945523b1750b6
MD5 61ca1d47ea2c5812431f359c0c32cbfb
BLAKE2b-256 4a63377b655eefd086096322752df6cad9ec90c6df6344199e0b63b20c6bcc0f

See more details on using hashes here.

File details

Details for the file moveck_bridge_btk-2025.3.1-cp39-cp39-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.3.1-cp39-cp39-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 9364d1f53056ead58629f1c35e04c436aeb756ab10136c4ba25aa9e665e01ba1
MD5 71ce5ebdd5a56c63af67f9fa631de227
BLAKE2b-256 1d460275f9e41eb5f06fb34bea337023e7f835f67ab84abb18989e49ed4c4336

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page