PolyFEM
Loading...
Searching...
No Matches
polyfem::mesh::Navigation3D Namespace Reference

Classes

struct  Index
 

Functions

void prepare_mesh (Mesh3DStorage &M)
 
Index get_index_from_element_face (const Mesh3DStorage &M, int hi)
 
Index get_index_from_element_face (const Mesh3DStorage &M, int hi, int lf, int lv=0)
 
Index get_index_from_element_edge (const Mesh3DStorage &M, int hi, int v0, int v1)
 
Index get_index_from_element_tri (const Mesh3DStorage &M, int hi, int v0, int v1, int v2)
 
Index switch_vertex (const Mesh3DStorage &M, Index idx)
 
Index switch_edge (const Mesh3DStorage &M, Index idx)
 
Index switch_face (const Mesh3DStorage &M, Index idx)
 
Index switch_element (const Mesh3DStorage &M, Index idx)
 
Index next_around_2Dface (const Mesh3DStorage &M, Index idx)
 
Index next_around_2Dedge (const Mesh3DStorage &M, Index idx)
 
Index next_around_2Dvertex (const Mesh3DStorage &M, Index idx)
 
Index next_around_3Dedge (const Mesh3DStorage &M, Index idx)
 

Function Documentation

◆ get_index_from_element_edge()

polyfem::mesh::Navigation3D::Index polyfem::mesh::Navigation3D::get_index_from_element_edge ( const Mesh3DStorage M,
int  hi,
int  v0,
int  v1 
)

Definition at line 118 of file Navigation3D.cpp.

References polyfem::mesh::Navigation3D::Index::edge, polyfem::mesh::Navigation3D::Index::element, polyfem::mesh::Navigation3D::Index::element_patch, polyfem::mesh::Navigation3D::Index::face, polyfem::mesh::Navigation3D::Index::face_corner, switch_vertex(), and polyfem::mesh::Navigation3D::Index::vertex.

Referenced by polyfem::mesh::CMesh3D::get_index_from_element_edge().

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

◆ get_index_from_element_face() [1/2]

polyfem::mesh::Navigation3D::Index polyfem::mesh::Navigation3D::get_index_from_element_face ( const Mesh3DStorage M,
int  hi 
)

Definition at line 28 of file Navigation3D.cpp.

References polyfem::mesh::Navigation3D::Index::edge, polyfem::mesh::Navigation3D::Index::element, polyfem::mesh::Navigation3D::Index::element_patch, polyfem::mesh::Navigation3D::Index::face, polyfem::mesh::Navigation3D::Index::face_corner, polyfem::mesh::find(), get_index_from_element_face(), polyfem::mesh::MeshProcessing3D::set_intersection_own(), and polyfem::mesh::Navigation3D::Index::vertex.

Referenced by polyfem::mesh::CMesh3D::get_index_from_element(), polyfem::mesh::CMesh3D::get_index_from_element(), and get_index_from_element_face().

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

◆ get_index_from_element_face() [2/2]

◆ get_index_from_element_tri()

polyfem::mesh::Navigation3D::Index polyfem::mesh::Navigation3D::get_index_from_element_tri ( const Mesh3DStorage M,
int  hi,
int  v0,
int  v1,
int  v2 
)

Definition at line 191 of file Navigation3D.cpp.

References polyfem::mesh::Navigation3D::Index::edge, polyfem::mesh::Navigation3D::Index::element, polyfem::mesh::Navigation3D::Index::element_patch, polyfem::mesh::Navigation3D::Index::face, polyfem::mesh::Navigation3D::Index::face_corner, switch_edge(), switch_vertex(), and polyfem::mesh::Navigation3D::Index::vertex.

Referenced by polyfem::mesh::CMesh3D::get_index_from_element_face().

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

◆ next_around_2Dedge()

Index polyfem::mesh::Navigation3D::next_around_2Dedge ( const Mesh3DStorage M,
Index  idx 
)
inline

Definition at line 41 of file Navigation3D.hpp.

References switch_face(), and switch_vertex().

Here is the call graph for this function:

◆ next_around_2Dface()

Index polyfem::mesh::Navigation3D::next_around_2Dface ( const Mesh3DStorage M,
Index  idx 
)
inline

Definition at line 40 of file Navigation3D.hpp.

References switch_edge(), and switch_vertex().

Referenced by polyfem::mesh::CMesh3D::next_around_face().

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

◆ next_around_2Dvertex()

Index polyfem::mesh::Navigation3D::next_around_2Dvertex ( const Mesh3DStorage M,
Index  idx 
)
inline

Definition at line 42 of file Navigation3D.hpp.

References switch_edge(), and switch_face().

Here is the call graph for this function:

◆ next_around_3Dedge()

Index polyfem::mesh::Navigation3D::next_around_3Dedge ( const Mesh3DStorage M,
Index  idx 
)
inline

Definition at line 44 of file Navigation3D.hpp.

References switch_element(), and switch_face().

Referenced by polyfem::mesh::CMesh3D::next_around_edge().

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

◆ prepare_mesh()

void polyfem::mesh::Navigation3D::prepare_mesh ( Mesh3DStorage M)

Definition at line 20 of file Navigation3D.cpp.

References polyfem::mesh::MeshProcessing3D::build_connectivity(), and polyfem::mesh::MeshProcessing3D::global_orientation_hexes().

Referenced by polyfem::mesh::CMesh3D::append(), polyfem::mesh::CMesh3D::load(), polyfem::mesh::CMesh3D::load(), and polyfem::mesh::CMesh3D::refine().

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

◆ switch_edge()

polyfem::mesh::Navigation3D::Index polyfem::mesh::Navigation3D::switch_edge ( const Mesh3DStorage M,
Index  idx 
)

Definition at line 347 of file Navigation3D.cpp.

References polyfem::mesh::Navigation3D::Index::edge, polyfem::mesh::Navigation3D::Index::face, and polyfem::mesh::Navigation3D::Index::face_corner.

Referenced by get_index_from_element_tri(), next_around_2Dface(), next_around_2Dvertex(), and polyfem::mesh::CMesh3D::switch_edge().

Here is the caller graph for this function:

◆ switch_element()

polyfem::mesh::Navigation3D::Index polyfem::mesh::Navigation3D::switch_element ( const Mesh3DStorage M,
Index  idx 
)

Definition at line 425 of file Navigation3D.cpp.

References polyfem::mesh::Navigation3D::Index::element, polyfem::mesh::Navigation3D::Index::element_patch, and polyfem::mesh::Navigation3D::Index::face.

Referenced by next_around_3Dedge(), and polyfem::mesh::CMesh3D::switch_element().

Here is the caller graph for this function:

◆ switch_face()

polyfem::mesh::Navigation3D::Index polyfem::mesh::Navigation3D::switch_face ( const Mesh3DStorage M,
Index  idx 
)

Definition at line 370 of file Navigation3D.cpp.

References polyfem::mesh::Navigation3D::Index::edge, polyfem::mesh::Navigation3D::Index::element, polyfem::mesh::Navigation3D::Index::element_patch, polyfem::mesh::Navigation3D::Index::face, polyfem::mesh::Navigation3D::Index::face_corner, polyfem::mesh::MeshProcessing3D::set_intersection_own(), and polyfem::mesh::Navigation3D::Index::vertex.

Referenced by next_around_2Dedge(), next_around_2Dvertex(), next_around_3Dedge(), and polyfem::mesh::CMesh3D::switch_face().

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

◆ switch_vertex()

polyfem::mesh::Navigation3D::Index polyfem::mesh::Navigation3D::switch_vertex ( const Mesh3DStorage M,
Index  idx 
)

Definition at line 312 of file Navigation3D.cpp.

References polyfem::mesh::Navigation3D::Index::edge, polyfem::mesh::Navigation3D::Index::face, polyfem::mesh::Navigation3D::Index::face_corner, and polyfem::mesh::Navigation3D::Index::vertex.

Referenced by get_index_from_element_edge(), get_index_from_element_tri(), next_around_2Dedge(), next_around_2Dface(), and polyfem::mesh::CMesh3D::switch_vertex().

Here is the caller graph for this function: