[][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: 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]

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: RealField> 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: RealField> ConvexPolyhedron<N> for ConvexPolygon<N>[src]

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

fn local_bounding_sphere(&self) -> BoundingSphere<N>[src]

The bounding sphere of self.

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: RealField> 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 + RealField> 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 + RealField> Debug for ConvexPolygon<N>[src]

Auto Trait Implementations

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

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

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

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

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

Blanket Implementations

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

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

type Owned = T

The resulting type after obtaining ownership.

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

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<T> Borrow<T> for T where
    T: ?Sized
[src]

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

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

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

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

impl<T> Same<T> for T

type Output = T

Should always be Self