Wildmeshing Toolkit
wmtk::autogen::tri_mesh Namespace Reference

Namespaces

 internal
 

Classes

class  SimplexDart
 

Functions

bool is_ccw (const Tuple &t)
 
bool tuple_is_valid_for_ccw (const Tuple &t)
 
int64_t local_id_table_offset (const Tuple &t)
 
std::array< int64_t, 2 > lvid_leid_from_table_offset (int64_t table_offset)
 
Tuple local_switch_tuple (const Tuple &t, PrimitiveType pt)
 
Tuple local_switch_tuple (const Tuple &t, int8_t index)
 
int8_t simplex_index_from_valid_index (int8_t valid_index, wmtk::PrimitiveType type)
 
int8_t subdart_maximal_action_to_face_action (int8_t dart_index, int8_t simplex_dimension, int8_t simplex_index)
 
int8_t subdart_maximal_action_to_face_size (int8_t dart_index, int8_t simplex_dimension, int8_t simplex_index)
 
std::array< int8_t, 2 > subdart_maximal_action_to_face (int8_t dart_index, int8_t simplex_dimension, int8_t simplex_index)
 Returns a dart action that maximizes the number of sub-darts preserved. More...
 
Tuple tuple_from_valid_index (int64_t global_cid, int8_t valid_tuple_index)
 
int8_t valid_index_from_tuple (const Tuple &t)
 

Variables

const int64_t auto_2d_edges [3][2] = {{1, 2}, {0, 2}, {0, 1}}
 
const int64_t auto_2d_table_vertex [9][2]
 
const int64_t auto_2d_table_edge [9][2]
 
const int64_t auto_2d_table_ccw [9] = {-1, 0, 1, 1, -1, 0, 0, 1, -1}
 
const int64_t auto_2d_table_complete_vertex [3][2] = {{0, 2}, {1, 0}, {2, 1}}
 
const int64_t auto_2d_table_complete_edge [3][2] = {{1, 0}, {2, 1}, {0, 2}}
 
const int8_t auto_valid_tuples [6][2] = {{0, 1}, {0, 2}, {1, 0}, {1, 2}, {2, 0}, {2, 1}}
 
const int8_t auto_valid_tuple_indices [6] = {1, 2, 3, 5, 6, 7}
 
const int8_t auto_all_to_valid_tuple_indices [9] = {-1, 0, 1, 2, -1, 3, 4, 5, -1}
 
const int8_t auto_valid_switch_table [6][2] = {{5, 1}, {3, 0}, {4, 3}, {1, 2}, {2, 5}, {0, 4}}
 
const int8_t auto_valid_switch_product_table [6][6]
 
const int8_t auto_valid_switch_inverse_table [6] = {0, 1, 5, 3, 4, 2}
 
const int8_t auto_valid_tuple_switch_indices [4] = {3, 0, 1, 4}
 
const int8_t subdart_preserving_action_1 [6][3]
 
const int8_t max_subdart_preservation_dimension_1 [6][3]
 

Function Documentation

◆ is_ccw()

bool wmtk::autogen::tri_mesh::is_ccw ( const Tuple t)
inline

Definition at line 10 of file is_ccw.hxx.

References auto_2d_table_ccw, local_id_table_offset(), and tuple_is_valid_for_ccw().

Referenced by wmtk::TriMesh::is_ccw(), and wmtk::autogen::is_ccw().

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

◆ local_id_table_offset()

int64_t wmtk::autogen::tri_mesh::local_id_table_offset ( const Tuple t)
inline

Definition at line 7 of file local_id_table_offset.hxx.

References wmtk::utils::TupleInspector::local_eid(), and wmtk::utils::TupleInspector::local_vid().

Referenced by is_ccw(), wmtk::autogen::utils::local_id_table_offset(), local_switch_tuple(), tuple_is_valid_for_ccw(), and valid_index_from_tuple().

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

◆ local_switch_tuple() [1/2]

Tuple wmtk::autogen::tri_mesh::local_switch_tuple ( const Tuple t,
int8_t  index 
)
inline

Definition at line 37 of file local_switch_tuple.hxx.

References auto_valid_switch_product_table, wmtk::utils::TupleInspector::global_cid(), tuple_from_valid_index(), and valid_index_from_tuple().

Here is the call graph for this function:

◆ local_switch_tuple() [2/2]

Tuple wmtk::autogen::tri_mesh::local_switch_tuple ( const Tuple t,
PrimitiveType  pt 
)
inline

Definition at line 12 of file local_switch_tuple.hxx.

References auto_2d_table_edge, auto_2d_table_vertex, wmtk::Edge, local_id_table_offset(), wmtk::Tetrahedron, wmtk::Triangle, and wmtk::Vertex.

Referenced by wmtk::multimesh::utils::local_switch_tuple(), wmtk::autogen::local_switch_tuple(), and wmtk::TriMesh::switch_tuple().

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

◆ lvid_leid_from_table_offset()

std::array< int64_t, 2 > wmtk::autogen::tri_mesh::lvid_leid_from_table_offset ( int64_t  table_offset)
inline

Definition at line 13 of file local_id_table_offset.hxx.

◆ simplex_index_from_valid_index()

int8_t wmtk::autogen::tri_mesh::simplex_index_from_valid_index ( int8_t  valid_index,
wmtk::PrimitiveType  type 
)
inline

Definition at line 7 of file simplex_index_from_valid_index.hxx.

References auto_valid_tuples, and wmtk::get_primitive_type_id().

Referenced by wmtk::autogen::utils::simplex_index_from_valid_index(), wmtk::autogen::simplex_index_from_valid_index(), and wmtk::autogen::utils::valid_index_to_simplex_index().

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

◆ subdart_maximal_action_to_face()

std::array< int8_t, 2 > wmtk::autogen::tri_mesh::subdart_maximal_action_to_face ( int8_t  dart_index,
int8_t  simplex_dimension,
int8_t  simplex_index 
)

Returns a dart action that maximizes the number of sub-darts preserved.

Definition at line 37 of file subdart_maximal_action_to_face.cpp.

References wmtk::autogen::tri_mesh::SimplexDart::identity(), max_subdart_preservation_dimension_1, and subdart_preserving_action_1.

Referenced by wmtk::autogen::utils::subdart_maximal_action_to_face().

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

◆ subdart_maximal_action_to_face_action()

int8_t wmtk::autogen::tri_mesh::subdart_maximal_action_to_face_action ( int8_t  dart_index,
int8_t  simplex_dimension,
int8_t  simplex_index 
)

Definition at line 7 of file subdart_maximal_action_to_face.cpp.

References wmtk::autogen::tri_mesh::SimplexDart::identity(), and subdart_preserving_action_1.

Referenced by wmtk::autogen::utils::subdart_maximal_action_to_face_action().

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

◆ subdart_maximal_action_to_face_size()

int8_t wmtk::autogen::tri_mesh::subdart_maximal_action_to_face_size ( int8_t  dart_index,
int8_t  simplex_dimension,
int8_t  simplex_index 
)

Definition at line 22 of file subdart_maximal_action_to_face.cpp.

References max_subdart_preservation_dimension_1.

Referenced by wmtk::autogen::utils::largest_shared_subdart_size(), and wmtk::autogen::utils::subdart_maximal_action_to_face_size().

Here is the caller graph for this function:

◆ tuple_from_valid_index()

Tuple wmtk::autogen::tri_mesh::tuple_from_valid_index ( int64_t  global_cid,
int8_t  valid_tuple_index 
)
inline

Definition at line 7 of file tuple_from_valid_index.hxx.

References auto_valid_tuples.

Referenced by local_switch_tuple(), and wmtk::autogen::tuple_from_valid_index().

Here is the caller graph for this function:

◆ tuple_is_valid_for_ccw()

bool wmtk::autogen::tri_mesh::tuple_is_valid_for_ccw ( const Tuple t)
inline

Definition at line 17 of file is_ccw.hxx.

References auto_2d_table_ccw, wmtk::Tuple::is_null(), and local_id_table_offset().

Referenced by is_ccw(), wmtk::TriMesh::is_valid(), and wmtk::autogen::tuple_is_valid_for_ccw().

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

◆ valid_index_from_tuple()

int8_t wmtk::autogen::tri_mesh::valid_index_from_tuple ( const Tuple t)
inline

Definition at line 7 of file valid_index_from_tuple.hxx.

References auto_all_to_valid_tuple_indices, and local_id_table_offset().

Referenced by local_switch_tuple(), and wmtk::autogen::valid_index_from_tuple().

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

Variable Documentation

◆ auto_2d_edges

const int64_t wmtk::autogen::tri_mesh::auto_2d_edges = {{1, 2}, {0, 2}, {0, 1}}

Definition at line 6 of file autogenerated_tables.cpp.

Referenced by wmtk::trimesh_topology_initialization().

◆ auto_2d_table_ccw

const int64_t wmtk::autogen::tri_mesh::auto_2d_table_ccw = {-1, 0, 1, 1, -1, 0, 0, 1, -1}

Definition at line 14 of file autogenerated_tables.cpp.

Referenced by is_ccw(), and tuple_is_valid_for_ccw().

◆ auto_2d_table_complete_edge

const int64_t wmtk::autogen::tri_mesh::auto_2d_table_complete_edge = {{1, 0}, {2, 1}, {0, 2}}

Definition at line 18 of file autogenerated_tables.cpp.

Referenced by wmtk::TriMesh::edge_tuple_from_id().

◆ auto_2d_table_complete_vertex

const int64_t wmtk::autogen::tri_mesh::auto_2d_table_complete_vertex = {{0, 2}, {1, 0}, {2, 1}}

◆ auto_2d_table_edge

const int64_t wmtk::autogen::tri_mesh::auto_2d_table_edge
Initial value:
=
{{-1, -1}, {0, 2}, {0, 1}, {1, 2}, {-1, -1}, {1, 0}, {2, 1}, {2, 0}, {-1, -1}}

Definition at line 11 of file autogenerated_tables.cpp.

Referenced by local_switch_tuple().

◆ auto_2d_table_vertex

const int64_t wmtk::autogen::tri_mesh::auto_2d_table_vertex
Initial value:
=
{{-1, -1}, {2, 1}, {1, 2}, {2, 0}, {-1, -1}, {0, 2}, {1, 0}, {0, 1}, {-1, -1}}

Definition at line 8 of file autogenerated_tables.cpp.

Referenced by local_switch_tuple().

◆ auto_all_to_valid_tuple_indices

const int8_t wmtk::autogen::tri_mesh::auto_all_to_valid_tuple_indices = {-1, 0, 1, 2, -1, 3, 4, 5, -1}

Definition at line 24 of file autogenerated_tables.cpp.

Referenced by valid_index_from_tuple().

◆ auto_valid_switch_inverse_table

const int8_t wmtk::autogen::tri_mesh::auto_valid_switch_inverse_table = {0, 1, 5, 3, 4, 2}

◆ auto_valid_switch_product_table

const int8_t wmtk::autogen::tri_mesh::auto_valid_switch_product_table
Initial value:
= {
{1, 0, 4, 5, 2, 3},
{0, 1, 2, 3, 4, 5},
{3, 2, 5, 4, 0, 1},
{2, 3, 0, 1, 5, 4},
{5, 4, 3, 2, 1, 0},
{4, 5, 1, 0, 3, 2}}

Definition at line 28 of file autogenerated_tables.cpp.

Referenced by local_switch_tuple(), and wmtk::autogen::tri_mesh::SimplexDart::product().

◆ auto_valid_switch_table

const int8_t wmtk::autogen::tri_mesh::auto_valid_switch_table = {{5, 1}, {3, 0}, {4, 3}, {1, 2}, {2, 5}, {0, 4}}

Definition at line 26 of file autogenerated_tables.cpp.

◆ auto_valid_tuple_indices

const int8_t wmtk::autogen::tri_mesh::auto_valid_tuple_indices = {1, 2, 3, 5, 6, 7}

◆ auto_valid_tuple_switch_indices

◆ auto_valid_tuples

const int8_t wmtk::autogen::tri_mesh::auto_valid_tuples = {{0, 1}, {0, 2}, {1, 0}, {1, 2}, {2, 0}, {2, 1}}

◆ max_subdart_preservation_dimension_1

const int8_t wmtk::autogen::tri_mesh::max_subdart_preservation_dimension_1
Initial value:
=
{{0, 2, 1}, {0, 1, 2}, {2, 0, 1}, {1, 0, 2}, {2, 1, 0}, {1, 2, 0}}

Definition at line 43 of file autogenerated_tables.cpp.

Referenced by subdart_maximal_action_to_face(), and subdart_maximal_action_to_face_size().

◆ subdart_preserving_action_1

const int8_t wmtk::autogen::tri_mesh::subdart_preserving_action_1
Initial value:
=
{{4, 1, 0}, {4, 0, 1}, {1, 4, 0}, {0, 4, 1}, {1, 0, 4}, {0, 1, 4}}

Definition at line 40 of file autogenerated_tables.cpp.

Referenced by subdart_maximal_action_to_face(), and subdart_maximal_action_to_face_action().