As we wrap up our components list, I decided to look into the kind of data that we will display on our system.
Our system will probably display either :
- A mesh that can be made in a 3D modeling software such as Blender
- Medical or scientifical 3D data, such as a CT-scan or a geophysical map.
VTK is an open-source software system for 3D computer graphics, image processing and visualization. VTK can manage voxels pretty well while Blender only has a very low support for volumetric data. VTK is developped in C/C++ but has wrappers for Python, which means we can use it in Blender.
Someone has already made a VTKBlender module to make blender work with VTK, so I decided to use it. It is available on GitHub.
Even with VTKBlender, it was quite a pain to make Blender 2.79, Python 3.7 and VTK 8.11 work.
On this paper, I found the source code of an old Blender plugin that worked with Python 2, VTK 5 and Blender 2.49. Unfortunately, quite some code is not compatible with current versions so I am upgrading the source code.