Trait collision::prelude::Continuous
[−]
[src]
pub trait Continuous<RHS> { type Result; fn intersection(&self, _: &RHS) -> Option<Self::Result>; }
An intersection test with a result.
An example would be a Ray vs AABB intersection test that returns a Point in space.
Associated Types
type Result
Result returned by the intersection test
Required Methods
fn intersection(&self, _: &RHS) -> Option<Self::Result>
Intersection test
Implementors
impl<S> Continuous<Ray2<S>> for Circle<S> where
S: BaseFloat, type Result = Point2<S>;impl<S> Continuous<Ray3<S>> for Cylinder<S> where
S: BaseFloat, type Result = Point3<S>;impl<S> Continuous<Ray3<S>> for Capsule<S> where
S: BaseFloat, type Result = Point3<S>;impl<S> Continuous<Ray3<S>> for Cuboid<S> where
S: BaseFloat, type Result = Point3<S>;impl<P> Continuous<Ray<P::Scalar, P, P::Diff>> for Particle<P> where
P: EuclideanSpace,
P::Diff: InnerSpace,
P::Scalar: BaseFloat, type Result = P;impl<P, C> Continuous<(Particle<P>, Range<P>)> for C where
C: Continuous<Ray<P::Scalar, P, P::Diff>, Result = P>,
P: EuclideanSpace,
P::Diff: InnerSpace,
P::Scalar: BaseFloat, type Result = P;impl<S> Continuous<Ray2<S>> for ConvexPolygon<S> where
S: BaseFloat, type Result = Point2<S>;impl<S> Continuous<Ray3<S>> for ConvexPolyhedron<S> where
S: BaseFloat, type Result = Point3<S>;impl<S> Continuous<Ray2<S>> for Rectangle<S> where
S: BaseFloat, type Result = Point2<S>;impl<S> Continuous<Ray3<S>> for Quad<S> where
S: BaseFloat, type Result = Point3<S>;impl<S> Continuous<Ray3<S>> for collision::primitive::Sphere<S> where
S: BaseFloat, type Result = Point3<S>;impl<S: BaseFloat> Continuous<Ray3<S>> for Plane<S> type Result = Point3<S>;
impl<S: BaseFloat> Continuous<Plane<S>> for Plane<S> type Result = Ray3<S>;
impl<S: BaseFloat> Continuous<(Plane<S>, Plane<S>)> for Plane<S> type Result = Point3<S>;
impl<S, P> Continuous<Ray<S, P, P::Diff>> for P where
S: BaseFloat,
P: EuclideanSpace<Scalar = S>,
P::Diff: InnerSpace<Scalar = S>, type Result = P;impl<S: BaseFloat> Continuous<Ray2<S>> for Line2<S> type Result = Point2<S>;
impl<S: BaseFloat> Continuous<Line2<S>> for Ray2<S> type Result = Point2<S>;
impl<S: BaseFloat> Continuous<Aabb2<S>> for Ray2<S> type Result = Point2<S>;
impl<S: BaseFloat> Continuous<Ray2<S>> for Aabb2<S> type Result = Point2<S>;
impl<S: BaseFloat> Continuous<Aabb3<S>> for Ray3<S> type Result = Point3<S>;
impl<S: BaseFloat> Continuous<Ray3<S>> for Aabb3<S> type Result = Point3<S>;
impl<S: BaseFloat> Continuous<Ray3<S>> for collision::Sphere<S> type Result = Point3<S>;