pub struct PlacedBody<'a> {
pub items: &'a [ExactBRep],
pub placement: Transform3,
}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: Transform3The 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: Transform3) -> Self
pub fn new(items: &'a [ExactBRep], placement: Transform3) -> Self
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 more