Struct heron_core::RotationConstraints
source · [−]Expand description
Component that restrict what rotations can be caused by forces.
It must be inserted on the same entity of a RigidBody
Note that angular velocity may still be applied programmatically. This only restrict how rotation can change when force/torques are applied.
Example
fn spawn(mut commands: Commands) {
commands.spawn_bundle(todo!("Spawn your sprite/mesh, incl. at least a GlobalTransform"))
.insert(CollisionShape::Sphere { radius: 1.0 })
.insert(RotationConstraints::lock()); // Prevent rotation caused by forces
}
Fields
allow_x: bool
Set to true to prevent rotations around the x axis
allow_y: bool
Set to true to prevent rotations around the y axis
allow_z: bool
Set to true to prevent rotations around the Z axis
Implementations
sourceimpl RotationConstraints
impl RotationConstraints
sourcepub fn restrict_to_x_only() -> Self
pub fn restrict_to_x_only() -> Self
Allow rotation around the x axis only (and prevent rotating around the other axes)
sourcepub fn restrict_to_y_only() -> Self
pub fn restrict_to_y_only() -> Self
Allow rotation around the y axis only (and prevent rotating around the other axes)
sourcepub fn restrict_to_z_only() -> Self
pub fn restrict_to_z_only() -> Self
Allow rotation around the z axis only (and prevent rotating around the other axes)
Trait Implementations
sourceimpl Clone for RotationConstraints
impl Clone for RotationConstraints
sourcefn clone(&self) -> RotationConstraints
fn clone(&self) -> RotationConstraints
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl Component for RotationConstraints where
Self: Send + Sync + 'static,
impl Component for RotationConstraints where
Self: Send + Sync + 'static,
type Storage = TableStorage
sourceimpl Debug for RotationConstraints
impl Debug for RotationConstraints
sourceimpl Default for RotationConstraints
impl Default for RotationConstraints
sourceimpl GetTypeRegistration for RotationConstraints
impl GetTypeRegistration for RotationConstraints
fn get_type_registration() -> TypeRegistration
sourceimpl Reflect for RotationConstraints
impl Reflect for RotationConstraints
fn type_name(&self) -> &str
fn any(&self) -> &dyn Any
fn any_mut(&mut self) -> &mut dyn Any
fn clone_value(&self) -> Box<dyn Reflect>
fn set(&mut self, value: Box<dyn Reflect>) -> Result<(), Box<dyn Reflect>>
fn apply(&mut self, value: &dyn Reflect)
fn reflect_ref(&self) -> ReflectRef<'_>
fn reflect_mut(&mut self) -> ReflectMut<'_>
sourcefn serializable(&self) -> Option<Serializable<'_>>
fn serializable(&self) -> Option<Serializable<'_>>
Returns a serializable value, if serialization is supported. Otherwise None
will be
returned. Read more
sourcefn reflect_hash(&self) -> Option<u64>
fn reflect_hash(&self) -> Option<u64>
Returns a hash of the value (which includes the type) if hashing is supported. Otherwise
None
will be returned. Read more
sourcefn reflect_partial_eq(&self, value: &dyn Reflect) -> Option<bool>
fn reflect_partial_eq(&self, value: &dyn Reflect) -> Option<bool>
Returns a “partial equal” comparison result if comparison is supported. Otherwise None
will be returned. Read more
sourceimpl Struct for RotationConstraints
impl Struct for RotationConstraints
fn field(&self, name: &str) -> Option<&dyn Reflect>
fn field_mut(&mut self, name: &str) -> Option<&mut dyn Reflect>
fn field_at(&self, index: usize) -> Option<&dyn Reflect>
fn field_at_mut(&mut self, index: usize) -> Option<&mut dyn Reflect>
fn name_at(&self, index: usize) -> Option<&str>
fn field_len(&self) -> usize
fn iter_fields(&self) -> FieldIter<'_>
fn clone_dynamic(&self) -> DynamicStruct
impl Copy for RotationConstraints
Auto Trait Implementations
impl RefUnwindSafe for RotationConstraints
impl Send for RotationConstraints
impl Sync for RotationConstraints
impl Unpin for RotationConstraints
impl UnwindSafe for RotationConstraints
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<T> Downcast for T where
T: Any,
impl<T> Downcast for T where
T: Any,
pub fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
pub fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Convert 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
. Read more
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read more
pub fn as_any(&self) -> &(dyn Any + 'static)
pub fn as_any(&self) -> &(dyn Any + 'static)
Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read more
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert &mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s. Read more
impl<T> FromWorld for T where
T: Default,
impl<T> FromWorld for T where
T: Default,
pub fn from_world(_world: &mut World) -> T
pub fn from_world(_world: &mut World) -> T
Creates Self
using data from the given [World]
impl<T> GetPath for T where
T: Reflect,
impl<T> GetPath for T where
T: Reflect,
pub fn path(
&'r self,
path: &'p str
) -> Result<&'r (dyn Reflect + 'static), ReflectPathError<'p>>
pub fn path_mut(
&'r mut self,
path: &'p str
) -> Result<&'r mut (dyn Reflect + 'static), ReflectPathError<'p>>
fn get_path<T>(&'r self, path: &'p str) -> Result<&'r T, ReflectPathError<'p>> where
T: Reflect,
fn get_path_mut<T>(
&'r mut self,
path: &'p str
) -> Result<&'r mut T, ReflectPathError<'p>> where
T: Reflect,
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcepub fn to_owned(&self) -> T
pub fn to_owned(&self) -> T
Creates owned data from borrowed data, usually by cloning. Read more
sourcepub fn clone_into(&self, target: &mut T)
pub fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more
impl<T> TypeData for T where
T: 'static + Send + Sync + Clone,
impl<T> TypeData for T where
T: 'static + Send + Sync + Clone,
pub fn clone_type_data(&self) -> Box<dyn TypeData + 'static, Global>
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
pub fn vzip(self) -> V
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more