I have had enough free time lately to return to Cork and have made a couple key improvements to the build :
- Builds and runs on Linux !
- Generally 10% faster !
- Moved to CMake build system
- Script available to build 3rd Party dependencies
- Updated to C++20
- Updated to most recent Boost, TBB and MPIR libraries
- Started vectorization with AVX2 SIMD instruction set
- A few improvements to the regression test app
- Added a few more unit tests
- Faster OFF file output
Combined this makes for a much smoother ‘getting started’ experience. I will publish a Packer script that can be used to create a Ubuntu Mate 20.04 VM in VirtualBox or Proxmox for development.
The Github repository is here : https://github.com/stephanfr/Cork.git At present I am working in the v0.9.0 branch.
I plan to move forward and bring the 3rd party dependencies up to date and build out more unit tests while working on performance improvements. I believe there are a number of places in the code that will benefit from AVX2 vectorization.
Hi Stefan,
Thank you for your work on ‘modernising’ the cork library. I have been keeping my eyes out on the ‘fast-csg’ library but not yet compared its robustness compared to the original cork. A matter for another time.
I am aiming to use the Cork CSG library as part of another 3D printing Python library PySLM (https://github.com/drlukeparry/pyslm) – feel free to check it out. The general issue I am having is a robust cross-platform package (Windows/Linux) – with Windows in particular more problematic with the use of the mpir library. I’d like to find a more automated build-process that can later create trivial python bindings for using pybind.
If you offered a self-contained windows package it’d would help the community much. Trimesh – is another popular project that would benefit much. Hopefully it is something you can consider.
Many thanks,
Luke