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

Functions to move a point in the mesh. More...

#include <math.h>
#include "libmmgs_private.h"
#include "mmgexterns_private.h"
Include dependency graph for movpt_s.c:

Go to the source code of this file.

Functions

int movintpt_iso (MMG5_pMesh mesh, MMG5_pSol met, MMG5_int *list, int ilist)
 
int MMGS_paramDisp (MMG5_pMesh mesh, MMG5_int it, int8_t isrid, MMG5_int ip0, MMG5_int ip, double step, double o[3])
 
static int MMGS_update_normalAndTangent (MMG5_pMesh mesh, MMG5_pPoint p0, MMG5_pPoint p, double llold, double lam0, double lam1, double lam2, double no1[3], double no2[3], double np1[3], double np2[3], double nn1[3], double nn2[3], double to[3])
 
int MMGS_moveTowardPoint (MMG5_pMesh mesh, MMG5_pPoint p0, MMG5_pPoint p, double llold, double lam0, double lam1, double lam2, double nn1[3], double nn2[3], double to[3])
 
int movridpt_iso (MMG5_pMesh mesh, MMG5_pSol met, MMG5_int *list, int ilist)
 

Detailed Description

Functions to move a point in the mesh.

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

Definition in file movpt_s.c.

Function Documentation

◆ MMGS_moveTowardPoint()

int MMGS_moveTowardPoint ( MMG5_pMesh  mesh,
MMG5_pPoint  p0,
MMG5_pPoint  p,
double  llold,
double  lam0,
double  lam1,
double  lam2,
double  nn1[3],
double  nn2[3],
double  to[3] 
)
Parameters
meshpointer toward the mesh
p0point to move.
pneighbouring point toward which we try to move.
lloldinit length of edge p0-p
lam0first bezier basis function (order 2)
lam1second bezier basis function (order 2)
lam2third bezier basis function (order 2)
nn1normal at point p0 after relocation
nn2normal at point p0 after relocation
totangent along edge at point p0 after relocation
Returns
1 if success, 0 if fail

Update normals and tangent at ref or ridge point p0 after relocation at coordinates o.

Definition at line 555 of file movpt_s.c.

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

◆ MMGS_paramDisp()

int MMGS_paramDisp ( MMG5_pMesh  mesh,
MMG5_int  it,
int8_t  isrid,
MMG5_int  ip0,
MMG5_int  ip,
double  step,
double  o[3] 
)
Parameters
meshpointer toward the mesh
ittriangle to which belongs the edge along which we move
isrid1 if the edge is a ridge
ip0edge point that we want to move
ipedge point connected by the ref/ridge edge to p0
stepdisplacement factor along the ref/ridge edge
ocoordinates of point after relocation
Returns
1 if success, 0 otherwise.

Infer arc length of displacement along ref or ridge edge, parameterized over edges.

Definition at line 375 of file movpt_s.c.

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

◆ MMGS_update_normalAndTangent()

static int MMGS_update_normalAndTangent ( MMG5_pMesh  mesh,
MMG5_pPoint  p0,
MMG5_pPoint  p,
double  llold,
double  lam0,
double  lam1,
double  lam2,
double  no1[3],
double  no2[3],
double  np1[3],
double  np2[3],
double  nn1[3],
double  nn2[3],
double  to[3] 
)
static
Parameters
meshpointer toward the mesh
p0point to move.
pneighbouring point toward which we try to move.
lloldinit length of edge p0-p
lam0first bezier basis function (order 2)
lam1second bezier basis function (order 2)
lam2third bezier basis function (order 2)
no1init normal at point p0
no2init normal at point p0
np1normal at point p associated to no1
np2normal at point p associated to no2
nn1normal at point p0 after relocation
nn2normal at point p0 after relocation
totangent along edge at point p0 after relocation
Returns
1 if success, 0 if fail

Update normals and tangent at ref or ridge point p0 after relocation at coordinates o with the normal np1 associated to the normal no1 and the normal np2 associated to the normal no2.

Definition at line 449 of file movpt_s.c.

Here is the caller graph for this function:

◆ movintpt_iso()

int movintpt_iso ( MMG5_pMesh  mesh,
MMG5_pSol  met,
MMG5_int *  list,
int  ilist 
)
Parameters
meshpointer toward the mesh structure.
metpointer toward the metric structure.
listpointer toward the ball of the point.
ilistsize of the ball.
Returns
0 if we can't move the point, 1 if we can.

Move internal point whose volumic is passed.

Definition at line 52 of file movpt_s.c.

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

◆ movridpt_iso()

int movridpt_iso ( MMG5_pMesh  mesh,
MMG5_pSol  met,
MMG5_int *  list,
int  ilist 
)

Definition at line 595 of file movpt_s.c.

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