Trait Continuous

Source
pub trait Continuous<RHS> {
    type Result;

    // Required method
    fn intersection(&self, _: &RHS) -> Option<Self::Result>;
}
Expand description

An intersection test with a result.

An example would be a Ray vs AABB intersection test that returns a Point in space.

Required Associated Types§

Source

type Result

Result returned by the intersection test

Required Methods§

Source

fn intersection(&self, _: &RHS) -> Option<Self::Result>

Intersection test

Implementors§

Source§

impl<P> Continuous<Ray<<P as EuclideanSpace>::Scalar, P, <P as EuclideanSpace>::Diff>> for Particle<P>

Source§

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,

Source§

impl<S> Continuous<Ray<S, Point2<S>, Vector2<S>>> for Circle<S>
where S: BaseFloat,

Source§

impl<S> Continuous<Ray<S, Point2<S>, Vector2<S>>> for ConvexPolygon<S>
where S: BaseFloat,

Source§

impl<S> Continuous<Ray<S, Point2<S>, Vector2<S>>> for Rectangle<S>
where S: BaseFloat,

Source§

impl<S> Continuous<Ray<S, Point2<S>, Vector2<S>>> for Square<S>
where S: BaseFloat,

Source§

impl<S> Continuous<Ray<S, Point3<S>, Vector3<S>>> for Capsule<S>
where S: BaseFloat,

Source§

impl<S> Continuous<Ray<S, Point3<S>, Vector3<S>>> for ConvexPolyhedron<S>
where S: BaseFloat,

Source§

impl<S> Continuous<Ray<S, Point3<S>, Vector3<S>>> for Cube<S>
where S: BaseFloat,

Source§

impl<S> Continuous<Ray<S, Point3<S>, Vector3<S>>> for Cuboid<S>
where S: BaseFloat,

Source§

impl<S> Continuous<Ray<S, Point3<S>, Vector3<S>>> for Cylinder<S>
where S: BaseFloat,

Source§

impl<S> Continuous<Ray<S, Point3<S>, Vector3<S>>> for Quad<S>
where S: BaseFloat,

Source§

impl<S> Continuous<Ray<S, Point3<S>, Vector3<S>>> for collision::primitive::Sphere<S>
where S: BaseFloat,

Source§

impl<S, P> Continuous<Ray<S, P, <P as EuclideanSpace>::Diff>> for P
where S: BaseFloat, P: EuclideanSpace<Scalar = S>, P::Diff: InnerSpace<Scalar = S>,

Source§

impl<S: BaseFloat> Continuous<(Plane<S>, Plane<S>)> for Plane<S>

See Real-Time Collision Detection, p. 212 - 214

Source§

impl<S: BaseFloat> Continuous<Aabb2<S>> for Ray2<S>

Source§

impl<S: BaseFloat> Continuous<Aabb3<S>> for Ray3<S>

Source§

impl<S: BaseFloat> Continuous<Line<S, Vector2<S>, Point2<S>>> for Ray2<S>

Determines if an intersection between a ray and a line segment is found.

Source§

impl<S: BaseFloat> Continuous<Plane<S>> for Plane<S>

See Real-Time Collision Detection, p. 210

Source§

type Result = Ray<S, Point3<S>, Vector3<S>>

Source§

impl<S: BaseFloat> Continuous<Ray<S, Point2<S>, Vector2<S>>> for Aabb2<S>

Source§

impl<S: BaseFloat> Continuous<Ray<S, Point2<S>, Vector2<S>>> for Line2<S>

Source§

impl<S: BaseFloat> Continuous<Ray<S, Point3<S>, Vector3<S>>> for Aabb3<S>

Source§

impl<S: BaseFloat> Continuous<Ray<S, Point3<S>, Vector3<S>>> for Plane<S>

Source§

impl<S: BaseFloat> Continuous<Ray<S, Point3<S>, Vector3<S>>> for collision::Sphere<S>