[−][src]Trait oxygengine_physics_2d::prelude::ncollide2d::shape::ConvexPolyhedron
Trait implemented by all convex polyhedron.
Required methods
fn vertex(&self, id: FeatureId) -> Point<N, U2>
Gets the specified vertex in the shape local-space.
fn face(&self, id: FeatureId, face: &mut ConvexPolygonalFeature<N>)
Fill face
with the geometric description of the specified face, in the shape's local-space.
fn feature_normal(
&self,
feature: FeatureId
) -> Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>
&self,
feature: FeatureId
) -> Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>
Returns any normal from the normal cone of the given feature.
fn support_face_toward(
&self,
transform: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>,
out: &mut ConvexPolygonalFeature<N>
)
&self,
transform: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>,
out: &mut ConvexPolygonalFeature<N>
)
Retrieve the face (in world-space) with a normal that maximizes the scalar product with dir
.
fn support_feature_toward(
&self,
transform: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>,
_angle: N,
out: &mut ConvexPolygonalFeature<N>
)
&self,
transform: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>,
_angle: N,
out: &mut ConvexPolygonalFeature<N>
)
Retrieve the feature (in world-space) which normal cone contains dir
.
fn support_feature_id_toward(
&self,
local_dir: &Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>
) -> FeatureId
&self,
local_dir: &Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>
) -> FeatureId
Retrieve the identifier of the feature which normal cone contains dir
.
Implementors
impl<N> ConvexPolyhedron<N> for ConvexPolygon<N> where
N: RealField,
[src]
N: RealField,
fn vertex(&self, id: FeatureId) -> Point<N, U2>
[src]
fn face(&self, id: FeatureId, out: &mut ConvexPolygonalFeature<N>)
[src]
fn feature_normal(
&self,
feature: FeatureId
) -> Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>
[src]
&self,
feature: FeatureId
) -> Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>
fn support_face_toward(
&self,
m: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>,
out: &mut ConvexPolygonalFeature<N>
)
[src]
&self,
m: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>,
out: &mut ConvexPolygonalFeature<N>
)
fn support_feature_toward(
&self,
transform: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>,
_angle: N,
out: &mut ConvexPolygonalFeature<N>
)
[src]
&self,
transform: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>,
_angle: N,
out: &mut ConvexPolygonalFeature<N>
)
fn support_feature_id_toward(
&self,
local_dir: &Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>
) -> FeatureId
[src]
&self,
local_dir: &Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>
) -> FeatureId
impl<N> ConvexPolyhedron<N> for Cuboid<N> where
N: RealField,
[src]
N: RealField,
fn vertex(&self, id: FeatureId) -> Point<N, U2>
[src]
fn face(&self, id: FeatureId, out: &mut ConvexPolygonalFeature<N>)
[src]
fn support_face_toward(
&self,
m: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>,
out: &mut ConvexPolygonalFeature<N>
)
[src]
&self,
m: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>,
out: &mut ConvexPolygonalFeature<N>
)
fn support_feature_toward(
&self,
m: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>,
angle: N,
out: &mut ConvexPolygonalFeature<N>
)
[src]
&self,
m: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>,
angle: N,
out: &mut ConvexPolygonalFeature<N>
)
fn support_feature_id_toward(
&self,
local_dir: &Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>
) -> FeatureId
[src]
&self,
local_dir: &Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>
) -> FeatureId
fn feature_normal(
&self,
feature: FeatureId
) -> Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>
[src]
&self,
feature: FeatureId
) -> Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>
impl<N> ConvexPolyhedron<N> for Segment<N> where
N: RealField,
[src]
N: RealField,
fn vertex(&self, id: FeatureId) -> Point<N, U2>
[src]
fn face(&self, id: FeatureId, face: &mut ConvexPolygonalFeature<N>)
[src]
fn feature_normal(
&self,
feature: FeatureId
) -> Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>
[src]
&self,
feature: FeatureId
) -> Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>
fn support_face_toward(
&self,
m: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>,
face: &mut ConvexPolygonalFeature<N>
)
[src]
&self,
m: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>,
face: &mut ConvexPolygonalFeature<N>
)
fn support_feature_toward(
&self,
transform: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>,
eps: N,
face: &mut ConvexPolygonalFeature<N>
)
[src]
&self,
transform: &Isometry<N, U2, Unit<Complex<N>>>,
dir: &Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>,
eps: N,
face: &mut ConvexPolygonalFeature<N>
)
fn support_feature_id_toward(
&self,
local_dir: &Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>
) -> FeatureId
[src]
&self,
local_dir: &Unit<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>>
) -> FeatureId