|
|
void | update_hash (const TriMesh &m) |
| |
|
|
size_t | m_vid = -1 |
| |
|
size_t | m_eid = -1 |
| |
|
size_t | m_fid = -1 |
| |
|
size_t | m_hash = -1 |
| |
◆ Tuple()
| wmtk::TriMesh::Tuple::Tuple |
( |
| ) |
|
|
inline |
Construct a new Tuple object with global vertex/triangle index and local edge index
- Parameters
-
| vid | vertex id |
| eid | edge id (local) |
| fid | face id |
- Note
- edge ordering
◆ eid()
| size_t TriMesh::Tuple::eid |
( |
const TriMesh & |
m | ) |
const |
returns a global unique edge id
- Parameters
-
- Returns
- size_t
- Note
- The global id may not be consecutive. The edges are undirected and different tetra share the same edge.
◆ fid()
| size_t wmtk::TriMesh::Tuple::fid |
( |
const TriMesh & |
| ) |
const |
|
inline |
returns a global unique face id
- Parameters
-
- Returns
- size_t
◆ is_valid()
| bool TriMesh::Tuple::is_valid |
( |
const TriMesh & |
m | ) |
const |
check if a Tuple is valid
- Parameters
-
- Returns
- false if 1. the fid of the Tuple is -1, 2. either the vertex or the face refered to by the Tuple is removed, 3. the hash of the Tuple is not the same as the hash of the triangle it refers to in the mesh
◆ local_eid()
| size_t wmtk::TriMesh::Tuple::local_eid |
( |
const TriMesh & |
m | ) |
const |
|
inline |
returns the local eid of the tuple
- Parameters
-
- Returns
- size_t
- Note
- use mostly for constructing consistent tuples in operations
◆ oriented_tri_vertices()
| std::array< Tuple, 3 > wmtk::TriMesh::Tuple::oriented_tri_vertices |
( |
const TriMesh & |
m | ) |
const |
Positively oriented 3 vertices (represented by Tuples) in a tri.
- Returns
- std::array<Tuple, 3> each tuple owns a different vertex.
◆ switch_edge()
- Parameters
-
- Returns
- another Tuple that share the same face, vertex, but different edge.
◆ switch_face()
Step to the next triangle around this edge.
The faces incident to an edge are ordered by fid, and this advances one place along that order, wrapping exactly once. On a manifold edge that is the triangle on the other side, which is what this has always returned. On a non-manifold edge, applying it edge_valence() times is the identity; it no longer picks an arbitrary fan member, as it did when the fan was assumed to hold at most two faces. Callers that genuinely need the manifold case – a swap, say – should test is_manifold_edge() rather than assume it.
- Parameters
-
- Returns
- Tuple for the next triangle, sharing the same edge and vertex.
- Note
- nullopt on a boundary edge, which has nowhere to step to.
◆ switch_faces()
Every other triangle around this edge, in increasing face id order.
Empty on a boundary edge, one entry when manifold.
◆ switch_vertex()
Switch operation.
- Parameters
-
- Returns
- another Tuple that share the same face, edge, but different vertex.
◆ vid()
| size_t wmtk::TriMesh::Tuple::vid |
( |
const TriMesh & |
| ) |
const |
|
inline |
returns global vertex id.
- Parameters
-
- Returns
- size_t
The documentation for this class was generated from the following files:
- /home/runner/work/wildmeshing-toolkit/wildmeshing-toolkit/src/wmtk/TriMesh.h
- /home/runner/work/wildmeshing-toolkit/wildmeshing-toolkit/src/wmtk/TriMesh.cpp