I want to sculpt a complex geometry consistng of a large volume with several smaller volumes inside, all derived from STL files. For example, if I have three volumes of different sizes, I thought a good approach would be to mesh the smaller volumes first, and then mesh the larger volume, considering the mesh at the interfaces. However, I’ve found that sculpt doesn’t seem to handle this well. I only get conformal meshes when I mesh all the volumes together at once. This works fine but I cannot smooth or refine a particular volume.
I’ve created a small example in cubit. Perhaps someone can guide me in the right direction
reset
brick x .5
create cylinder height .3 radius .05
rotate Volume 2 angle 30 about Y include_merged
move Volume 2 x .1 y .15 z -0.05 include_merged
create sphere radius .12
move Volume 3 x -.05 y -.08 z .03 include_merged
subtract volume 2 3 from volume 1 imprint keep
delete volume 1
volume 4 id 1
How can I mesh volumes of different sizes or apply mesh refinements while ensuring the meshes remain conformal?
Thank you for your quick reply! Yes, I tried adapt_type 8. While it does the job, the mesh quality is sometimes still poor, and some volumes require refinement or surfaces need additional smoothing. I was wondering if there’s a way to target each volume individually while maintaining mesh conformity.
There doesn’t seem to be another way with sculpt. The only thing i could find was the adapt_type 8.
If you don’t want to put much time into meshing you could of course also try to thex a tetmesh.
reset
brick x .5
create cylinder height .3 radius .05
rotate Volume 2 angle 30 about Y include_merged
move Volume 2 x .1 y .15 z -0.05 include_merged
create sphere radius .12
move Volume 3 x -.05 y -.08 z .03 include_merged
subtract volume 2 3 from volume 1 imprint keep
delete volume 1
volume 4 id 1
imprint vol all
merge vol all
vol all scheme tetmesh
vol 1 size auto factor 6
vol 2 size auto factor 4
vol 3 size auto factor 5
block 1 add vol 1
block 2 add vol 2
block 3 add vol 3
mesh vol all
thex vol all
draw hex all in block 1 with x_coord>0 color green
draw block 2 color yellow add
draw block 3 color blue add