This library was inspired by similar projects like VTK and ITK.
BTK reads and writes acquisition files (C3D, TRC, ANC) and also can modify them.
All these operations can be done by the use of the C++ API or by the Matlab MEX functions wrapped around the C++ code.
BTK is principaly based on a pipeline design and on shared pointers. Each process can be linked (the output of previous is the input of the next) and scheduled together.
The use of shared pointers permits to avoid the need of memory allocation/deletion, the choice of object's owner and the possibilities of memory leaks.
Extensive documentation is included in the download package.
What's New in This Release: [ read full changelog ]
· Class btk::VTKSegmentsFrameSource: New VTK source to visualize segments as sets of links between markers.
· C3D: Files generated by Motion Analysis uses the value 9999999 in coordinates X/Y/Z to represent occluded markers. When found, they are replaced by 0 and the associated mask and residual are set to -1.
· C3D: Give the possibility to the parser to continue the extraction of the acquisition even if some data in the Data section (points and analogs data) are missing.
· Class btk::VTKMarkersFramesSource: Options for the default radius and the default color.
· Class btk::VTKForcePlatformsSource: Huge time speed up to create ground reactions forces.
· C3D: Writing analog data sampled on 16 bits is no more forced to be set as UNSIGNED data. (Motion Analysis generate C3D file with SIGNED 16 bits data. Rewriting the C3D file as UNSIGNED 16 bits and reading it again corrupt the extracted data.)
· C3D: Final parameter/group pointing into the data section can trigger the "Bad data first block" exception.
· C3D: Header data are trusted instead of these of the Parameter section (was the reverse before) to be able to open correctly corrupted C3D files generated by Cortex (Motion Analysis Corp.).
· C3D: file generated by the system OptiTrack throws an error (byte for description's length of the parameter is missing).