[−][src]Trait oxygengine_physics_2d::prelude::SupportMap
Traits of convex shapes representable by a support mapping function.
Parameters:
- V - type of the support mapping direction argument and of the returned point.
Required methods
fn support_point(
&self,
transform: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>
) -> Point<N, U2>
&self,
transform: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>
) -> Point<N, U2>
Evaluates the support function of the object.
A support function is a function associating a vector to the shape point which maximizes their dot product.
Provided methods
fn support_point_toward(
&self,
transform: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>
) -> Point<N, U2>
&self,
transform: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>
) -> Point<N, U2>
Same as self.support_point
except that dir
is normalized.
Implementors
impl<'a, N, S> SupportMap<N> for DilatedShape<'a, N, S> where
N: RealField,
S: SupportMap<N> + ?Sized,
[src]
N: RealField,
S: SupportMap<N> + ?Sized,
fn support_point(
&self,
m: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>
) -> Point<N, U2>
[src]
&self,
m: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>
) -> Point<N, U2>
fn support_point_toward(
&self,
m: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>
) -> Point<N, U2>
[src]
&self,
m: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>
) -> Point<N, U2>
impl<N> SupportMap<N> for ConstantOrigin where
N: RealField,
[src]
N: RealField,
fn support_point(
&self,
&Isometry<N, U2, Unit<Complex<N>>>,
&Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>
) -> Point<N, U2>
[src]
&self,
&Isometry<N, U2, Unit<Complex<N>>>,
&Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>
) -> Point<N, U2>
fn support_point_toward(
&self,
&Isometry<N, U2, Unit<Complex<N>>>,
&Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>
) -> Point<N, U2>
[src]
&self,
&Isometry<N, U2, Unit<Complex<N>>>,
&Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>
) -> Point<N, U2>
impl<N> SupportMap<N> for Ball<N> where
N: RealField,
[src]
N: RealField,
fn support_point(
&self,
m: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>
) -> Point<N, U2>
[src]
&self,
m: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>
) -> Point<N, U2>
fn support_point_toward(
&self,
m: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>
) -> Point<N, U2>
[src]
&self,
m: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>
) -> Point<N, U2>
impl<N> SupportMap<N> for Capsule<N> where
N: RealField,
[src]
N: RealField,
fn support_point(
&self,
m: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>
) -> Point<N, U2>
[src]
&self,
m: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>
) -> Point<N, U2>
fn support_point_toward(
&self,
m: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>
) -> Point<N, U2>
[src]
&self,
m: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>
) -> Point<N, U2>
impl<N> SupportMap<N> for ConvexPolygon<N> where
N: RealField,
[src]
N: RealField,
fn support_point(
&self,
m: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>
) -> Point<N, U2>
[src]
&self,
m: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>
) -> Point<N, U2>
impl<N> SupportMap<N> for Cuboid<N> where
N: RealField,
[src]
N: RealField,
fn support_point(
&self,
m: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>
) -> Point<N, U2>
[src]
&self,
m: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>
) -> Point<N, U2>
impl<N> SupportMap<N> for Segment<N> where
N: RealField,
[src]
N: RealField,
fn support_point(
&self,
m: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>
) -> Point<N, U2>
[src]
&self,
m: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>
) -> Point<N, U2>
impl<N> SupportMap<N> for Triangle<N> where
N: RealField,
[src]
N: RealField,