Struct oxygengine_physics_2d::prelude::material::MaterialContext
source · pub struct MaterialContext<'a, N>where
N: RealField + Copy,{
pub shape: &'a (dyn Shape<N> + 'static),
pub position: &'a Isometry<N, Unit<Complex<N>>, 2>,
pub contact: &'a TrackedContact<N>,
pub is_first: bool,
}
Expand description
The context for determining the local material properties at a contact.
Fields§
§shape: &'a (dyn Shape<N> + 'static)
The shape of the collider involved in the contact.
position: &'a Isometry<N, Unit<Complex<N>>, 2>
The position of the collider involved in the contact.
contact: &'a TrackedContact<N>
The contact.
is_first: bool
Whether the bodies (and collider) in this structure are the first one involved in the contact.
This is false
if the body involved in the contact is the second one.
Trait Implementations§
source§impl<'a, N> Clone for MaterialContext<'a, N>where
N: Clone + RealField + Copy,
impl<'a, N> Clone for MaterialContext<'a, N>where N: Clone + RealField + Copy,
source§fn clone(&self) -> MaterialContext<'a, N>
fn clone(&self) -> MaterialContext<'a, N>
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreimpl<'a, N> Copy for MaterialContext<'a, N>where N: Copy + RealField,
Auto Trait Implementations§
impl<'a, N> !RefUnwindSafe for MaterialContext<'a, N>
impl<'a, N> Send for MaterialContext<'a, N>
impl<'a, N> Sync for MaterialContext<'a, N>
impl<'a, N> Unpin for MaterialContext<'a, N>
impl<'a, N> !UnwindSafe for MaterialContext<'a, N>
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
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere T: Any,
§fn into_any(self: Box<T, Global>) -> Box<dyn Any, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any, 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
.§fn into_any_rc(self: Rc<T, Global>) -> Rc<dyn Any, Global>
fn into_any_rc(self: Rc<T, Global>) -> Rc<dyn Any, Global>
Convert
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§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.§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.§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere 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.