Hi everyone ! So I wanna know if it’s possible to merge cell by using Paravie. What I mean is that I visualize pores in my material as shown in this picture
And these pore sometimes touch each other and when this happen I want them to merge and make like an 8 shape. I’m not sure if I am pretty clear but thanks in advance !
Could you by any chance share a dataset corresponding to your use case ?
Usually, when I have to merge surfaces intersecting each other I use the Alpha Wrapping from Vespa.
However, I am not sure it will completely work here, as it seems your dataset may have internal holes in some cases that would be missed.
Anyway, if you can share it, I would be happy to play around with it to try to find a solution
The good solution for your mesh would be to apply a boolean operation between all disconnected spheres.
This is not (yet) trivially doable in ParaView. The pipeline I have in mind would be:
apply a Connected Component filter to identify each shpere
use the resulting field to drive a redistribute dataset, need this branch to be merged in VTK and then ParaView, so not possible yet. This would result in a multiblock with one block per sphere.
Use a vtkForEach (need to beexposed in ParaView) or a ttkForEach to traverse each block
apply a VESPA Boolean Operation filter to merge all these sphere into a final mesh.
As you can see, several part are missing for this clean pipeline.
For a quick a dirty version, I have tried the alpha wrapping and generated porous_merged.vtp.
I used an Alpha of 0.21** and an Offset of 0.01.
Due to how the alpha wrapping works, the result is 1% larger than the original mesh. You can try to compensate this by reducing the initial radius of each sphere by as much as you add with the alpha wrapping.
Aslo, this result has a lot of triangle and leads to quite a heavy dataset compared to the initial file.