Struct parry2d::shape::ConvexPolygon [−][src]
A 2D convex polygon.
Implementations
impl ConvexPolygon
[src]
pub fn aabb(&self, pos: &Isometry<Real>) -> AABB
[src]
Computes the world-space AABB of this convex polygon, transformed by pos
.
pub fn local_aabb(&self) -> AABB
[src]
Computes the local-space AABB of this convex polygon.
impl ConvexPolygon
[src]
pub fn bounding_sphere(&self, pos: &Isometry<Real>) -> BoundingSphere
[src]
Computes the world-space bounding sphere of this convex polygon, transformed by pos
.
pub fn local_bounding_sphere(&self) -> BoundingSphere
[src]
Computes the local-space bounding sphere of this convex polygon.
impl ConvexPolygon
[src]
pub fn from_convex_hull(points: &[Point<Real>]) -> 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 from_convex_polyline(points: Vec<Point<Real>>) -> 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 all points form an almost flat line.
pub fn points(&self) -> &[Point<Real>]
[src]
The vertices of this convex polygon.
pub fn normals(&self) -> &[Unit<Vector<Real>>]
[src]
The normals of the edges of this convex polygon.
pub fn support_feature_id_toward(
&self,
local_dir: &Unit<Vector<Real>>
) -> FeatureId
[src]
&self,
local_dir: &Unit<Vector<Real>>
) -> FeatureId
Get the ID of the feature with a normal that maximizes the dot product with local_dir
.
Trait Implementations
impl Clone for ConvexPolygon
[src]
fn clone(&self) -> ConvexPolygon
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Debug for ConvexPolygon
[src]
impl PointQuery for ConvexPolygon
[src]
fn project_local_point(
&self,
point: &Point<Real>,
solid: bool
) -> PointProjection
[src]
&self,
point: &Point<Real>,
solid: bool
) -> PointProjection
fn project_local_point_and_get_feature(
&self,
point: &Point<Real>
) -> (PointProjection, FeatureId)
[src]
&self,
point: &Point<Real>
) -> (PointProjection, FeatureId)
fn distance_to_local_point(&self, pt: &Point<Real>, solid: bool) -> Real
[src]
fn contains_local_point(&self, pt: &Point<Real>) -> bool
[src]
fn project_point(
&self,
m: &Isometry<Real>,
pt: &Point<Real>,
solid: bool
) -> PointProjection
[src]
&self,
m: &Isometry<Real>,
pt: &Point<Real>,
solid: bool
) -> PointProjection
fn distance_to_point(
&self,
m: &Isometry<Real>,
pt: &Point<Real>,
solid: bool
) -> Real
[src]
&self,
m: &Isometry<Real>,
pt: &Point<Real>,
solid: bool
) -> Real
fn project_point_and_get_feature(
&self,
m: &Isometry<Real>,
pt: &Point<Real>
) -> (PointProjection, FeatureId)
[src]
&self,
m: &Isometry<Real>,
pt: &Point<Real>
) -> (PointProjection, FeatureId)
fn contains_point(&self, m: &Isometry<Real>, pt: &Point<Real>) -> bool
[src]
impl PolygonalFeatureMap for ConvexPolygon
[src]
fn local_support_feature(
&self,
dir: &Unit<Vector<Real>>,
out_feature: &mut PolygonalFeature
)
[src]
&self,
dir: &Unit<Vector<Real>>,
out_feature: &mut PolygonalFeature
)
impl RayCast for ConvexPolygon
[src]
fn cast_local_ray_and_get_normal(
&self,
ray: &Ray,
max_toi: Real,
solid: bool
) -> Option<RayIntersection>
[src]
&self,
ray: &Ray,
max_toi: Real,
solid: bool
) -> Option<RayIntersection>
fn cast_local_ray(&self, ray: &Ray, max_toi: Real, solid: bool) -> Option<Real>
[src]
fn intersects_local_ray(&self, ray: &Ray, max_toi: Real) -> bool
[src]
fn cast_ray(
&self,
m: &Isometry<Real>,
ray: &Ray,
max_toi: Real,
solid: bool
) -> Option<Real>
[src]
&self,
m: &Isometry<Real>,
ray: &Ray,
max_toi: Real,
solid: bool
) -> Option<Real>
fn cast_ray_and_get_normal(
&self,
m: &Isometry<Real>,
ray: &Ray,
max_toi: Real,
solid: bool
) -> Option<RayIntersection>
[src]
&self,
m: &Isometry<Real>,
ray: &Ray,
max_toi: Real,
solid: bool
) -> Option<RayIntersection>
fn intersects_ray(&self, m: &Isometry<Real>, ray: &Ray, max_toi: Real) -> bool
[src]
impl Shape for ConvexPolygon
[src]
fn clone_box(&self) -> Box<dyn Shape>
[src]
fn compute_local_aabb(&self) -> AABB
[src]
fn compute_local_bounding_sphere(&self) -> BoundingSphere
[src]
fn compute_aabb(&self, position: &Isometry<Real>) -> AABB
[src]
fn mass_properties(&self, density: Real) -> MassProperties
[src]
fn is_convex(&self) -> bool
[src]
fn shape_type(&self) -> ShapeType
[src]
fn as_typed_shape(&self) -> TypedShape<'_>
[src]
fn ccd_thickness(&self) -> Real
[src]
fn ccd_angular_thickness(&self) -> Real
[src]
fn as_support_map(&self) -> Option<&dyn SupportMap>
[src]
fn as_polygonal_feature_map(&self) -> Option<(&dyn PolygonalFeatureMap, Real)>
[src]
fn compute_bounding_sphere(&self, position: &Isometry<Real>) -> BoundingSphere
[src]
fn as_composite_shape(&self) -> Option<&dyn SimdCompositeShape>
[src]
fn feature_normal_at_point(
&self,
_feature: FeatureId,
_point: &Point<Real>
) -> Option<Unit<Vector<Real>>>
[src]
&self,
_feature: FeatureId,
_point: &Point<Real>
) -> Option<Unit<Vector<Real>>>
impl SupportMap for ConvexPolygon
[src]
fn local_support_point(&self, dir: &Vector<Real>) -> Point<Real>
[src]
fn local_support_point_toward(&self, dir: &Unit<Vector<Real>>) -> Point<Real>
[src]
fn support_point(
&self,
transform: &Isometry<Real>,
dir: &Vector<Real>
) -> Point<Real>
[src]
&self,
transform: &Isometry<Real>,
dir: &Vector<Real>
) -> Point<Real>
fn support_point_toward(
&self,
transform: &Isometry<Real>,
dir: &Unit<Vector<Real>>
) -> Point<Real>
[src]
&self,
transform: &Isometry<Real>,
dir: &Unit<Vector<Real>>
) -> Point<Real>
Auto Trait Implementations
impl RefUnwindSafe for ConvexPolygon
impl Send for ConvexPolygon
impl Sync for ConvexPolygon
impl Unpin for ConvexPolygon
impl UnwindSafe for ConvexPolygon
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Az for T
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> CheckedAs for T
[src]
pub fn checked_as<Dst>(self) -> Option<Dst> where
T: CheckedCast<Dst>,
[src]
T: CheckedCast<Dst>,
impl<T> Downcast for T where
T: Any,
[src]
T: Any,
pub fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
[src]
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
[src]
pub fn as_any(&self) -> &(dyn Any + 'static)
[src]
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
[src]
impl<T> DowncastSync for T where
T: Any + Send + Sync,
[src]
T: Any + Send + Sync,
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<Src, Dst> LosslessTryInto<Dst> for Src where
Dst: LosslessTryFrom<Src>,
[src]
Dst: LosslessTryFrom<Src>,
pub fn lossless_try_into(self) -> Option<Dst>
[src]
impl<Src, Dst> LossyInto<Dst> for Src where
Dst: LossyFrom<Src>,
[src]
Dst: LossyFrom<Src>,
pub fn lossy_into(self) -> Dst
[src]
impl<T> OverflowingAs for T
[src]
pub fn overflowing_as<Dst>(self) -> (Dst, bool) where
T: OverflowingCast<Dst>,
[src]
T: OverflowingCast<Dst>,
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T> SaturatingAs for T
[src]
pub fn saturating_as<Dst>(self) -> Dst where
T: SaturatingCast<Dst>,
[src]
T: SaturatingCast<Dst>,
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
[src]
SS: SubsetOf<SP>,
pub fn to_subset(&self) -> Option<SS>
[src]
pub fn is_in_subset(&self) -> bool
[src]
pub fn to_subset_unchecked(&self) -> SS
[src]
pub fn from_subset(element: &SS) -> SP
[src]
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> UnwrappedAs for T
[src]
pub fn unwrapped_as<Dst>(self) -> Dst where
T: UnwrappedCast<Dst>,
[src]
T: UnwrappedCast<Dst>,
impl<T> WrappingAs for T
[src]
pub fn wrapping_as<Dst>(self) -> Dst where
T: WrappingCast<Dst>,
[src]
T: WrappingCast<Dst>,