[][src]Struct ncollide2d::shape::ConvexPolygon

pub struct ConvexPolygon<N: RealField> { /* fields omitted */ }

A 2D convex polygon.

Methods

impl<N: RealField> ConvexPolygon<N>[src]

pub fn try_from_points(points: &[Point<N>]) -> Option<Self>[src]

Creates a new 2D convex polygon from an arbitrary set of points.

This explicitly computes the convex hull of the given set of points. Use Returns None if the convex hull computation failed.

pub fn try_new(points: Vec<Point<N>>) -> Option<Self>[src]

Creates a new 2D convex polygon from a set of points assumed to describe a counter-clockwise convex polyline.

Convexity of the input polyline is not checked. Returns None if some consecutive points are identical (or too close to being so).

pub fn points(&self) -> &[Point<N>][src]

The vertices of this convex polygon.

pub fn normals(&self) -> &[Unit<Vector<N>>][src]

The normals of the edges of this convex polygon.

pub fn tangent_cone_contains_dir(
    &self,
    feature: FeatureId,
    m: &Isometry<N>,
    dir: &Unit<Vector<N>>
) -> bool
[src]

Checks that the given direction in world-space is on the tangent cone of the given feature.

Trait Implementations

impl<N: Clone + RealField> Clone for ConvexPolygon<N>[src]

impl<N: RealField> ConvexPolyhedron<N> for ConvexPolygon<N>[src]

impl<N: Debug + RealField> Debug for ConvexPolygon<N>[src]

impl<N: RealField> HasBoundingVolume<N, AABB<N>> for ConvexPolygon<N>[src]

impl<N: RealField> HasBoundingVolume<N, BoundingSphere<N>> for ConvexPolygon<N>[src]

impl<N: RealField> PointQuery<N> for ConvexPolygon<N>[src]

impl<N: RealField> RayCast<N> for ConvexPolygon<N>[src]

impl<N: RealField> Shape<N> for ConvexPolygon<N>[src]

impl<N: RealField> SupportMap<N> for ConvexPolygon<N>[src]

Auto Trait Implementations

impl<N> RefUnwindSafe for ConvexPolygon<N> where
    N: RefUnwindSafe + Scalar

impl<N> Send for ConvexPolygon<N> where
    N: Scalar

impl<N> Sync for ConvexPolygon<N> where
    N: Scalar

impl<N> Unpin for ConvexPolygon<N> where
    N: Scalar + Unpin

impl<N> UnwindSafe for ConvexPolygon<N> where
    N: Scalar + UnwindSafe

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Downcast for T where
    T: Any

impl<T> DowncastSync for T where
    T: Send + Sync + Any

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<SS, SP> SupersetOf<SS> for SP where
    SS: SubsetOf<SP>, 

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,