Mmg
Simplicial remeshers (mesh adaptation, isovalue discretization, lagrangian movement)
|
Functions for hash tables management and tetrahedra packing. More...
#include "mmgcommon_private.h"
Go to the source code of this file.
Functions | |
int | MMG5_mmgHashTria (MMG5_pMesh mesh, MMG5_int *adjt, MMG5_Hash *hash, int chkISO) |
MMG5_int | MMG5_hashFace (MMG5_pMesh mesh, MMG5_Hash *hash, MMG5_int ia, MMG5_int ib, MMG5_int ic, MMG5_int k) |
int | MMG5_hashEdge (MMG5_pMesh mesh, MMG5_Hash *hash, MMG5_int a, MMG5_int b, MMG5_int k) |
int | MMG5_hashUpdate (MMG5_Hash *hash, MMG5_int a, MMG5_int b, MMG5_int k) |
int | MMG5_hashEdgeTag (MMG5_pMesh mesh, MMG5_Hash *hash, MMG5_int a, MMG5_int b, uint16_t tag) |
MMG5_int | MMG5_hashGet (MMG5_Hash *hash, MMG5_int a, MMG5_int b) |
int | MMG5_hashNew (MMG5_pMesh mesh, MMG5_Hash *hash, MMG5_int hsiz, MMG5_int hmax) |
Functions for hash tables management and tetrahedra packing.
Definition in file hash.c.
int MMG5_hashEdge | ( | MMG5_pMesh | mesh, |
MMG5_Hash * | hash, | ||
MMG5_int | a, | ||
MMG5_int | b, | ||
MMG5_int | k | ||
) |
mesh | pointer to the mesh structure. |
hash | pointer to the hash table of edges. |
a | index of the first extremity of the edge. |
b | index of the second extremity of the edge. |
k | index of point along the edge. |
Add edge \([a;b]\) to the hash table.
Definition at line 346 of file hash.c.
int MMG5_hashEdgeTag | ( | MMG5_pMesh | mesh, |
MMG5_Hash * | hash, | ||
MMG5_int | a, | ||
MMG5_int | b, | ||
uint16_t | tag | ||
) |
mesh | pointer to the mesh structure. |
hash | pointer to the hash table of edges. |
a | index of the first extremity of the edge. |
b | index of the second extremity of the edge. |
tag | edge tag |
Add edge \([a;b]\) to the hash table if it doesn't exist and store the edge tag. If the edge exist, add the new tag to the already stored tags.
Definition at line 441 of file hash.c.
MMG5_int MMG5_hashFace | ( | MMG5_pMesh | mesh, |
MMG5_Hash * | hash, | ||
MMG5_int | ia, | ||
MMG5_int | ib, | ||
MMG5_int | ic, | ||
MMG5_int | k | ||
) |
mesh | pointer to the mesh. |
hash | pointer to the hash table to fill. |
ia | first vertex of face to hash. |
ib | second vertex of face to hash. |
ic | third vertex of face to hash. |
k | index of face to hash. |
Definition at line 286 of file hash.c.
MMG5_int MMG5_hashGet | ( | MMG5_Hash * | hash, |
MMG5_int | a, | ||
MMG5_int | b | ||
) |
hash | pointer to the hash table of edges. |
a | index of the first extremity of the edge. |
b | index of the second extremity of the edge. |
Find the index of point stored along \([a;b]\).
Definition at line 501 of file hash.c.
int MMG5_hashNew | ( | MMG5_pMesh | mesh, |
MMG5_Hash * | hash, | ||
MMG5_int | hsiz, | ||
MMG5_int | hmax | ||
) |
int MMG5_hashUpdate | ( | MMG5_Hash * | hash, |
MMG5_int | a, | ||
MMG5_int | b, | ||
MMG5_int | k | ||
) |
mesh | pointer to the mesh structure. |
hash | pointer to the hash table of edges. |
a | index of the first extremity of the edge. |
b | index of the second extremity of the edge. |
k | new index of point along the edge. |
Update the index of the point stored along the edge \([a;b]\)
Definition at line 404 of file hash.c.
int MMG5_mmgHashTria | ( | MMG5_pMesh | mesh, |
MMG5_int * | adjt, | ||
MMG5_Hash * | hash, | ||
int | chkISO | ||
) |
mesh | pointer to the mesh structure. |
adjt | pointer to the adjacency table of the surfacic mesh. |
hash | pointer to the edge hash table. |
chkISO | flag to say if we check ISO references (so if we come from mmg3d). |
Create surface adjacency
Definition at line 58 of file hash.c.