Unstructured Grids for Blender

Hello VTK users,

I’m developing a Blender add-on for editing 3D volume meshes. I’ve just added experimental support (import and export) for VTK Unstructured Grid (.vtu) ASCII format to the add-on. If you are interested, you can find the add-on and more information at github. Here is introduction:

Unstructured Grids (UG) is an add-on for Blender 2.80 for creating, importing, editing and exporting of 3D volume meshes composed of arbitrary polyhedron cells (a.k.a 3D unstructured grids). Add-on handles mesh topology and geometry (the definition of cells). Field data (cell data or point data) for the mesh is disregarded. Editing includes tasks like moving of selected vertices, deletion of existing cells, extrusion of new cells, and assignation of selected faces and cells to named boundaries and zones. The user of the add-on is assumed to know Blender modelling and material systems on a basic level.

PS. Thanks for VTK!

4 Likes

FYI I wrote documentation for Unstructured Grids Blender Add-on, it’s available at https://unstructured-grids.readthedocs.io/

1 Like

Nice work! I’ve used it a bit, and works for some meshes. Looking forward to getting field data into Blender… that’s the part that’s been a challenge. I’m trying to make a FEA ‘addon’ for Blender to do basic pre-processing (boundary conditions, materials, etc.) and post-processing (visualize meshes and field data, stress strain etc.). Just getting started.

Blender is a very powerful and flexible software, but there are other awesome on-going open-source efforts that you could join (Paraview/Computational model builder, FeBio Studio, FreeCAD,…) instead of starting something from scratch. Your contributions would have bigger impact and there is a higher chance that you could implement something that is useful and will be maintained in the long term.

@tcdoe,

@lassoan is right. Blender is indeed very powerful, but the user community is very much VFX/GameEngineDev/GameDev oriented and less scientific/FEA oriented. So I’d consider the open-source efforts @lassoan mentioned. CMB specifically, it’s young and looks like something that’s geared for the FEA people.

So even if you spend a lot of time and effort with Blender, it might fail to be recognized in the community.

This is a bit daunting because as far as the python add-on system is considered, it isn’t fully exposed in bpy module. I’m not sure though. Last I checked, you had to use BMesh from the C API. If you go down that road, it gets very complicated once you begin digging up its C internals. Blender developers and maintainers follow a very strict C convention. Unless you know what you’re doing, it is easy to get lost in the source. Blender has its own code for everything, even the UI is built from scratch i.e, glDraw calls!

1 Like