Struct parry2d::shape::ConvexPolygon [−][src]
pub struct ConvexPolygon { /* fields omitted */ }
A 2D convex polygon.
Implementations
impl ConvexPolygon
[src]
impl ConvexPolygon
[src]impl ConvexPolygon
[src]
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]
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]
impl Clone for ConvexPolygon
[src]fn clone(&self) -> ConvexPolygon
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl PointQuery 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]
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]
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]
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>>>
fn compute_swept_aabb(
&self,
start_pos: &Isometry<Real>,
end_pos: &Isometry<Real>
) -> AABB
[src]
&self,
start_pos: &Isometry<Real>,
end_pos: &Isometry<Real>
) -> AABB
impl SupportMap for ConvexPolygon
[src]
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 RefUnwindSafe for ConvexPolygon
impl Send for ConvexPolygon
impl Send for ConvexPolygon
impl Sync for ConvexPolygon
impl Sync for ConvexPolygon
impl Unpin for ConvexPolygon
impl Unpin for ConvexPolygon
impl UnwindSafe for ConvexPolygon
impl UnwindSafe for ConvexPolygon
Blanket Implementations
impl<T> CheckedAs for 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> DowncastSync for T where
T: Any + Send + Sync,
[src]
impl<T> DowncastSync for T where
T: Any + Send + Sync,
[src]impl<Src, Dst> LosslessTryInto<Dst> for Src where
Dst: LosslessTryFrom<Src>,
[src]
impl<Src, Dst> LosslessTryInto<Dst> for Src where
Dst: LosslessTryFrom<Src>,
[src]pub fn lossless_try_into(self) -> Option<Dst>
[src]
impl<Src, Dst> LossyInto<Dst> for Src where
Dst: LossyFrom<Src>,
[src]
impl<Src, Dst> LossyInto<Dst> for Src where
Dst: LossyFrom<Src>,
[src]pub fn lossy_into(self) -> Dst
[src]
impl<T> OverflowingAs for T
[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
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T> SaturatingAs for T
[src]
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]
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
[src]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> UnwrappedAs for T
[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]
impl<T> WrappingAs for T
[src]pub fn wrapping_as<Dst>(self) -> Dst where
T: WrappingCast<Dst>,
[src]
T: WrappingCast<Dst>,