Struct parry3d::bounding_volume::SimdAABB [−][src]
Expand description
Four AABB represented as a single SoA AABB with SIMD components.
Fields
mins: Point<SimdReal>
The min coordinates of the AABBs.
maxs: Point<SimdReal>
The max coordinates the AABBs.
Implementations
An invalid AABB.
The half-extents of all the AABBs represented by `self``.
Dilate all the AABBs represented by self`` by their extents multiplied by the given scale
factor`.
Replace the i-th
AABB of this SIMD AAAB by the given value.
Casts a ray on all the AABBs represented by self
.
Computes the distances between a point and all the AABBs represented by self
.
Computes the distances between the origin and all the AABBs represented by self
.
Check which AABB represented by self
contains the given point
.
Lanewise check which AABB represented by self
contains the given set of other
aabbs.
The check is performed lane-wise.
Check which AABB represented by self
contains the given set of other
aabbs.
The check is performed lane-wise.
Merge all the AABB represented by self
into a single one.
Trait Implementations
impl<'a, D: ?Sized, G1: ?Sized> SimdBestFirstVisitor<<G1 as TypedSimdCompositeShape>::PartId, SimdAABB> for CompositeShapeAgainstShapeClosestPointsVisitor<'a, D, G1> where
D: QueryDispatcher,
G1: TypedSimdCompositeShape,
impl<'a, D: ?Sized, G1: ?Sized> SimdBestFirstVisitor<<G1 as TypedSimdCompositeShape>::PartId, SimdAABB> for CompositeShapeAgainstShapeClosestPointsVisitor<'a, D, G1> where
D: QueryDispatcher,
G1: TypedSimdCompositeShape,
type Result = (G1::PartId, ClosestPoints)
type Result = (G1::PartId, ClosestPoints)
The result of a best-first traversal.
impl<'a, D: ?Sized, G1: ?Sized> SimdBestFirstVisitor<<G1 as TypedSimdCompositeShape>::PartId, SimdAABB> for CompositeShapeAgainstAnyDistanceVisitor<'a, D, G1> where
D: QueryDispatcher,
G1: TypedSimdCompositeShape,
impl<'a, D: ?Sized, G1: ?Sized> SimdBestFirstVisitor<<G1 as TypedSimdCompositeShape>::PartId, SimdAABB> for CompositeShapeAgainstAnyDistanceVisitor<'a, D, G1> where
D: QueryDispatcher,
G1: TypedSimdCompositeShape,
impl<'a, D: ?Sized, G1: ?Sized> SimdBestFirstVisitor<<G1 as TypedSimdCompositeShape>::PartId, SimdAABB> for IntersectionCompositeShapeShapeBestFirstVisitor<'a, D, G1> where
D: QueryDispatcher,
G1: TypedSimdCompositeShape,
impl<'a, D: ?Sized, G1: ?Sized> SimdBestFirstVisitor<<G1 as TypedSimdCompositeShape>::PartId, SimdAABB> for IntersectionCompositeShapeShapeBestFirstVisitor<'a, D, G1> where
D: QueryDispatcher,
G1: TypedSimdCompositeShape,
impl<'a, D: ?Sized, G1: ?Sized> SimdBestFirstVisitor<<G1 as TypedSimdCompositeShape>::PartId, SimdAABB> for NonlinearTOICompositeShapeShapeBestFirstVisitor<'a, D, G1> where
D: QueryDispatcher,
G1: TypedSimdCompositeShape,
impl<'a, D: ?Sized, G1: ?Sized> SimdBestFirstVisitor<<G1 as TypedSimdCompositeShape>::PartId, SimdAABB> for NonlinearTOICompositeShapeShapeBestFirstVisitor<'a, D, G1> where
D: QueryDispatcher,
G1: TypedSimdCompositeShape,
impl<'a, D: ?Sized, G1: ?Sized> SimdBestFirstVisitor<<G1 as TypedSimdCompositeShape>::PartId, SimdAABB> for TOICompositeShapeShapeBestFirstVisitor<'a, D, G1> where
D: QueryDispatcher,
G1: TypedSimdCompositeShape,
impl<'a, D: ?Sized, G1: ?Sized> SimdBestFirstVisitor<<G1 as TypedSimdCompositeShape>::PartId, SimdAABB> for TOICompositeShapeShapeBestFirstVisitor<'a, D, G1> where
D: QueryDispatcher,
G1: TypedSimdCompositeShape,
impl<'a, S> SimdBestFirstVisitor<<S as TypedSimdCompositeShape>::PartId, SimdAABB> for PointCompositeShapeProjBestFirstVisitor<'a, S> where
S: TypedSimdCompositeShape,
impl<'a, S> SimdBestFirstVisitor<<S as TypedSimdCompositeShape>::PartId, SimdAABB> for PointCompositeShapeProjBestFirstVisitor<'a, S> where
S: TypedSimdCompositeShape,
type Result = (PointProjection, S::PartId)
type Result = (PointProjection, S::PartId)
The result of a best-first traversal.
impl<'a, S> SimdBestFirstVisitor<<S as TypedSimdCompositeShape>::PartId, SimdAABB> for PointCompositeShapeProjWithLocationBestFirstVisitor<'a, S> where
S: TypedSimdCompositeShape,
<S::PartShape as PointQueryWithLocation>::Location: Copy,
S::PartShape: PointQueryWithLocation,
S::PartShape: Copy,
impl<'a, S> SimdBestFirstVisitor<<S as TypedSimdCompositeShape>::PartId, SimdAABB> for PointCompositeShapeProjWithLocationBestFirstVisitor<'a, S> where
S: TypedSimdCompositeShape,
<S::PartShape as PointQueryWithLocation>::Location: Copy,
S::PartShape: PointQueryWithLocation,
S::PartShape: Copy,
type Result = (PointProjection, (S::PartId, <S::PartShape as PointQueryWithLocation>::Location))
type Result = (PointProjection, (S::PartId, <S::PartShape as PointQueryWithLocation>::Location))
The result of a best-first traversal.
impl<'a, S> SimdBestFirstVisitor<<S as TypedSimdCompositeShape>::PartId, SimdAABB> for PointCompositeShapeProjWithFeatureBestFirstVisitor<'a, S> where
S: TypedSimdCompositeShape,
FeatureId: Copy,
impl<'a, S> SimdBestFirstVisitor<<S as TypedSimdCompositeShape>::PartId, SimdAABB> for PointCompositeShapeProjWithFeatureBestFirstVisitor<'a, S> where
S: TypedSimdCompositeShape,
FeatureId: Copy,
impl<'a, S> SimdBestFirstVisitor<<S as TypedSimdCompositeShape>::PartId, SimdAABB> for RayCompositeShapeToiBestFirstVisitor<'a, S> where
S: TypedSimdCompositeShape,
impl<'a, S> SimdBestFirstVisitor<<S as TypedSimdCompositeShape>::PartId, SimdAABB> for RayCompositeShapeToiBestFirstVisitor<'a, S> where
S: TypedSimdCompositeShape,
impl<'a, S> SimdBestFirstVisitor<<S as TypedSimdCompositeShape>::PartId, SimdAABB> for RayCompositeShapeToiAndNormalBestFirstVisitor<'a, S> where
S: TypedSimdCompositeShape,
impl<'a, S> SimdBestFirstVisitor<<S as TypedSimdCompositeShape>::PartId, SimdAABB> for RayCompositeShapeToiAndNormalBestFirstVisitor<'a, S> where
S: TypedSimdCompositeShape,
type Result = (S::PartId, RayIntersection)
type Result = (S::PartId, RayIntersection)
The result of a best-first traversal.
impl<'a, S: SimdCompositeShape + PointQuery> SimdBestFirstVisitor<u32, SimdAABB> for CompositeClosestPointVisitor<'a, S>
impl<'a, S: SimdCompositeShape + PointQuery> SimdBestFirstVisitor<u32, SimdAABB> for CompositeClosestPointVisitor<'a, S>
type Result = PointProjection
type Result = PointProjection
The result of a best-first traversal.
impl<'a, T, F> SimdVisitor<T, SimdAABB> for BoundingVolumeIntersectionsVisitor<'a, T, F> where
F: FnMut(&T) -> bool,
impl<'a, T, F> SimdVisitor<T, SimdAABB> for BoundingVolumeIntersectionsVisitor<'a, T, F> where
F: FnMut(&T) -> bool,
impl<'a, T, F> SimdVisitor<T, SimdAABB> for PointIntersectionsVisitor<'a, T, F> where
F: FnMut(&T) -> bool,
impl<'a, T, F> SimdVisitor<T, SimdAABB> for PointIntersectionsVisitor<'a, T, F> where
F: FnMut(&T) -> bool,
impl<'a, T, F> SimdVisitor<T, SimdAABB> for RayIntersectionsVisitor<'a, T, F> where
F: FnMut(&T) -> bool,
impl<'a, T, F> SimdVisitor<T, SimdAABB> for RayIntersectionsVisitor<'a, T, F> where
F: FnMut(&T) -> bool,
impl<'a, S: SimdCompositeShape> SimdVisitor<u32, SimdAABB> for CompositePointContainmentTest<'a, S>
impl<'a, S: SimdCompositeShape> SimdVisitor<u32, SimdAABB> for CompositePointContainmentTest<'a, S>
Auto Trait Implementations
impl RefUnwindSafe for SimdAABB
impl UnwindSafe for SimdAABB
Blanket Implementations
Mutably borrows from an owned value. Read more
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
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
Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read more
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
The inverse inclusion map: attempts to construct self
from the equivalent element of its
superset. Read more
Checks if self
is actually part of its subset T
(and can be converted to it).
Use with care! Same as self.to_subset
but without any property checks. Always succeeds.
The inclusion map: converts self
to the equivalent element of its superset.