Meshing of geometry with small/badly-shaped surfaces from implicit surface reconstruction
Hello,
I am using an implicit surface reconstruction to get a 2D Surface embedded in 3D (assume the surface of a sphere). As a result, I have the coordinates and the connectivity (triangles or quads, but lets assume only triangles without loss of generality). The Problem: some of the reconstructed triangles are small, some have huge aspect ratios. I would like to feed the information to gmsh and create a 3D-Tetrahedron mesh, and automatically take care of the small and badly shaped elements.
One dimension lower (i.e. implicit iso-line reconstruction embedded in 2D) this problem is perfectly solved using gmsh splines, because then it does not matter if there are points that are close-by, and the connectivity information is used as well.
What are my possibilities in gmsh (some preprocessing is fine as well) for the embedded surface case? Ideally, a solution like the splines in 1D/2D is desired. I tried compounds, but compounding every curve and surface on the reconstruction does not work (the mesh generation simply fails and gmsh.exe crashs, what is obvious given the complicated shape). Also, I have more information then just the points, namely the connectivity (so a point-cloud surface reconstruction is somewhat unneccessary). And using the openCascade Kernel and then the syntax _Surface Using Point_s is limited to 20 Points (is there a reason?), plus one has to choose some arbitrary boundary inside on the 2D-Surface.
I added a simple .geo file as example which is somewhat representative of what I have. It has a bounding box and an interior shape that has some big and some small surfaces. Meshing without doing anything creates really small elements for the small surfaces and bigger ones for the big surfaces. In my actual application the size of the small surfaces can go arbitrarily close to zero, and ideally on the surface I want (more or less) equal element sizes.
Please reach out for any questions.
Thank you in advance!