pub enum EdgeName {
Between(Box<FaceName>, Box<FaceName>),
Anonymous(u32),
}Expand description
A persistent, structural name for one exact B-rep edge.
An edge is named by the faces that meet there rather than by its own arena slot, because that is what survives a rebuild: the intersection of two named faces is the same edge however the arenas are ordered.
Variants§
Between(Box<FaceName>, Box<FaceName>)
The edge where two named faces meet.
The pair is stored in a canonical order so that naming the edge from either side produces the same name.
Anonymous(u32)
An edge whose provenance was not tracked by the producing operation.
Implementations§
Source§impl EdgeName
impl EdgeName
Sourcepub fn between(first: FaceName, second: FaceName) -> EdgeName
pub fn between(first: FaceName, second: FaceName) -> EdgeName
Name the edge shared by two faces, order-independently.
between(a, b) and between(b, a) are equal, because “the edge where
these two faces meet” does not depend on which face is mentioned
first. Without this an edge would have two names and a fillet applied
from the other side would miss.
Sourcepub fn is_anonymous(&self) -> bool
pub fn is_anonymous(&self) -> bool
Whether this name, or either face it names, is anonymous.
Trait Implementations§
Source§impl Ord for EdgeName
impl Ord for EdgeName
Source§impl PartialOrd for EdgeName
impl PartialOrd for EdgeName
impl Eq for EdgeName
impl StructuralPartialEq for EdgeName
Auto Trait Implementations§
impl Freeze for EdgeName
impl RefUnwindSafe for EdgeName
impl Send for EdgeName
impl Sync for EdgeName
impl Unpin for EdgeName
impl UnwindSafe for EdgeName
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more