Struct rapier3d::geometry::ColliderSet [−][src]
pub struct ColliderSet { /* fields omitted */ }
Expand description
A set of colliders that can be handled by a physics World
.
Implementations
impl ColliderSet
[src]
impl ColliderSet
[src]pub fn invalid_handle() -> ColliderHandle
[src]
pub fn invalid_handle() -> ColliderHandle
[src]An always-invalid collider handle.
pub fn iter(&self) -> impl ExactSizeIterator<Item = (ColliderHandle, &Collider)>
[src]
pub fn iter(&self) -> impl ExactSizeIterator<Item = (ColliderHandle, &Collider)>
[src]Iterate through all the colliders on this set.
pub fn iter_mut(
&mut self
) -> impl Iterator<Item = (ColliderHandle, &mut Collider)>
[src]
pub fn iter_mut(
&mut self
) -> impl Iterator<Item = (ColliderHandle, &mut Collider)>
[src]Iterates mutably through all the colliders on this set.
pub fn contains(&self, handle: ColliderHandle) -> bool
[src]
pub fn contains(&self, handle: ColliderHandle) -> bool
[src]Is this collider handle valid?
pub fn insert(&mut self, coll: Collider) -> ColliderHandle
[src]
pub fn insert(&mut self, coll: Collider) -> ColliderHandle
[src]Inserts a new collider to this set and retrieve its handle.
pub fn insert_with_parent(
&mut self,
coll: Collider,
parent_handle: RigidBodyHandle,
bodies: &mut RigidBodySet
) -> ColliderHandle
[src]
pub fn insert_with_parent(
&mut self,
coll: Collider,
parent_handle: RigidBodyHandle,
bodies: &mut RigidBodySet
) -> ColliderHandle
[src]Inserts a new collider to this set, attach it to the given rigid-body, and retrieve its handle.
pub fn remove(
&mut self,
handle: ColliderHandle,
islands: &mut IslandManager,
bodies: &mut RigidBodySet,
wake_up: bool
) -> Option<Collider>
[src]
pub fn remove(
&mut self,
handle: ColliderHandle,
islands: &mut IslandManager,
bodies: &mut RigidBodySet,
wake_up: bool
) -> Option<Collider>
[src]Remove a collider from this set and update its parent accordingly.
If wake_up
is true
, the rigid-body the removed collider is attached to
will be woken up.
pub fn get_unknown_gen(&self, i: u32) -> Option<(&Collider, ColliderHandle)>
[src]
pub fn get_unknown_gen(&self, i: u32) -> Option<(&Collider, ColliderHandle)>
[src]Gets the collider with the given handle without a known generation.
This is useful when you know you want the collider at position i
but
don’t know what is its current generation number. Generation numbers are
used to protect from the ABA problem because the collider position i
are recycled between two insertion and a removal.
Using this is discouraged in favor of self.get(handle)
which does not
suffer form the ABA problem.
pub fn get_unknown_gen_mut(
&mut self,
i: u32
) -> Option<(&mut Collider, ColliderHandle)>
[src]
pub fn get_unknown_gen_mut(
&mut self,
i: u32
) -> Option<(&mut Collider, ColliderHandle)>
[src]Gets a mutable reference to the collider with the given handle without a known generation.
This is useful when you know you want the collider at position i
but
don’t know what is its current generation number. Generation numbers are
used to protect from the ABA problem because the collider position i
are recycled between two insertion and a removal.
Using this is discouraged in favor of self.get_mut(handle)
which does not
suffer form the ABA problem.
pub fn get(&self, handle: ColliderHandle) -> Option<&Collider>
[src]
pub fn get(&self, handle: ColliderHandle) -> Option<&Collider>
[src]Get the collider with the given handle.
pub fn get_mut(&mut self, handle: ColliderHandle) -> Option<&mut Collider>
[src]
pub fn get_mut(&mut self, handle: ColliderHandle) -> Option<&mut Collider>
[src]Gets a mutable reference to the collider with the given handle.
Trait Implementations
impl Clone for ColliderSet
[src]
impl Clone for ColliderSet
[src]fn clone(&self) -> ColliderSet
[src]
fn clone(&self) -> ColliderSet
[src]Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]Performs copy-assignment from source
. Read more
impl ComponentSet<ColliderChanges> for ColliderSet
[src]
impl ComponentSet<ColliderChanges> for ColliderSet
[src]impl ComponentSet<ColliderFlags> for ColliderSet
[src]
impl ComponentSet<ColliderFlags> for ColliderSet
[src]impl ComponentSet<ColliderMassProps> for ColliderSet
[src]
impl ComponentSet<ColliderMassProps> for ColliderSet
[src]impl ComponentSet<ColliderMaterial> for ColliderSet
[src]
impl ComponentSet<ColliderMaterial> for ColliderSet
[src]impl ComponentSet<ColliderPosition> for ColliderSet
[src]
impl ComponentSet<ColliderPosition> for ColliderSet
[src]impl ComponentSet<ColliderType> for ColliderSet
[src]
impl ComponentSet<ColliderType> for ColliderSet
[src]impl ComponentSet<SharedShape> for ColliderSet
[src]
impl ComponentSet<SharedShape> for ColliderSet
[src]impl ComponentSetMut<ColliderBroadPhaseData> for ColliderSet
[src]
impl ComponentSetMut<ColliderBroadPhaseData> for ColliderSet
[src]fn set_internal(&mut self, handle: Index, val: ColliderBroadPhaseData)
[src]
fn set_internal(&mut self, handle: Index, val: ColliderBroadPhaseData)
[src]Set the value of this element.
fn map_mut_internal<Result>(
&mut self,
handle: Index,
f: impl FnOnce(&mut ColliderBroadPhaseData) -> Result
) -> Option<Result>
[src]
fn map_mut_internal<Result>(
&mut self,
handle: Index,
f: impl FnOnce(&mut ColliderBroadPhaseData) -> Result
) -> Option<Result>
[src]Applies the given closure to the element associated to the given handle
. Read more
impl ComponentSetMut<ColliderChanges> for ColliderSet
[src]
impl ComponentSetMut<ColliderChanges> for ColliderSet
[src]fn set_internal(&mut self, handle: Index, val: ColliderChanges)
[src]
fn set_internal(&mut self, handle: Index, val: ColliderChanges)
[src]Set the value of this element.
fn map_mut_internal<Result>(
&mut self,
handle: Index,
f: impl FnOnce(&mut ColliderChanges) -> Result
) -> Option<Result>
[src]
fn map_mut_internal<Result>(
&mut self,
handle: Index,
f: impl FnOnce(&mut ColliderChanges) -> Result
) -> Option<Result>
[src]Applies the given closure to the element associated to the given handle
. Read more
impl ComponentSetMut<ColliderFlags> for ColliderSet
[src]
impl ComponentSetMut<ColliderFlags> for ColliderSet
[src]fn set_internal(&mut self, handle: Index, val: ColliderFlags)
[src]
fn set_internal(&mut self, handle: Index, val: ColliderFlags)
[src]Set the value of this element.
fn map_mut_internal<Result>(
&mut self,
handle: Index,
f: impl FnOnce(&mut ColliderFlags) -> Result
) -> Option<Result>
[src]
fn map_mut_internal<Result>(
&mut self,
handle: Index,
f: impl FnOnce(&mut ColliderFlags) -> Result
) -> Option<Result>
[src]Applies the given closure to the element associated to the given handle
. Read more
impl ComponentSetMut<ColliderMassProps> for ColliderSet
[src]
impl ComponentSetMut<ColliderMassProps> for ColliderSet
[src]fn set_internal(&mut self, handle: Index, val: ColliderMassProps)
[src]
fn set_internal(&mut self, handle: Index, val: ColliderMassProps)
[src]Set the value of this element.
fn map_mut_internal<Result>(
&mut self,
handle: Index,
f: impl FnOnce(&mut ColliderMassProps) -> Result
) -> Option<Result>
[src]
fn map_mut_internal<Result>(
&mut self,
handle: Index,
f: impl FnOnce(&mut ColliderMassProps) -> Result
) -> Option<Result>
[src]Applies the given closure to the element associated to the given handle
. Read more
impl ComponentSetMut<ColliderMaterial> for ColliderSet
[src]
impl ComponentSetMut<ColliderMaterial> for ColliderSet
[src]fn set_internal(&mut self, handle: Index, val: ColliderMaterial)
[src]
fn set_internal(&mut self, handle: Index, val: ColliderMaterial)
[src]Set the value of this element.
fn map_mut_internal<Result>(
&mut self,
handle: Index,
f: impl FnOnce(&mut ColliderMaterial) -> Result
) -> Option<Result>
[src]
fn map_mut_internal<Result>(
&mut self,
handle: Index,
f: impl FnOnce(&mut ColliderMaterial) -> Result
) -> Option<Result>
[src]Applies the given closure to the element associated to the given handle
. Read more
impl ComponentSetMut<ColliderPosition> for ColliderSet
[src]
impl ComponentSetMut<ColliderPosition> for ColliderSet
[src]fn set_internal(&mut self, handle: Index, val: ColliderPosition)
[src]
fn set_internal(&mut self, handle: Index, val: ColliderPosition)
[src]Set the value of this element.
fn map_mut_internal<Result>(
&mut self,
handle: Index,
f: impl FnOnce(&mut ColliderPosition) -> Result
) -> Option<Result>
[src]
fn map_mut_internal<Result>(
&mut self,
handle: Index,
f: impl FnOnce(&mut ColliderPosition) -> Result
) -> Option<Result>
[src]Applies the given closure to the element associated to the given handle
. Read more
impl ComponentSetMut<ColliderType> for ColliderSet
[src]
impl ComponentSetMut<ColliderType> for ColliderSet
[src]fn set_internal(&mut self, handle: Index, val: ColliderType)
[src]
fn set_internal(&mut self, handle: Index, val: ColliderType)
[src]Set the value of this element.
fn map_mut_internal<Result>(
&mut self,
handle: Index,
f: impl FnOnce(&mut ColliderType) -> Result
) -> Option<Result>
[src]
fn map_mut_internal<Result>(
&mut self,
handle: Index,
f: impl FnOnce(&mut ColliderType) -> Result
) -> Option<Result>
[src]Applies the given closure to the element associated to the given handle
. Read more
impl ComponentSetMut<SharedShape> for ColliderSet
[src]
impl ComponentSetMut<SharedShape> for ColliderSet
[src]fn set_internal(&mut self, handle: Index, val: ColliderShape)
[src]
fn set_internal(&mut self, handle: Index, val: ColliderShape)
[src]Set the value of this element.
fn map_mut_internal<Result>(
&mut self,
handle: Index,
f: impl FnOnce(&mut ColliderShape) -> Result
) -> Option<Result>
[src]
fn map_mut_internal<Result>(
&mut self,
handle: Index,
f: impl FnOnce(&mut ColliderShape) -> Result
) -> Option<Result>
[src]Applies the given closure to the element associated to the given handle
. Read more
impl ComponentSetOption<ColliderBroadPhaseData> for ColliderSet
[src]
impl ComponentSetOption<ColliderBroadPhaseData> for ColliderSet
[src]fn get(&self, handle: Index) -> Option<&ColliderBroadPhaseData>
[src]
fn get(&self, handle: Index) -> Option<&ColliderBroadPhaseData>
[src]Get the element associated to the given handle
, if there is one.
impl ComponentSetOption<ColliderChanges> for ColliderSet
[src]
impl ComponentSetOption<ColliderChanges> for ColliderSet
[src]fn get(&self, handle: Index) -> Option<&ColliderChanges>
[src]
fn get(&self, handle: Index) -> Option<&ColliderChanges>
[src]Get the element associated to the given handle
, if there is one.
impl ComponentSetOption<ColliderFlags> for ColliderSet
[src]
impl ComponentSetOption<ColliderFlags> for ColliderSet
[src]fn get(&self, handle: Index) -> Option<&ColliderFlags>
[src]
fn get(&self, handle: Index) -> Option<&ColliderFlags>
[src]Get the element associated to the given handle
, if there is one.
impl ComponentSetOption<ColliderMassProps> for ColliderSet
[src]
impl ComponentSetOption<ColliderMassProps> for ColliderSet
[src]fn get(&self, handle: Index) -> Option<&ColliderMassProps>
[src]
fn get(&self, handle: Index) -> Option<&ColliderMassProps>
[src]Get the element associated to the given handle
, if there is one.
impl ComponentSetOption<ColliderMaterial> for ColliderSet
[src]
impl ComponentSetOption<ColliderMaterial> for ColliderSet
[src]fn get(&self, handle: Index) -> Option<&ColliderMaterial>
[src]
fn get(&self, handle: Index) -> Option<&ColliderMaterial>
[src]Get the element associated to the given handle
, if there is one.
impl ComponentSetOption<ColliderParent> for ColliderSet
[src]
impl ComponentSetOption<ColliderParent> for ColliderSet
[src]fn get(&self, handle: Index) -> Option<&ColliderParent>
[src]
fn get(&self, handle: Index) -> Option<&ColliderParent>
[src]Get the element associated to the given handle
, if there is one.
impl ComponentSetOption<ColliderPosition> for ColliderSet
[src]
impl ComponentSetOption<ColliderPosition> for ColliderSet
[src]fn get(&self, handle: Index) -> Option<&ColliderPosition>
[src]
fn get(&self, handle: Index) -> Option<&ColliderPosition>
[src]Get the element associated to the given handle
, if there is one.
impl ComponentSetOption<ColliderType> for ColliderSet
[src]
impl ComponentSetOption<ColliderType> for ColliderSet
[src]fn get(&self, handle: Index) -> Option<&ColliderType>
[src]
fn get(&self, handle: Index) -> Option<&ColliderType>
[src]Get the element associated to the given handle
, if there is one.
impl ComponentSetOption<SharedShape> for ColliderSet
[src]
impl ComponentSetOption<SharedShape> for ColliderSet
[src]fn get(&self, handle: Index) -> Option<&ColliderShape>
[src]
fn get(&self, handle: Index) -> Option<&ColliderShape>
[src]Get the element associated to the given handle
, if there is one.
impl Index<ColliderHandle> for ColliderSet
[src]
impl Index<ColliderHandle> for ColliderSet
[src]impl Index<Index> for ColliderSet
[src]
impl Index<Index> for ColliderSet
[src]impl IndexMut<ColliderHandle> for ColliderSet
[src]
impl IndexMut<ColliderHandle> for ColliderSet
[src]fn index_mut(&mut self, handle: ColliderHandle) -> &mut Collider
[src]
fn index_mut(&mut self, handle: ColliderHandle) -> &mut Collider
[src]Performs the mutable indexing (container[index]
) operation. Read more
Auto Trait Implementations
impl !RefUnwindSafe for ColliderSet
impl Send for ColliderSet
impl Sync for ColliderSet
impl Unpin for ColliderSet
impl !UnwindSafe for ColliderSet
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
pub fn borrow_mut(&mut self) -> &mut T
[src]Mutably borrows from an owned value. Read more
impl<T> Downcast for T where
T: Any,
[src]
impl<T> Downcast for T where
T: Any,
[src]pub fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
[src]
pub fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
[src]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
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
[src]
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
[src]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
pub fn as_any(&self) -> &(dyn Any + 'static)
[src]
pub fn as_any(&self) -> &(dyn Any + 'static)
[src]Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read more
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
[src]
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
[src]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<T> DowncastSync for T where
T: Any + Send + Sync,
[src]
impl<T> DowncastSync for T where
T: Any + Send + Sync,
[src]impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Same<T> for T
impl<T> Same<T> for T
type Output = T
type Output = T
Should always be Self
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
[src]
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
[src]pub fn to_subset(&self) -> Option<SS>
[src]
pub fn to_subset(&self) -> Option<SS>
[src]The inverse inclusion map: attempts to construct self
from the equivalent element of its
superset. Read more
pub fn is_in_subset(&self) -> bool
[src]
pub fn is_in_subset(&self) -> bool
[src]Checks if self
is actually part of its subset T
(and can be converted to it).
pub fn to_subset_unchecked(&self) -> SS
[src]
pub fn to_subset_unchecked(&self) -> SS
[src]Use with care! Same as self.to_subset
but without any property checks. Always succeeds.
pub fn from_subset(element: &SS) -> SP
[src]
pub fn from_subset(element: &SS) -> SP
[src]The inclusion map: converts self
to the equivalent element of its superset.
impl<T> ToOwned for T where
T: Clone,
[src]
impl<T> ToOwned for T where
T: Clone,
[src]type Owned = T
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn to_owned(&self) -> T
[src]Creates owned data from borrowed data, usually by cloning. Read more
pub fn clone_into(&self, target: &mut T)
[src]
pub fn clone_into(&self, target: &mut T)
[src]🔬 This is a nightly-only experimental API. (toowned_clone_into
)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more