pub enum PlaneRay<S> where
S: EuclideanSpace, {
TimeOfImpact(<<S as EuclideanSpace>::CoordinateSpace as VectorSpace>::Scalar),
Ray(Ray<S>),
}
Expand description
Intersection of a plane and a ray.
Variants
TimeOfImpact(<<S as EuclideanSpace>::CoordinateSpace as VectorSpace>::Scalar)
Ray(Ray<S>)
Implementations
sourceimpl<S> PlaneRay<S> where
S: EuclideanSpace,
impl<S> PlaneRay<S> where
S: EuclideanSpace,
pub fn into_time_of_impact(
self
) -> Option<<<S as EuclideanSpace>::CoordinateSpace as VectorSpace>::Scalar>
pub fn into_ray(self) -> Option<Ray<S>>
Trait Implementations
sourceimpl<S> Clone for PlaneRay<S> where
S: Clone + EuclideanSpace,
impl<S> Clone for PlaneRay<S> where
S: Clone + EuclideanSpace,
sourceimpl<S> Debug for PlaneRay<S> where
S: Debug + EuclideanSpace,
<<S as EuclideanSpace>::CoordinateSpace as VectorSpace>::Scalar: Debug,
<S as EuclideanSpace>::CoordinateSpace: Debug,
impl<S> Debug for PlaneRay<S> where
S: Debug + EuclideanSpace,
<<S as EuclideanSpace>::CoordinateSpace as VectorSpace>::Scalar: Debug,
<S as EuclideanSpace>::CoordinateSpace: Debug,
impl<S> Copy for PlaneRay<S> where
S: Copy + EuclideanSpace,
impl<S> StructuralPartialEq for PlaneRay<S> where
S: EuclideanSpace,
Auto Trait Implementations
impl<S> RefUnwindSafe for PlaneRay<S> where
S: RefUnwindSafe,
<S as EuclideanSpace>::CoordinateSpace: RefUnwindSafe,
<<S as EuclideanSpace>::CoordinateSpace as VectorSpace>::Scalar: RefUnwindSafe,
impl<S> Send for PlaneRay<S> where
S: Send,
<S as EuclideanSpace>::CoordinateSpace: Send,
<<S as EuclideanSpace>::CoordinateSpace as VectorSpace>::Scalar: Send,
impl<S> Sync for PlaneRay<S> where
S: Sync,
<S as EuclideanSpace>::CoordinateSpace: Sync,
<<S as EuclideanSpace>::CoordinateSpace as VectorSpace>::Scalar: Sync,
impl<S> Unpin for PlaneRay<S> where
S: Unpin,
<S as EuclideanSpace>::CoordinateSpace: Unpin,
<<S as EuclideanSpace>::CoordinateSpace as VectorSpace>::Scalar: Unpin,
impl<S> UnwindSafe for PlaneRay<S> where
S: UnwindSafe,
<S as EuclideanSpace>::CoordinateSpace: UnwindSafe,
<<S as EuclideanSpace>::CoordinateSpace as VectorSpace>::Scalar: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> FromGeometry<T> for T
impl<T> FromGeometry<T> for T
fn from_geometry(other: T) -> T
sourceimpl<T, U> IntoGeometry<U> for T where
U: FromGeometry<T>,
impl<T, U> IntoGeometry<U> for T where
U: FromGeometry<T>,
fn into_geometry(self) -> U
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct self
from the equivalent element of its
superset. Read more
fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if self
is actually part of its subset T
(and can be converted to it).
fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as self.to_subset
but without any property checks. Always succeeds.
fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts self
to the equivalent element of its superset.