pub enum ColliderShape {
Ball(BallShape),
Cylinder(CylinderShape),
Cone(ConeShape),
Cuboid(CuboidShape),
Capsule(CapsuleShape),
Segment(SegmentShape),
Triangle(TriangleShape),
Trimesh(TrimeshShape),
Heightfield(HeightfieldShape),
Polyhedron(ConvexPolyhedronShape),
}Expand description
Possible collider shapes.
Variants§
Ball(BallShape)
See BallShape docs.
Cylinder(CylinderShape)
See CylinderShape docs.
Cone(ConeShape)
See ConeShape docs.
Cuboid(CuboidShape)
See CuboidShape docs.
Capsule(CapsuleShape)
See CapsuleShape docs.
Segment(SegmentShape)
See SegmentShape docs.
Triangle(TriangleShape)
See TriangleShape docs.
Trimesh(TrimeshShape)
See TrimeshShape docs.
Heightfield(HeightfieldShape)
See HeightfieldShape docs.
Polyhedron(ConvexPolyhedronShape)
See ConvexPolyhedronShape docs.
Implementations§
Source§impl ColliderShape
impl ColliderShape
pub const BALL_F_0: &'static str = "Ball@0"
pub const CYLINDER_F_0: &'static str = "Cylinder@0"
pub const CONE_F_0: &'static str = "Cone@0"
pub const CUBOID_F_0: &'static str = "Cuboid@0"
pub const CAPSULE_F_0: &'static str = "Capsule@0"
pub const SEGMENT_F_0: &'static str = "Segment@0"
pub const TRIANGLE_F_0: &'static str = "Triangle@0"
pub const TRIMESH_F_0: &'static str = "Trimesh@0"
pub const HEIGHTFIELD_F_0: &'static str = "Heightfield@0"
pub const POLYHEDRON_F_0: &'static str = "Polyhedron@0"
Source§impl ColliderShape
impl ColliderShape
Sourcepub fn ball(radius: f32) -> ColliderShape
pub fn ball(radius: f32) -> ColliderShape
Initializes a ball shape defined by its radius.
Sourcepub fn cylinder(half_height: f32, radius: f32) -> ColliderShape
pub fn cylinder(half_height: f32, radius: f32) -> ColliderShape
Initializes a cylindrical shape defined by its half-height (along along the y axis) and its radius.
Sourcepub fn cone(half_height: f32, radius: f32) -> ColliderShape
pub fn cone(half_height: f32, radius: f32) -> ColliderShape
Initializes a cone shape defined by its half-height (along along the y axis) and its basis radius.
Sourcepub fn cuboid(hx: f32, hy: f32, hz: f32) -> ColliderShape
pub fn cuboid(hx: f32, hy: f32, hz: f32) -> ColliderShape
Initializes a cuboid shape defined by its half-extents.
Sourcepub fn capsule(
begin: Matrix<f32, Const<3>, Const<1>, ArrayStorage<f32, 3, 1>>,
end: Matrix<f32, Const<3>, Const<1>, ArrayStorage<f32, 3, 1>>,
radius: f32,
) -> ColliderShape
pub fn capsule( begin: Matrix<f32, Const<3>, Const<1>, ArrayStorage<f32, 3, 1>>, end: Matrix<f32, Const<3>, Const<1>, ArrayStorage<f32, 3, 1>>, radius: f32, ) -> ColliderShape
Initializes a capsule shape from its endpoints and radius.
Sourcepub fn capsule_x(half_height: f32, radius: f32) -> ColliderShape
pub fn capsule_x(half_height: f32, radius: f32) -> ColliderShape
Initializes a new collider builder with a capsule shape aligned with the x axis.
Sourcepub fn capsule_y(half_height: f32, radius: f32) -> ColliderShape
pub fn capsule_y(half_height: f32, radius: f32) -> ColliderShape
Initializes a new collider builder with a capsule shape aligned with the y axis.
Sourcepub fn capsule_z(half_height: f32, radius: f32) -> ColliderShape
pub fn capsule_z(half_height: f32, radius: f32) -> ColliderShape
Initializes a new collider builder with a capsule shape aligned with the z axis.
Sourcepub fn segment(
begin: Matrix<f32, Const<3>, Const<1>, ArrayStorage<f32, 3, 1>>,
end: Matrix<f32, Const<3>, Const<1>, ArrayStorage<f32, 3, 1>>,
) -> ColliderShape
pub fn segment( begin: Matrix<f32, Const<3>, Const<1>, ArrayStorage<f32, 3, 1>>, end: Matrix<f32, Const<3>, Const<1>, ArrayStorage<f32, 3, 1>>, ) -> ColliderShape
Initializes a segment shape from its endpoints.
Sourcepub fn triangle(
a: Matrix<f32, Const<3>, Const<1>, ArrayStorage<f32, 3, 1>>,
b: Matrix<f32, Const<3>, Const<1>, ArrayStorage<f32, 3, 1>>,
c: Matrix<f32, Const<3>, Const<1>, ArrayStorage<f32, 3, 1>>,
) -> ColliderShape
pub fn triangle( a: Matrix<f32, Const<3>, Const<1>, ArrayStorage<f32, 3, 1>>, b: Matrix<f32, Const<3>, Const<1>, ArrayStorage<f32, 3, 1>>, c: Matrix<f32, Const<3>, Const<1>, ArrayStorage<f32, 3, 1>>, ) -> ColliderShape
Initializes a triangle shape.
Sourcepub fn trimesh(geometry_sources: Vec<GeometrySource>) -> ColliderShape
pub fn trimesh(geometry_sources: Vec<GeometrySource>) -> ColliderShape
Initializes a triangle mesh shape defined by a set of handles to mesh nodes that will be used to create physical shape.
Sourcepub fn heightfield(geometry_source: GeometrySource) -> ColliderShape
pub fn heightfield(geometry_source: GeometrySource) -> ColliderShape
Initializes a heightfield shape defined by a handle to terrain node.
Trait Implementations§
Source§impl AsRef<str> for ColliderShape
impl AsRef<str> for ColliderShape
Source§impl Clone for ColliderShape
impl Clone for ColliderShape
Source§fn clone(&self) -> ColliderShape
fn clone(&self) -> ColliderShape
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ColliderShape
impl Debug for ColliderShape
Source§impl Default for ColliderShape
impl Default for ColliderShape
Source§fn default() -> ColliderShape
fn default() -> ColliderShape
Source§impl FromStr for ColliderShape
impl FromStr for ColliderShape
Source§type Err = ParseError
type Err = ParseError
Source§fn from_str(s: &str) -> Result<ColliderShape, <ColliderShape as FromStr>::Err>
fn from_str(s: &str) -> Result<ColliderShape, <ColliderShape as FromStr>::Err>
s to return a value of this type. Read moreSource§impl PartialEq for ColliderShape
impl PartialEq for ColliderShape
Source§impl Reflect for ColliderShapewhere
ColliderShape: 'static,
BallShape: Reflect,
CylinderShape: Reflect,
ConeShape: Reflect,
CuboidShape: Reflect,
CapsuleShape: Reflect,
SegmentShape: Reflect,
TriangleShape: Reflect,
TrimeshShape: Reflect,
HeightfieldShape: Reflect,
ConvexPolyhedronShape: Reflect,
impl Reflect for ColliderShapewhere
ColliderShape: 'static,
BallShape: Reflect,
CylinderShape: Reflect,
ConeShape: Reflect,
CuboidShape: Reflect,
CapsuleShape: Reflect,
SegmentShape: Reflect,
TriangleShape: Reflect,
TrimeshShape: Reflect,
HeightfieldShape: Reflect,
ConvexPolyhedronShape: Reflect,
fn source_path() -> &'static str
fn type_name(&self) -> &'static str
fn doc(&self) -> &'static str
Source§fn assembly_name(&self) -> &'static str
fn assembly_name(&self) -> &'static str
#[derive(Reflect)]) to ensure that this method will return correct assembly
name. In other words - there’s no guarantee, that any implementation other than proc-macro
will return a correct name of the assembly. Alternatively, you can use env!("CARGO_PKG_NAME")
as an implementation.Source§fn type_assembly_name() -> &'static str
fn type_assembly_name() -> &'static str
#[derive(Reflect)]) to ensure that this method will return correct assembly
name. In other words - there’s no guarantee, that any implementation other than proc-macro
will return a correct name of the assembly. Alternatively, you can use env!("CARGO_PKG_NAME")
as an implementation.fn fields_info(&self, func: &mut dyn FnMut(&[FieldInfo<'_, '_>]))
fn into_any(self: Box<ColliderShape>) -> Box<dyn Any>
fn set( &mut self, value: Box<dyn Reflect>, ) -> Result<Box<dyn Reflect>, Box<dyn Reflect>>
fn as_any(&self, func: &mut dyn FnMut(&(dyn Any + 'static)))
fn as_any_mut(&mut self, func: &mut dyn FnMut(&mut (dyn Any + 'static)))
fn as_reflect(&self, func: &mut dyn FnMut(&(dyn Reflect + 'static)))
fn as_reflect_mut(&mut self, func: &mut dyn FnMut(&mut (dyn Reflect + 'static)))
fn fields(&self, func: &mut dyn FnMut(&[&(dyn Reflect + 'static)]))
fn fields_mut( &mut self, func: &mut dyn FnMut(&mut [&mut (dyn Reflect + 'static)]), )
fn field( &self, name: &str, func: &mut dyn FnMut(Option<&(dyn Reflect + 'static)>), )
fn field_mut( &mut self, name: &str, func: &mut dyn FnMut(Option<&mut (dyn Reflect + 'static)>), )
Source§fn set_field(
&mut self,
field: &str,
value: Box<dyn Reflect>,
func: &mut dyn FnMut(Result<Box<dyn Reflect>, Box<dyn Reflect>>),
)
fn set_field( &mut self, field: &str, value: Box<dyn Reflect>, func: &mut dyn FnMut(Result<Box<dyn Reflect>, Box<dyn Reflect>>), )
#[reflect(setter = ..)] or falls back to
Reflect::field_mutfn as_array(&self, func: &mut dyn FnMut(Option<&(dyn ReflectArray + 'static)>))
fn as_array_mut( &mut self, func: &mut dyn FnMut(Option<&mut (dyn ReflectArray + 'static)>), )
fn as_list(&self, func: &mut dyn FnMut(Option<&(dyn ReflectList + 'static)>))
fn as_list_mut( &mut self, func: &mut dyn FnMut(Option<&mut (dyn ReflectList + 'static)>), )
fn as_inheritable_variable( &self, func: &mut dyn FnMut(Option<&(dyn ReflectInheritableVariable + 'static)>), )
fn as_inheritable_variable_mut( &mut self, func: &mut dyn FnMut(Option<&mut (dyn ReflectInheritableVariable + 'static)>), )
fn as_hash_map( &self, func: &mut dyn FnMut(Option<&(dyn ReflectHashMap + 'static)>), )
fn as_hash_map_mut( &mut self, func: &mut dyn FnMut(Option<&mut (dyn ReflectHashMap + 'static)>), )
Source§impl TryFrom<&str> for ColliderShape
impl TryFrom<&str> for ColliderShape
Source§type Error = ParseError
type Error = ParseError
Source§fn try_from(
s: &str,
) -> Result<ColliderShape, <ColliderShape as TryFrom<&str>>::Error>
fn try_from( s: &str, ) -> Result<ColliderShape, <ColliderShape as TryFrom<&str>>::Error>
Source§impl TypeUuidProvider for ColliderShape
impl TypeUuidProvider for ColliderShape
Source§impl VariantNames for ColliderShape
impl VariantNames for ColliderShape
Source§impl Visit for ColliderShapewhere
BallShape: Visit,
CylinderShape: Visit,
ConeShape: Visit,
CuboidShape: Visit,
CapsuleShape: Visit,
SegmentShape: Visit,
TriangleShape: Visit,
TrimeshShape: Visit,
HeightfieldShape: Visit,
ConvexPolyhedronShape: Visit,
impl Visit for ColliderShapewhere
BallShape: Visit,
CylinderShape: Visit,
ConeShape: Visit,
CuboidShape: Visit,
CapsuleShape: Visit,
SegmentShape: Visit,
TriangleShape: Visit,
TrimeshShape: Visit,
HeightfieldShape: Visit,
ConvexPolyhedronShape: Visit,
Source§fn visit(&mut self, name: &str, visitor: &mut Visitor) -> Result<(), VisitError>
fn visit(&mut self, name: &str, visitor: &mut Visitor) -> Result<(), VisitError>
impl StructuralPartialEq for ColliderShape
Auto Trait Implementations§
impl Freeze for ColliderShape
impl !RefUnwindSafe for ColliderShape
impl Send for ColliderShape
impl Sync for ColliderShape
impl Unpin for ColliderShape
impl !UnwindSafe for ColliderShape
Blanket Implementations§
Source§impl<T> AsyncTaskResult for T
impl<T> AsyncTaskResult for T
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Any. Could be used to downcast a trait object
to a particular type.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Any. Could be used to downcast a trait object
to a particular type.fn into_any(self: Box<T>) -> Box<dyn Any>
Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<T> FieldValue for Twhere
T: 'static,
impl<T> FieldValue for Twhere
T: 'static,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> MessageData for T
impl<T> MessageData for T
Source§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<R, P> ReadPrimitive<R> for P
impl<R, P> ReadPrimitive<R> for P
Source§fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
ReadEndian::read_from_little_endian().Source§impl<T> ReflectBase for Twhere
T: Reflect,
impl<T> ReflectBase for Twhere
T: Reflect,
fn as_any_raw(&self) -> &(dyn Any + 'static)
fn as_any_raw_mut(&mut self) -> &mut (dyn Any + 'static)
Source§impl<T> ResolvePath for Twhere
T: Reflect,
impl<T> ResolvePath for Twhere
T: Reflect,
fn resolve_path<'p>( &self, path: &'p str, func: &mut dyn FnMut(Result<&(dyn Reflect + 'static), ReflectPathError<'p>>), )
fn resolve_path_mut<'p>( &mut self, path: &'p str, func: &mut dyn FnMut(Result<&mut (dyn Reflect + 'static), ReflectPathError<'p>>), )
fn get_resolve_path<'p, T>(
&self,
path: &'p str,
func: &mut dyn FnMut(Result<&T, ReflectPathError<'p>>),
)where
T: Reflect,
fn get_resolve_path_mut<'p, T>(
&mut self,
path: &'p str,
func: &mut dyn FnMut(Result<&mut T, ReflectPathError<'p>>),
)where
T: Reflect,
Source§impl<T> ScriptMessagePayload for T
impl<T> ScriptMessagePayload for T
Source§fn as_any_ref(&self) -> &(dyn Any + 'static)
fn as_any_ref(&self) -> &(dyn Any + 'static)
self as &dyn AnySource§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
self as &dyn AnySource§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.