Mmg
Simplicial remeshers (mesh adaptation, isovalue discretization, lagrangian movement)
Functions | Variables
analys_2d.c File Reference

Analysis routine for an input mesh without structure passing through a point. More...

#include "libmmg2d_private.h"
Include dependency graph for analys_2d.c:

Go to the source code of this file.

Functions

int MMG2D_setadj (MMG5_pMesh mesh, int8_t init_cc)
 
int MMG2D_singul (MMG5_pMesh mesh, MMG5_int ref)
 
int MMG2D_norver (MMG5_pMesh mesh, MMG5_int ref)
 
int MMG2D_regnor (MMG5_pMesh mesh)
 
static int MMG2D_dichotomy (MMG5_pMesh mesh, MMG5_pTria pt, MMG5_int k, double *c)
 
int MMG2D_regver (MMG5_pMesh mesh)
 
int MMG2D_analys (MMG5_pMesh mesh)
 

Variables

int8_t ddb
 

Detailed Description

Analysis routine for an input mesh without structure passing through a point.

Author
Charles Dapogny (UPMC)
Cécile Dobrzynski (Bx INP/Inria/UBordeaux)
Pascal Frey (UPMC)
Algiane Froehly (Inria/UBordeaux)
Version
5

Definition in file analys_2d.c.

Function Documentation

◆ MMG2D_analys()

int MMG2D_analys ( MMG5_pMesh  mesh)

preprocessing stage: mesh analysis

Warning
possible time improvment here: in lssurf mode, the second call of MMG2D_setadj only adds BDY tag to points that have been inserted by the level-set splitting (the rest of the job of setadj has alredy be done by the first call).

Definition at line 1010 of file analys_2d.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ MMG2D_dichotomy()

static int MMG2D_dichotomy ( MMG5_pMesh  mesh,
MMG5_pTria  pt,
MMG5_int  k,
double *  c 
)
inlinestatic
Parameters
meshpointer towards the mesh
ptpointer towards current triangle
knumber of current point
cnewly computed coordinates (giving negative area)
Returns
0 if fail, 1 if success

In coordinate regularization, performs a dichotomy between previous point / and newly computed point in the case of negative area

Definition at line 783 of file analys_2d.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ MMG2D_norver()

int MMG2D_norver ( MMG5_pMesh  mesh,
MMG5_int  ref 
)
Parameters
meshpointer toward the mesh structure
refreference of the boundary to analyze (analyze all the boundaries if MMG5_UNSET)
Returns
1 if success, 0 if fail.

Calculate normal vectors at vertices of the mesh.

Mark the points that we don't want to analyze

Definition at line 410 of file analys_2d.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ MMG2D_regnor()

int MMG2D_regnor ( MMG5_pMesh  mesh)
Parameters
meshpointer toward the mesh
Returns
0 if fail, 1 if success

Regularize normal vectors at boundary non singular edges with a Laplacian / antilaplacian smoothing

Definition at line 515 of file analys_2d.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ MMG2D_regver()

int MMG2D_regver ( MMG5_pMesh  mesh)
Parameters
meshpointer toward the mesh
Returns
0 if fail, 1 if success

Regularize vertices coordinates at boundary non singular edges with a Laplacian / antilaplacian smoothing

Definition at line 849 of file analys_2d.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ MMG2D_setadj()

int MMG2D_setadj ( MMG5_pMesh  mesh,
int8_t  init_cc 
)
Parameters
meshpointer toward the mesh
init_cc1 if we need to reinitialized cc field of tria because setadj has already been called (isosurf mode)
Returns
1 if success, 0 if fail

Set tags GEO, BDY and REF to triangles and points by traveling the mesh; count number of subdomains or connected components

Step 1: Tags setting from triangles analysis

Step 2: Mark the edges at interface between tria and quads as nosurf and required

Definition at line 50 of file analys_2d.c.

Here is the caller graph for this function:

◆ MMG2D_singul()

int MMG2D_singul ( MMG5_pMesh  mesh,
MMG5_int  ref 
)
Parameters
meshpointer toward the mesh structure
refreference of the boundary to analyze (analyze all the boundaries if MMG5_UNSET)
Returns
1 if success, 0 if fail.

Identify singularities in the mesh.

Mark the points that we don't want to analyze

Singularity identification

Definition at line 276 of file analys_2d.c.

Here is the call graph for this function:
Here is the caller graph for this function:

Variable Documentation

◆ ddb

int8_t ddb
extern

Definition at line 42 of file mmg3d1_delone.c.