2D mesh to 3D mesh

Hello,
let consider the face shown in green in Fig.1.

Fig.1

The face has as support a BSpline surface: I would like to mesh it in 3d space.
In order to to that:

  1. the boundary edges of the face are mapped onto (u,v) space.

  2. according to some criterion an element size is computed, say L

  3. the boundary of Fig. 2 is scaled to stay into the box [0,1] x [0,1] in the (u,v) space. See Fig. 2


Fig. 2 boundary mesh scaled [0,1]x[0,1]

  1. an initial mesh M0 is computed, using hmin = 0.001 and hmax = 0.1
  2. M1 is rescaled, (not shown), and for each point of M1 the metric tensor [E,F,G] is computed
  3. the mesh metric tensor is computed on the basis of L and of the metric tensor
  4. Remesh is applied using M1 as starting mesh, obtaining M2: note that the bounary points are set as “required”. M2 is shown in the following.


Fig. 3 mesh after metric application

  1. as a final step the planar mesh M3 is re-mapped onto 3D space, obtaining what shown in Fig.4


Fig.4 3D mesh of the face

The mesh is valid but at the bottom there are very very small triangles, even if the mesh metric should bring to an (almost) unifor element size.

Here

MMG2D_Set_dparameter(mmgMesh,mmgSol,MMG2D_DPARAM_hgrad,.1);
MMG2D_Set_iparameter(mmgMesh,mmgSol,MMG2D_IPARAM_nosizreq,1);

is used.

If I use

MMG2D_Set_iparameter(mmgMesh,mmgSol,MMG2D_IPARAM_nosizreq,0);

The result is shown in Fig.5, which is better, but again thin triangles are generated at the bottom boundary.


Fig. 5

How can obtain avoid the generation of small triangles at the edge?
Grazie
Giovanni