Type Definition collision::Ray3
[−]
[src]
type Ray3<S> = Ray<S, Point3<S>, Vector3<S>>;
3D ray
Trait Implementations
impl<S> Discrete<Ray3<S>> for Cylinder<S> where
S: BaseFloat,
[src]
S: BaseFloat,
fn intersects(&self, r: &Ray3<S>) -> bool
[src]
Intersection test
impl<S> Continuous<Ray3<S>> for Cylinder<S> where
S: BaseFloat,
[src]
S: BaseFloat,
type Result = Point3<S>
Result returned by the intersection test
fn intersection(&self, r: &Ray3<S>) -> Option<Point3<S>>
[src]
Intersection test
impl<S> Discrete<Ray3<S>> for Capsule<S> where
S: BaseFloat,
[src]
S: BaseFloat,
fn intersects(&self, r: &Ray3<S>) -> bool
[src]
Intersection test
impl<S> Continuous<Ray3<S>> for Capsule<S> where
S: BaseFloat,
[src]
S: BaseFloat,
type Result = Point3<S>
Result returned by the intersection test
fn intersection(&self, r: &Ray3<S>) -> Option<Point3<S>>
[src]
Intersection test
impl<S> Discrete<Ray3<S>> for Cuboid<S> where
S: BaseFloat,
[src]
S: BaseFloat,
fn intersects(&self, ray: &Ray3<S>) -> bool
[src]
Intersection test
impl<S> Continuous<Ray3<S>> for Cuboid<S> where
S: BaseFloat,
[src]
S: BaseFloat,
type Result = Point3<S>
Result returned by the intersection test
fn intersection(&self, ray: &Ray3<S>) -> Option<Point3<S>>
[src]
Intersection test
impl<S> Discrete<Ray3<S>> for Cube<S> where
S: BaseFloat,
[src]
S: BaseFloat,
fn intersects(&self, ray: &Ray3<S>) -> bool
[src]
Intersection test
impl<S> Continuous<Ray3<S>> for Cube<S> where
S: BaseFloat,
[src]
S: BaseFloat,
type Result = Point3<S>
Result returned by the intersection test
fn intersection(&self, ray: &Ray3<S>) -> Option<Point3<S>>
[src]
Intersection test
impl<S> Discrete<Ray3<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> Continuous<Ray3<S>> for ConvexPolyhedron<S> where
S: BaseFloat,
[src]
S: BaseFloat,
type Result = Point3<S>
Result returned by the intersection test
fn intersection(&self, ray: &Ray3<S>) -> Option<Point3<S>>
[src]
Ray must be in object space
impl<S> DiscreteTransformed<Ray3<S>> for Primitive3<S> where
S: BaseFloat,
[src]
S: BaseFloat,
type Point = Point3<S>
Point type for transformation of self
fn intersects_transformed<T>(&self, ray: &Ray3<S>, transform: &T) -> bool where
T: Transform<Self::Point>,
[src]
T: Transform<Self::Point>,
Intersection test for transformed self
impl<S> ContinuousTransformed<Ray3<S>> for Primitive3<S> where
S: BaseFloat,
[src]
S: BaseFloat,
type Point = Point3<S>
Point type for transformation of self
type Result = Point3<S>
Result of intersection test
fn intersection_transformed<T>(
&self,
ray: &Ray3<S>,
transform: &T
) -> Option<Point3<S>> where
T: Transform<Point3<S>>,
[src]
&self,
ray: &Ray3<S>,
transform: &T
) -> Option<Point3<S>> where
T: Transform<Point3<S>>,
Intersection test for transformed self
impl<S> Discrete<Ray3<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> Continuous<Ray3<S>> for Quad<S> where
S: BaseFloat,
[src]
S: BaseFloat,
type Result = Point3<S>
Result returned by the intersection test
fn intersection(&self, ray: &Ray3<S>) -> Option<Point3<S>>
[src]
Ray must be in object space of the rectangle
impl<S> Discrete<Ray3<S>> for Sphere<S> where
S: BaseFloat,
[src]
S: BaseFloat,
fn intersects(&self, r: &Ray3<S>) -> bool
[src]
Intersection test
impl<S> Continuous<Ray3<S>> for Sphere<S> where
S: BaseFloat,
[src]
S: BaseFloat,
type Result = Point3<S>
Result returned by the intersection test
fn intersection(&self, r: &Ray3<S>) -> Option<Point3<S>>
[src]
Intersection test
impl<S: BaseFloat> Continuous<Ray3<S>> for Plane<S>
[src]
type Result = Point3<S>
Result returned by the intersection test
fn intersection(&self, r: &Ray3<S>) -> Option<Point3<S>>
[src]
Intersection test
impl<S: BaseFloat> Discrete<Ray3<S>> for Plane<S>
[src]
fn intersects(&self, r: &Ray3<S>) -> bool
[src]
Intersection test
impl<S: BaseFloat> Continuous<Aabb3<S>> for Ray3<S>
[src]
type Result = Point3<S>
Result returned by the intersection test
fn intersection(&self, aabb: &Aabb3<S>) -> Option<Point3<S>>
[src]
Intersection test
impl<S: BaseFloat> Continuous<Ray3<S>> for Aabb3<S>
[src]
type Result = Point3<S>
Result returned by the intersection test
fn intersection(&self, ray: &Ray3<S>) -> Option<Point3<S>>
[src]
Intersection test
impl<S: BaseFloat> Discrete<Aabb3<S>> for Ray3<S>
[src]
fn intersects(&self, aabb: &Aabb3<S>) -> bool
[src]
Intersection test
impl<S: BaseFloat> Discrete<Ray3<S>> for Aabb3<S>
[src]
fn intersects(&self, ray: &Ray3<S>) -> bool
[src]
Intersection test
impl<S: BaseFloat> Continuous<Ray3<S>> for Sphere<S>
[src]
type Result = Point3<S>
Result returned by the intersection test
fn intersection(&self, r: &Ray3<S>) -> Option<Point3<S>>
[src]
Intersection test
impl<S: BaseFloat> Discrete<Ray3<S>> for Sphere<S>
[src]
fn intersects(&self, r: &Ray3<S>) -> bool
[src]
Intersection test