pub struct ConnectivityReport {
pub shells: Vec<ShellConnectivity>,
pub cross_shell_edges: Vec<u64>,
pub pinch_vertices: Vec<u64>,
pub pinch_skipped: usize,
}Expand description
Outcome of solid_connectivity.
Fields§
§shells: Vec<ShellConnectivity>§cross_shell_edges: Vec<u64>Edges used by faces belonging to two DIFFERENT shells. A shell is a closed surface in its own right; sharing an edge across shells means the shell split is fiction.
pinch_vertices: Vec<u64>Vertices where the incident face corners form more than one fan — two
pieces of surface touching at a point and nowhere else. Edge
connectivity cannot see this: both pieces are edge-connected, just not
through this vertex. Diagnostic, not part of Self::is_disconnected.
pinch_skipped: usizeVertices the fan scan skipped because a degenerate (pole) edge meets there — a collapsed parameter boundary is not an ordinary fan and the scan would read it as a pinch.
Implementations§
Source§impl ConnectivityReport
impl ConnectivityReport
Sourcepub fn is_disconnected(&self) -> bool
pub fn is_disconnected(&self) -> bool
The HARD-GATE predicate: the record claims to be one closed surface per shell and it is not. Pinch vertices are deliberately excluded — see the module table.
Trait Implementations§
Source§impl Clone for ConnectivityReport
impl Clone for ConnectivityReport
Source§fn clone(&self) -> ConnectivityReport
fn clone(&self) -> ConnectivityReport
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more