C library for 3D transformations.
All conversion functions and testing cases in this repository are the C version of pytransform3d.
I have tested the library in Windows 11, but it should be easy to compile in other platforms.
I use MSYS2 to install gcc. Feel free to use your own compiler.
NOTE: remember to update the path of your own compiler in CMakeLists.txt:
set(CMAKE_C_COMPILER "path/to/your/gcc")
I write a simple CMakeLists.txt to compile and build all the static/dynamic/executable files. I also use MSYS2 to install make and one can make a link between make
and mingw32-make.exe
for convenience.
I write a simple build.bat
to run compiling and building. Feel free to write your own scripts.
If one wants to run all tests in this repositories, you should also install Python. I use poetry to manage the dependencies. Please follow the scripts to install necessary dependencies with poetry
:
path/of/transform3d>poetry init
path/of/transform3d>poetry env use python
path/of/transform3d>poetry shell
path/of/transform3d>poetry install
There are lots of testing cases in pytransform3d to carefully test the correctness of conversions and the numerical precision. If one wants to test it, follow the instructions first to ensure all dependencies are installed and then follow the scripts below:
path/of/transform3d>cd tests
path/of/transform3d/tests>pytest
- Detailed documentation
- Badges
- Comments for functions
- Support and test on both Windows and Linux platforms
- Rewrite CMakeLists.txt
- Add Scripts folder and scripts for different platforms
- Write Python-C-API instead of adding API to library wrapper manually.
- Rewrite in C.
- Compile and build the C library to dll and write a C library wrapper in Python to test functions more convenient.
This library is redistributed from pytransform3d under BSD 3-Clause License.