[−][src]Trait collision::Discrete
A boolean intersection test.
Required methods
fn intersects(&self, _: &RHS) -> bool
Intersection test
Implementors
impl<P> Discrete<Ray<<P as EuclideanSpace>::Scalar, P, <P as EuclideanSpace>::Diff>> for Particle<P> where
P: EuclideanSpace,
P::Diff: InnerSpace,
P::Scalar: BaseFloat,
[src]
P: EuclideanSpace,
P::Diff: InnerSpace,
P::Scalar: BaseFloat,
fn intersects(&self, ray: &Ray<P::Scalar, P, P::Diff>) -> bool
[src]
Ray needs to be in particle object space
impl<P, C> Discrete<(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,
[src]
C: Continuous<Ray<P::Scalar, P, P::Diff>, Result = P>,
P: EuclideanSpace,
P::Diff: InnerSpace,
P::Scalar: BaseFloat,
impl<S> Discrete<Ray<S, Point2<S>, Vector2<S>>> for Circle<S> where
S: BaseFloat,
[src]
S: BaseFloat,
fn intersects(&self, r: &Ray2<S>) -> bool
[src]
impl<S> Discrete<Ray<S, Point2<S>, Vector2<S>>> for ConvexPolygon<S> where
S: BaseFloat,
[src]
S: BaseFloat,
fn intersects(&self, ray: &Ray2<S>) -> bool
[src]
Ray must be in object space
impl<S> Discrete<Ray<S, Point2<S>, Vector2<S>>> for Rectangle<S> where
S: BaseFloat,
[src]
S: BaseFloat,
fn intersects(&self, ray: &Ray2<S>) -> bool
[src]
Ray must be in object space of the rectangle
impl<S> Discrete<Ray<S, Point2<S>, Vector2<S>>> for Square<S> where
S: BaseFloat,
[src]
S: BaseFloat,
fn intersects(&self, ray: &Ray2<S>) -> bool
[src]
Ray must be in object space of the rectangle
impl<S> Discrete<Ray<S, Point3<S>, Vector3<S>>> for Capsule<S> where
S: BaseFloat,
[src]
S: BaseFloat,
fn intersects(&self, r: &Ray3<S>) -> bool
[src]
impl<S> Discrete<Ray<S, Point3<S>, Vector3<S>>> for ConvexPolyhedron<S> where
S: BaseFloat,
[src]
S: BaseFloat,
TODO: better algorithm for finding faces to intersect with?
fn intersects(&self, ray: &Ray3<S>) -> bool
[src]
Ray must be in object space
impl<S> Discrete<Ray<S, Point3<S>, Vector3<S>>> for Cube<S> where
S: BaseFloat,
[src]
S: BaseFloat,
fn intersects(&self, ray: &Ray3<S>) -> bool
[src]
impl<S> Discrete<Ray<S, Point3<S>, Vector3<S>>> for Cuboid<S> where
S: BaseFloat,
[src]
S: BaseFloat,
fn intersects(&self, ray: &Ray3<S>) -> bool
[src]
impl<S> Discrete<Ray<S, Point3<S>, Vector3<S>>> for Cylinder<S> where
S: BaseFloat,
[src]
S: BaseFloat,
fn intersects(&self, r: &Ray3<S>) -> bool
[src]
impl<S> Discrete<Ray<S, Point3<S>, Vector3<S>>> for Quad<S> where
S: BaseFloat,
[src]
S: BaseFloat,
fn intersects(&self, ray: &Ray3<S>) -> bool
[src]
Ray must be in object space of the rectangle
impl<S> Discrete<Ray<S, Point3<S>, Vector3<S>>> for collision::primitive::Sphere<S> where
S: BaseFloat,
[src]
S: BaseFloat,
fn intersects(&self, r: &Ray3<S>) -> bool
[src]
impl<S, P> Discrete<Ray<S, P, <P as EuclideanSpace>::Diff>> for P where
S: BaseFloat,
P: EuclideanSpace<Scalar = S>,
P::Diff: InnerSpace<Scalar = S>,
[src]
S: BaseFloat,
P: EuclideanSpace<Scalar = S>,
P::Diff: InnerSpace<Scalar = S>,