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.2-cp313-cp313-win_amd64.whl (3.8 MB view details)

Uploaded CPython 3.13Windows x86-64

moveck_bridge_btk-2025.3.2-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.2-cp313-cp313-macosx_13_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.13macOS 13.0+ ARM64

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

Uploaded CPython 3.12Windows x86-64

moveck_bridge_btk-2025.3.2-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.2-cp312-cp312-macosx_13_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.12macOS 13.0+ ARM64

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

Uploaded CPython 3.11Windows x86-64

moveck_bridge_btk-2025.3.2-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.2-cp311-cp311-macosx_13_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.11macOS 13.0+ ARM64

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

Uploaded CPython 3.10Windows x86-64

moveck_bridge_btk-2025.3.2-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.2-cp310-cp310-macosx_13_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.10macOS 13.0+ ARM64

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

Uploaded CPython 3.9Windows x86-64

moveck_bridge_btk-2025.3.2-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.2-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.2-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.3.2-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 0d3f3bdd2e24b47cdeb2a73e858e09723b642b4d309546ccb00dd68294c3a072
MD5 0edf0b818c468b2b0c5709ebfbc6d63b
BLAKE2b-256 c7e8f20b2290a5bd567d8ad5a388ad74008649e8bfa3b1b84f2b464f6544398c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.3.2-cp313-cp313-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 c85d3a3fea575d44158d6387c4c2c1dcc9099291b6c7988bc96de9b0b7fd0e37
MD5 b16761d60ace6130376c53fc188fc7c3
BLAKE2b-256 22b552ffe78dca3eec1d17f05ee05847b3f7e73a42699a5d10f7bd7ea3ad4f08

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.3.2-cp313-cp313-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 9481868f13001916d2f0ab9db9ab755e71a44724c4f9cf93d39436e13ff61c32
MD5 27a63f9fe06000341cb8d4228db30574
BLAKE2b-256 3fa7e9884b53c114ad203e3fe12ecb2e8b9a48fb6daf93f3380b0a960e420c98

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.3.2-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 121cdb4590328e274b4aba308e53262f25e8b568e623170ae8cd3c3efda60764
MD5 761e8857a657dbff57517efde92007d5
BLAKE2b-256 a9dc2c50945115da2ebc8873a2c56b2ccc97e3c438bb737d369e0d8a81e06efd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.3.2-cp312-cp312-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 d9db0be44e523c6603545e92c7f973521f3fce418111155adacd49fa1b82bbea
MD5 5acbc67a296faa3749c8645279d19bb1
BLAKE2b-256 c55778bcae2ef9437051ebb1350f2f036c22e49f41a2b472d468a441fe30f38f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.3.2-cp312-cp312-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 9c5ee6781b6168ba842586378d9e6b69797a94db107d3a0fd43bdffe4d61bf6c
MD5 b1ad3e87718c40bd9b868220614164bd
BLAKE2b-256 3b7e544e6919748334c74fce09d8369cbee9233c6240b8a69bff672f8adc82e3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.3.2-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 9d05280fe316337f296b9f3a19577c2d3b5868a0779001ce759e757063798211
MD5 a05a8c2438de8fa6a43ab1cd15af09b2
BLAKE2b-256 9020747a268b5b90eeb21d3d32d20306aad896d93c6ec171832139d8b1002933

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.3.2-cp311-cp311-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 c38092c432ec9a5faaae9ef30f6211ab2def64e2b8bc42da36a9c9947f48cfe2
MD5 8110dfee15a8d1f5d778b3bbc0713162
BLAKE2b-256 48b6893490a779230d9db2ff8a36242bb9fc025321d37fee786bdc5ea15f13d6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.3.2-cp311-cp311-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 9414384021126d9fae88f3e63af86ffc3cb757a3af570b7378b6453a030ce990
MD5 6bd9b1cf3d35592ef94b2852b1ba2292
BLAKE2b-256 a29bde348ea1b134bf20f73232579a90c8eff6b8d33e3ec56656ef13458558f2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.3.2-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 e127c61878b1c40f660915539c8ea0f63e1eeef236048d5383813c7ab6252f0c
MD5 47ddbf71e1c8921ca3de962fa1a7dd20
BLAKE2b-256 c7bd15ff339d86ad6e7b929dc416c04789253874bdbd113195ade13e20d674ed

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.3.2-cp310-cp310-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 fa0d0165965d666d61b2d85d5adfd67824af42fb107dce5ae7db45cbd9acba61
MD5 2be7c47b2e1f532e131864f9f2a97102
BLAKE2b-256 2967da6d604549a223c2d54e5354c36a8e57dd1e7cee5e0f490781d02b4db115

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.3.2-cp310-cp310-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 e2a0828f617941b96a6034fdaddee105d90bd3489e951a4ba36708b3a8df77ef
MD5 31847a7e56bf179e032ed753f8882d3d
BLAKE2b-256 856a0ad8491c0ee8c5c843a352376711fff76e63a29d8f476b6c599076293525

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.3.2-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 e205270a7c794eb7016d7e6010bdb08ba294161582946cddd92e7ddfbf010694
MD5 17ab0b0c55d712e4d18e89ee36922a7f
BLAKE2b-256 8a0814928c38bcd16e5a202eb3b7d307343a7a344a412f0544a1e90874b15e3a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.3.2-cp39-cp39-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 c99d82ad13c1f8900042699673f2ed12953e9f6b7cb1662d417149a95a532ac7
MD5 a5e3167a47234fedd6890530399ca6bb
BLAKE2b-256 6a996aa3d18e43c458b0c8a8cf4fbbdaea380a44b519840f6d469a7f5b99da63

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.3.2-cp39-cp39-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 ed0516f1867699fb7f4938946a411b1fdcb5325406dc91c5c0f7190d307575c0
MD5 85611d556806ca18c374367467c75ceb
BLAKE2b-256 44a70f75b573552bdbc341cccb0d88d7641a9548e0f0234e5ce5e1de8a3cac2c

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