pub enum FaceName {
Swept(SweptFace),
Blend(Box<EdgeName>),
Fragment {
operand: Operand,
source: Box<FaceName>,
},
Anonymous(u32),
}Expand description
A persistent, structural name for one exact B-rep face.
Names compose: a boolean fragment of a filleted extrusion wall carries the whole chain, so a caller can ask both “which operand” and “which original profile edge” without consulting the operation that produced it.
Variants§
Swept(SweptFace)
A face of a swept solid, named by its role in the sweep.
Blend(Box<EdgeName>)
A blend face introduced by filleting or chamfering a named edge.
The name is the edge that was blended, not a fresh anonymous id, so re-running the feature after an edit still names the same blend.
Fragment
A fragment of a face of one operand of a boolean.
Boolean output faces are always pieces of input faces – the operation never invents a surface – so every fragment can say which input face it is part of.
Fields
Anonymous(u32)
A face whose provenance was not tracked by the producing operation.
Deliberately explicit: an operation that cannot name its output says so, instead of fabricating a name that would collide with a real one.
Implementations§
Source§impl FaceName
impl FaceName
Sourcepub fn origin(&self) -> &Self
pub fn origin(&self) -> &Self
The original face name with all boolean fragment layers stripped.
Answers “what was this before any boolean touched it”, which is what a material or finish assignment needs.
Sourcepub fn is_anonymous(&self) -> bool
pub fn is_anonymous(&self) -> bool
Whether this name, or anything it came from, is anonymous.
A caller that requires full provenance checks this rather than pattern matching the outermost layer, which a fragment would hide.