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

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

A 2D convex polygon.

Methods

impl<N: Real> 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: Real> HasBoundingVolume<N, AABB<N>> for ConvexPolygon<N>[src]

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

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

fn distance_to_point(&self, m: &Isometry<N>, pt: &Point<N>, solid: bool) -> N[src]

Computes the minimal distance between a point and self transformed by m.

fn contains_point(&self, m: &Isometry<N>, pt: &Point<N>) -> bool[src]

Tests if the given point is inside of self transformed by m.

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

fn toi_with_ray(&self, m: &Isometry<N>, ray: &Ray<N>, solid: bool) -> Option<N>[src]

Computes the time of impact between this transform shape and a ray.

fn intersects_ray(&self, m: &Isometry<N>, ray: &Ray<N>) -> bool[src]

Tests whether a ray intersects this transformed shape.

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

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

fn subshape_containing_feature(&self, _i: FeatureId) -> usize[src]

Returns the id of the subshape containing the specified feature. Read more

fn as_composite_shape(&self) -> Option<&dyn CompositeShape<N>>[src]

The composite shape representation of self if applicable.

fn as_deformable_shape(&self) -> Option<&dyn DeformableShape<N>>[src]

The deformable shape representation of self if applicable.

fn as_deformable_shape_mut(&mut self) -> Option<&mut dyn DeformableShape<N>>[src]

The mutable deformable shape representation of self if applicable.

fn is_composite_shape(&self) -> bool[src]

Whether self uses a composite shape-based representation.

fn is_deformable_shape(&self) -> bool[src]

Whether self uses a composite shape-based representation.

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

fn support_point_toward(
    &self,
    transform: &Isometry<N>,
    dir: &Unit<Vector<N>>
) -> Point<N>
[src]

Same as self.support_point except that dir is normalized.

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

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

Performs copy-assignment from source. Read more

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

Auto Trait Implementations

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

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

Blanket Implementations

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

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

type Owned = T

impl<T> From for T[src]

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

type Error = Infallible

The type returned in the event of a conversion error.

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

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

impl<T, U> TryInto 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<T> Any for T where
    T: 'static + ?Sized
[src]

impl<SS, SP> SupersetOf for SP where
    SS: SubsetOf<SP>, 
[src]

impl<T> Downcast for T where
    T: Any
[src]

impl<T> Same for T

type Output = T

Should always be Self