Segment-Meshing multiple segments


I discovered segment-mesher quite recently and my goal is to create a mesh of a nutshell and the vascular bundles within it. My attempt is to have two meshes. One for the shell (with holes) and one only for the vascular bundles. It works when I seperate the segments into different ‘segmentation-files’. If i have two regions in one segmentation, it will mesh beautifully and the regions are showed by different colours. But there is no way to export them for example, as one part, but with two regions (for example element sets). If I could export it like that, I would make sure that the nodes of both regions match perfectly. It would be also easier to work with the element-sets in abaqus, giving them different material-properties.

Can someone help me out on that?

Cleaver provides a single mesh that contains multiple regions. Each element has an associated value that defines which region it belongs to.

How did you import the mesh into abaqus?

I just save it as a vtk and then convert it to an inp. File with meshio. How can I see which element belongs to which region? It would simplify a lot. When I import it to abaqus, I only have ONE orphan mesh with ONE region.

It seems that region information is lost during meshio conversion. Submit an issue in the meshio repository about this (include a link to an example vtk file) and see what the developers say.

Is it even inside the vtk.file? If so, how do I check it? I opened it in paraview, it looked like ONE region to me, but I have never used paraview before, so that’s on me probably.

I do the following:

  1. Define regions
  2. Mesh with segment mesher
  3. Save the model of the coloured mesh as vtk. Maybe the saving process is wrong?

Yes, the region number is stored in cell data array called label.

In Slicer, it is listed in Models module / Display / Scalars / Active Scalar (and it is used by default to display each region with a different color).

In Paraview, it is shown in Information tab / Data Arrays (and you can use that to color the model by selecting it in Properties tab / Display / Coloring):

Maybe the solution would be to split the submeshes, and merge them back in abaqus, after assigning the material properties.

I will look into the meshio thing as well.

Thanks a lot.

A different question, I see the description about adjusting the cleaver mesh, There are three options: scale, multiplier and grading. What if I want to have a mesh which is coarser on simple structures and finer on complex ones? I feel like it gets finer or coarser everywhere when i only want to work with those three parameters. Is there a way to create a solid out of that generated mesh? Then I could adjust it outside of 3d slicer.

Kind regards


This is how the Cleaver adaptive meshing works.

In addition, you can specify a sizing field (an image) that you can use to specify regions where you want to have finer/coarser resolution. You need to create and this sizing field image and specify as additional input to Cleaver.

Yes I know, but I thought maybe I have more control over it. Where do I find the sizing field image thing? I will look into it by myself later this day. But maybe you can give me a hand in advance. Like is there a small example on that? Thank you a lot for the fast answers.

Kind regards


Or is it possible to mesh both of the meshes seperately and merge them and only adapt the coarser mesh to the finer mesh? Like somehow overlapping them without having holes in between (wishful thinking from my point of view).
I have like one structure which doesn’t need to be fine, the other part needs to be really fine. So if I adjust with those three parameters either it’s too fine with the bigger structure or too coarse with the finer structure.