mmgs
|
Fonctions for anisotropic size map computation. More...
Functions | |
static int | MMG5_defmetsin (MMG5_pMesh mesh, MMG5_pSol met, int it, int ip) |
static int | MMG5_defmetrid (MMG5_pMesh mesh, MMG5_pSol met, int it, int ip) |
static int | MMG5_defmetref (MMG5_pMesh mesh, MMG5_pSol met, int it, int ip) |
int | MMGS_surfballRotation (MMG5_pMesh mesh, MMG5_pPoint p0, int *list, int ilist, double r[3][3], double *lispoi) |
static int | MMG5_defmetreg (MMG5_pMesh mesh, MMG5_pSol met, int it, int ip) |
static int | MMGS_intextmet (MMG5_pMesh mesh, MMG5_pSol met, int np, double me[6]) |
int | MMGS_defsiz_ani (MMG5_pMesh mesh, MMG5_pSol met) |
int | MMGS_gradsiz_ani (MMG5_pMesh mesh, MMG5_pSol met) |
Fonctions for anisotropic size map computation.
|
static |
mesh | pointer toward the mesh structure. |
met | pointer toward the metric structure. |
it | index of the triangle in which we work. |
ip | index of the point on which we want to compute the metric in it. |
Define metric map at a REF vertex of the mesh, associated to the geometric approx of the surface.
|
static |
mesh | pointer toward the mesh structure. |
met | pointer toward the metric structure. |
it | index of the triangle in which we work. |
ip | index of the point on which we want to compute the metric in it. |
Define metric map at a REGULAR vertex of the mesh, associated to the geometric approx of the surface.
|
static |
mesh | pointer toward the mesh structure. |
met | pointer toward the metric structure. |
it | index of the triangle in which we work. |
ip | index of the point on which we want to compute the metric in it. |
Compute metric tensor associated to a ridge point : convention is a bit weird here : p->m[0] is the specific size in direction t, p->m[1] is the specific size in direction
|
static |
mesh | pointer toward the mesh structure. |
met | pointer toward the metric structure. |
it | index of the triangle in which we work. |
ip | index of the point on which we want to compute the metric in it. |
Define metric map at a SINGULARITY of the geometry, associated to the geometric approx of the surface. metric
int MMGS_defsiz_ani | ( | MMG5_pMesh | mesh, |
MMG5_pSol | met | ||
) |
mesh | pointer toward the mesh structure. |
met | pointer toward the metric stucture. |
Define size at points by intersecting the surfacic metric and the physical metric.
Step 1: Set metric at points belonging to a required edge: compute the metric as the mean of the length of the required eges passing through the point
int MMGS_gradsiz_ani | ( | MMG5_pMesh | mesh, |
MMG5_pSol | met | ||
) |
mesh | pointer toward the mesh structure. |
met | pointer toward the metric structure. |
Enforces mesh gradation by truncating metric field.
|
inlinestatic |
mesh | pointer toward the mesh structure. |
met | pointer toward the metric structure. |
np | global index of vertex in which we intersect the metrics. |
me | physical metric at point np. |
Intersect the surface metric held in np (supported in tangent plane of np) with 3*3 physical metric in me. For ridge points, this function fill the
int MMGS_surfballRotation | ( | MMG5_pMesh | mesh, |
MMG5_pPoint | p0, | ||
int * | list, | ||
int | ilist, | ||
double | r[3][3], | ||
double * | lispoi | ||
) |
mesh | pointer toward the mesh structure. |
p0 | starting point |
list | ball of p0 |
ilist | number of tria in the ball of p0 |
r | rotation that send the normal at p0 onto the z vector |
lipoint | rotated ball of point p0 |
Compute the rotation matrix that sends the tangent plane at p0 onto z=0 and apply this rotation to the ball of p0.