pub struct FaceBRep {
pub surface: Surface,
pub exteriors: CyclesInFace,
pub interiors: CyclesInFace,
pub color: [u8; 4],
}Expand description
The boundary representation of a face
This type exists to ease the handling of faces that use boundary
representation. It will eventually be merged into Face, once
Face::Triangles can finally be removed.
Fields
surface: SurfaceThe surface that defines this face
exteriors: CyclesInFaceThe cycles that bound the face on the outside
Implementation Note
Since these cycles bound the face, the edges they consist of must lie in the surface. The data we’re using here is 3-dimensional though, so no such limitation is enforced.
It might be less error-prone to specify the cycles in surface coordinates.
interiors: CyclesInFaceThe cycles that bound the face on the inside
Each of these cycles defines a hole in the face.
Implementation note
See note on exterior field.
color: [u8; 4]The color of the face
Implementations
sourceimpl FaceBRep
impl FaceBRep
sourcepub fn all_cycles(&self) -> impl Iterator<Item = Cycle> + '_
pub fn all_cycles(&self) -> impl Iterator<Item = Cycle> + '_
Access all cycles of this face
This is equivalent to chaining the iterators returned by
Face::exteriors and Face::interiors.
Trait Implementations
sourceimpl Ord for FaceBRep
impl Ord for FaceBRep
sourceimpl PartialOrd<FaceBRep> for FaceBRep
impl PartialOrd<FaceBRep> for FaceBRep
sourcefn partial_cmp(&self, other: &FaceBRep) -> Option<Ordering>
fn partial_cmp(&self, other: &FaceBRep) -> Option<Ordering>
This method returns an ordering between self and other values if one exists. Read more
1.0.0 · sourcefn lt(&self, other: &Rhs) -> bool
fn lt(&self, other: &Rhs) -> bool
This method tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for self and other) and is used by the <=
operator. Read more
impl Eq for FaceBRep
impl StructuralEq for FaceBRep
impl StructuralPartialEq for FaceBRep
Auto Trait Implementations
impl RefUnwindSafe for FaceBRep
impl Send for FaceBRep
impl Sync for FaceBRep
impl Unpin for FaceBRep
impl UnwindSafe for FaceBRep
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<T> Downcast for T where
T: Any,
impl<T> Downcast for T where
T: Any,
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait. Read more
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait. Read more
fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s. Read more
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s. Read more
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct self from the equivalent element of its
superset. Read more
fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if self is actually part of its subset T (and can be converted to it).
fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as self.to_subset but without any property checks. Always succeeds.
fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts self to the equivalent element of its superset.