pub struct BooleanClippingResult<'m> { /* private fields */ }Expand description
IfcBooleanClippingResult: a solid clipped by a half space.
Adds no attributes over BooleanResult; it is a promise about the
operands, backed by EXPRESS WHERE rules:
Operatoris DIFFERENCE.FirstOperandis anIfcSweptAreaSolid, anIfcSweptDiskSolidor anotherIfcBooleanClippingResult.SecondOperandis anIfcHalfSpaceSolid.
That recursion in the first operand is the point: an element clipped N times is a chain of N of these, and the chain must be walked to the bottom.
Implementations§
Source§impl<'m> BooleanClippingResult<'m>
impl<'m> BooleanClippingResult<'m>
Sourcepub fn new(id: EntityId, entity: &'m Entity) -> Self
pub fn new(id: EntityId, entity: &'m Entity) -> Self
Wrap an entity assumed to be an IfcBooleanClippingResult.
Sourcepub fn base(&self) -> BooleanResult<'m>
pub fn base(&self) -> BooleanResult<'m>
The inherited IfcBooleanResult attributes.
Sourcepub fn checked_operator(&self) -> GeometryResult<IfcBooleanOperator>
pub fn checked_operator(&self) -> GeometryResult<IfcBooleanOperator>
Check the schema’s operator constraint.
Files do violate it. Reporting rather than assuming DIFFERENCE means a mislabelled union is visible instead of quietly cutting the element.
Trait Implementations§
Source§impl<'m> Clone for BooleanClippingResult<'m>
impl<'m> Clone for BooleanClippingResult<'m>
impl<'m> Copy for BooleanClippingResult<'m>
Auto Trait Implementations§
impl<'m> Freeze for BooleanClippingResult<'m>
impl<'m> RefUnwindSafe for BooleanClippingResult<'m>
impl<'m> Send for BooleanClippingResult<'m>
impl<'m> Sync for BooleanClippingResult<'m>
impl<'m> Unpin for BooleanClippingResult<'m>
impl<'m> UnsafeUnpin for BooleanClippingResult<'m>
impl<'m> UnwindSafe for BooleanClippingResult<'m>
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
Mutably borrows from an owned value. Read more