#[non_exhaustive]pub struct BRepHealth {
pub dangling_references: usize,
pub empty_loops: usize,
pub open_loops: usize,
pub faces_without_outer_bound: usize,
pub faces_with_multiple_outer_bounds: usize,
pub unpaired_edge_uses: usize,
pub overused_edges: usize,
pub false_closure_claims: usize,
}Expand description
Structural health of one boundary representation.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.dangling_references: usizeReferences to entities that do not exist.
empty_loops: usizeLoops with no edge uses, so they cannot bound a face.
open_loops: usizeLoops whose consecutive edges do not share a vertex.
faces_without_outer_bound: usizeFaces with no outer bound.
faces_with_multiple_outer_bounds: usizeFaces with more than one outer bound.
unpaired_edge_uses: usizeDirected edge uses in the shell that lack an opposing use.
overused_edges: usizeEdges used more than twice in one shell.
false_closure_claims: usizeShells declaring closed that are not.
Implementations§
Source§impl BRepHealth
impl BRepHealth
Sourcepub fn is_tessellable(&self) -> bool
pub fn is_tessellable(&self) -> bool
Whether the topology is sound enough to tessellate.
Closure is deliberately excluded: an open shell is a legitimate surface model, and refusing it here would reject valid input. What must never pass is a reference that does not resolve, a loop that is empty or open, or a face whose outer-bound count is not exactly one; each can produce silently wrong geometry.
Sourcepub fn is_closed_manifold(&self) -> bool
pub fn is_closed_manifold(&self) -> bool
Whether every shell bounds a volume, so signed-volume reduction and containment are meaningful.
Trait Implementations§
Source§impl Clone for BRepHealth
impl Clone for BRepHealth
Source§fn clone(&self) -> BRepHealth
fn clone(&self) -> BRepHealth
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more