pub type RoundCylinder = RoundShape<Cylinder>;
Expand description
A cylinder dilated by a sphere (so it has round corners).
Aliased Type§
struct RoundCylinder {
pub inner_shape: Cylinder,
pub border_radius: f32,
}
Fields§
§inner_shape: Cylinder
The shape being rounded.
border_radius: f32
The radius of the rounded border.
Implementations§
Trait Implementations
Source§impl<S: Clone> Clone for RoundShape<S>
impl<S: Clone> Clone for RoundShape<S>
Source§fn clone(&self) -> RoundShape<S>
fn clone(&self) -> RoundShape<S>
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl<S: Debug> Debug for RoundShape<S>
impl<S: Debug> Debug for RoundShape<S>
Source§impl<S: SupportMap> PointQuery for RoundShape<S>
impl<S: SupportMap> PointQuery for RoundShape<S>
Source§fn project_local_point(
&self,
point: &Point<f32>,
solid: bool,
) -> PointProjection
fn project_local_point( &self, point: &Point<f32>, solid: bool, ) -> PointProjection
Projects a point on
self
. Read moreSource§fn project_local_point_and_get_feature(
&self,
point: &Point<f32>,
) -> (PointProjection, FeatureId)
fn project_local_point_and_get_feature( &self, point: &Point<f32>, ) -> (PointProjection, FeatureId)
Projects a point on the boundary of
self
and returns the id of the
feature the point was projected on.Source§fn project_local_point_with_max_dist(
&self,
pt: &Point<f32>,
solid: bool,
max_dist: f32,
) -> Option<PointProjection>
fn project_local_point_with_max_dist( &self, pt: &Point<f32>, solid: bool, max_dist: f32, ) -> Option<PointProjection>
Projects a point on
self
, unless the projection lies further than the given max distance. Read moreSource§fn project_point_with_max_dist(
&self,
m: &Isometry<f32>,
pt: &Point<f32>,
solid: bool,
max_dist: f32,
) -> Option<PointProjection>
fn project_point_with_max_dist( &self, m: &Isometry<f32>, pt: &Point<f32>, solid: bool, max_dist: f32, ) -> Option<PointProjection>
Projects a point on
self
transformed by m
, unless the projection lies further than the given max distance.Source§fn distance_to_local_point(&self, pt: &Point<f32>, solid: bool) -> f32
fn distance_to_local_point(&self, pt: &Point<f32>, solid: bool) -> f32
Computes the minimal distance between a point and
self
.Source§fn contains_local_point(&self, pt: &Point<f32>) -> bool
fn contains_local_point(&self, pt: &Point<f32>) -> bool
Tests if the given point is inside of
self
.Source§fn project_point(
&self,
m: &Isometry<f32>,
pt: &Point<f32>,
solid: bool,
) -> PointProjection
fn project_point( &self, m: &Isometry<f32>, pt: &Point<f32>, solid: bool, ) -> PointProjection
Projects a point on
self
transformed by m
.Source§fn distance_to_point(
&self,
m: &Isometry<f32>,
pt: &Point<f32>,
solid: bool,
) -> f32
fn distance_to_point( &self, m: &Isometry<f32>, pt: &Point<f32>, solid: bool, ) -> f32
Computes the minimal distance between a point and
self
transformed by m
.Source§fn project_point_and_get_feature(
&self,
m: &Isometry<f32>,
pt: &Point<f32>,
) -> (PointProjection, FeatureId)
fn project_point_and_get_feature( &self, m: &Isometry<f32>, pt: &Point<f32>, ) -> (PointProjection, FeatureId)
Projects a point on the boundary of
self
transformed by m
and returns the id of the
feature the point was projected on.Source§impl<S: SupportMap> RayCast for RoundShape<S>
impl<S: SupportMap> RayCast for RoundShape<S>
Source§fn cast_local_ray_and_get_normal(
&self,
ray: &Ray,
max_time_of_impact: f32,
solid: bool,
) -> Option<RayIntersection>
fn cast_local_ray_and_get_normal( &self, ray: &Ray, max_time_of_impact: f32, solid: bool, ) -> Option<RayIntersection>
Computes the time of impact, and normal between this transformed shape and a ray.
Source§fn cast_local_ray(
&self,
ray: &Ray,
max_time_of_impact: f32,
solid: bool,
) -> Option<f32>
fn cast_local_ray( &self, ray: &Ray, max_time_of_impact: f32, solid: bool, ) -> Option<f32>
Computes the time of impact between this transform shape and a ray.
Source§fn intersects_local_ray(&self, ray: &Ray, max_time_of_impact: f32) -> bool
fn intersects_local_ray(&self, ray: &Ray, max_time_of_impact: f32) -> bool
Tests whether a ray intersects this transformed shape.
Source§fn cast_ray(
&self,
m: &Isometry<f32>,
ray: &Ray,
max_time_of_impact: f32,
solid: bool,
) -> Option<f32>
fn cast_ray( &self, m: &Isometry<f32>, ray: &Ray, max_time_of_impact: f32, solid: bool, ) -> Option<f32>
Computes the time of impact between this transform shape and a ray.
Source§fn cast_ray_and_get_normal(
&self,
m: &Isometry<f32>,
ray: &Ray,
max_time_of_impact: f32,
solid: bool,
) -> Option<RayIntersection>
fn cast_ray_and_get_normal( &self, m: &Isometry<f32>, ray: &Ray, max_time_of_impact: f32, solid: bool, ) -> Option<RayIntersection>
Computes the time of impact, and normal between this transformed shape and a ray.
Source§impl Shape for RoundShape<Cylinder>
impl Shape for RoundShape<Cylinder>
Source§fn scale_dyn(
&self,
scale: &Vector<f32>,
num_subdivisions: u32,
) -> Option<Box<dyn Shape>>
fn scale_dyn( &self, scale: &Vector<f32>, num_subdivisions: u32, ) -> Option<Box<dyn Shape>>
Scales this shape by
scale
into a boxed trait-object. Read moreSource§fn compute_local_aabb(&self) -> Aabb
fn compute_local_aabb(&self) -> Aabb
Computes the
Aabb
of this shape.Source§fn compute_local_bounding_sphere(&self) -> BoundingSphere
fn compute_local_bounding_sphere(&self) -> BoundingSphere
Computes the bounding-sphere of this shape.
Source§fn compute_aabb(&self, position: &Isometry<f32>) -> Aabb
fn compute_aabb(&self, position: &Isometry<f32>) -> Aabb
Computes the
Aabb
of this shape with the given position.Source§fn mass_properties(&self, density: f32) -> MassProperties
fn mass_properties(&self, density: f32) -> MassProperties
Compute the mass-properties of this shape given its uniform density.
Source§fn shape_type(&self) -> ShapeType
fn shape_type(&self) -> ShapeType
Gets the type tag of this shape.
Source§fn as_typed_shape(&self) -> TypedShape<'_>
fn as_typed_shape(&self) -> TypedShape<'_>
Gets the underlying shape as an enum.
fn ccd_thickness(&self) -> f32
fn ccd_angular_thickness(&self) -> f32
Source§fn as_support_map(&self) -> Option<&dyn SupportMap>
fn as_support_map(&self) -> Option<&dyn SupportMap>
Converts this shape into its support mapping, if it has one.
Source§fn as_polygonal_feature_map(&self) -> Option<(&dyn PolygonalFeatureMap, f32)>
fn as_polygonal_feature_map(&self) -> Option<(&dyn PolygonalFeatureMap, f32)>
Converts this shape to a polygonal feature-map, if it is one.
Source§fn clone_box(&self) -> Box<dyn Shape>
fn clone_box(&self) -> Box<dyn Shape>
👎Deprecated: renamed to
clone_dyn
Clones this shape into a boxed trait-object. Read more
Source§fn compute_bounding_sphere(&self, position: &Isometry<f32>) -> BoundingSphere
fn compute_bounding_sphere(&self, position: &Isometry<f32>) -> BoundingSphere
Computes the bounding-sphere of this shape with the given position.
fn as_composite_shape(&self) -> Option<&dyn SimdCompositeShape>
Source§impl<S: SupportMap> SupportMap for RoundShape<S>
impl<S: SupportMap> SupportMap for RoundShape<S>
fn local_support_point(&self, dir: &Vector<f32>) -> Point<f32>
Source§fn local_support_point_toward(&self, dir: &Unit<Vector<f32>>) -> Point<f32>
fn local_support_point_toward(&self, dir: &Unit<Vector<f32>>) -> Point<f32>
Same as
self.local_support_point
except that dir
is normalized.