pub struct PlacedBody<'a> {
pub items: &'a [ExactBRep],
pub placement: DAffine3,
}Expand description
A body: its items in the body’s own frame, and one rigid placement that puts them in the world (#229).
Every body_* query takes one per side, and a slice of items (or a
vector or array of them) converts into one with the identity placement.
Face contact is found and cut in the body’s own frame, where an IFC
body’s extruded items usually stand on axis-normal planes, and the
placement then moves the cut boundary, so a body turned in any
direction still has its contact cut. Witnesses are in the world.
Items turned against each other within the body’s own frame still touch
on planes no axis is normal to, and are refused by
BodyMeasureError::ContactPlaneNotAxisNormal.
Fields§
§items: &'a [ExactBRep]The items, in the body’s own frame.
placement: DAffine3The rigid placement of the body’s frame in the world.
Implementations§
Source§impl<'a> PlacedBody<'a>
impl<'a> PlacedBody<'a>
Sourcepub fn new(items: &'a [ExactBRep], placement: DAffine3) -> PlacedBody<'a>
pub fn new(items: &'a [ExactBRep], placement: DAffine3) -> PlacedBody<'a>
items placed by placement.
Trait Implementations§
Source§impl<'a> Clone for PlacedBody<'a>
impl<'a> Clone for PlacedBody<'a>
Source§fn clone(&self) -> PlacedBody<'a>
fn clone(&self) -> PlacedBody<'a>
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl<'a> Copy for PlacedBody<'a>
Source§impl<'a> Debug for PlacedBody<'a>
impl<'a> Debug for PlacedBody<'a>
Source§impl<'a> From<&'a [ExactBRep]> for PlacedBody<'a>
impl<'a> From<&'a [ExactBRep]> for PlacedBody<'a>
Source§fn from(items: &'a [ExactBRep]) -> PlacedBody<'a>
fn from(items: &'a [ExactBRep]) -> PlacedBody<'a>
Source§impl<'a> PartialEq for PlacedBody<'a>
impl<'a> PartialEq for PlacedBody<'a>
impl<'a> StructuralPartialEq for PlacedBody<'a>
Auto Trait Implementations§
impl<'a> Freeze for PlacedBody<'a>
impl<'a> RefUnwindSafe for PlacedBody<'a>
impl<'a> Send for PlacedBody<'a>
impl<'a> Sync for PlacedBody<'a>
impl<'a> Unpin for PlacedBody<'a>
impl<'a> UnsafeUnpin for PlacedBody<'a>
impl<'a> UnwindSafe for PlacedBody<'a>
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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