Struct bvy::GlobalTransform
[−]Expand description
Describe the position of an entity relative to the reference frame.
- To place or move an entity, you should set its
Transform. - To get the global position of an entity, you should get its
GlobalTransform. - For transform hierarchies to work correctly, you must have both a
Transformand aGlobalTransform.- You may use the
TransformBundleto guarantee this.
- You may use the
Transform and GlobalTransform
Transform is the position of an entity relative to its parent position, or the reference
frame if it doesn’t have a Parent.
GlobalTransform is the position of an entity relative to the reference frame.
GlobalTransform is updated from Transform in the system
transform_propagate_system.
This system runs in stage CoreStage::PostUpdate. If you
update theTransform of an entity in this stage or after, you will notice a 1 frame lag
before the GlobalTransform is updated.
Fields
translation: Vec3The position of the global transform
rotation: QuatThe rotation of the global transform
scale: Vec3The scale of the global transform
Implementations
impl GlobalTransform
impl GlobalTransform
pub const fn identity() -> GlobalTransform
pub const fn identity() -> GlobalTransform
Creates a new identity GlobalTransform, with no translation, rotation, and a scale of 1
on all axes.
pub fn compute_matrix(&self) -> Mat4
pub fn compute_matrix(&self) -> Mat4
Returns the 3d affine transformation matrix from this transforms translation, rotation, and scale.
pub fn compute_affine(&self) -> Affine3A
pub fn compute_affine(&self) -> Affine3A
Returns the 3d affine transformation from this transforms translation, rotation, and scale.
pub fn left(&self) -> Vec3
pub fn left(&self) -> Vec3
Equivalent to -local_x()
pub fn down(&self) -> Vec3
pub fn down(&self) -> Vec3
Equivalent to -local_y()
pub fn forward(&self) -> Vec3
pub fn forward(&self) -> Vec3
Equivalent to -local_z()
pub fn mul_transform(&self, transform: Transform) -> GlobalTransform
pub fn mul_transform(&self, transform: Transform) -> GlobalTransform
Multiplies self with transform component by component, returning the
resulting GlobalTransform
Trait Implementations
impl Clone for GlobalTransform
impl Clone for GlobalTransform
fn clone(&self) -> GlobalTransform
fn clone(&self) -> GlobalTransform
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
impl Component for GlobalTransform where
GlobalTransform: 'static,
GlobalTransform: Send,
GlobalTransform: Sync,
impl Component for GlobalTransform where
GlobalTransform: 'static,
GlobalTransform: Send,
GlobalTransform: Sync,
type Storage = TableStorage
impl Debug for GlobalTransform
impl Debug for GlobalTransform
impl Default for GlobalTransform
impl Default for GlobalTransform
fn default() -> GlobalTransform
fn default() -> GlobalTransform
Returns the “default value” for a type. Read more
impl From<GlobalTransform> for Transform
impl From<GlobalTransform> for Transform
fn from(transform: GlobalTransform) -> Transform
fn from(transform: GlobalTransform) -> Transform
Converts to this type from the input type.
impl From<Transform> for GlobalTransform
impl From<Transform> for GlobalTransform
fn from(transform: Transform) -> GlobalTransform
fn from(transform: Transform) -> GlobalTransform
Converts to this type from the input type.
impl GetTypeRegistration for GlobalTransform
impl GetTypeRegistration for GlobalTransform
fn get_type_registration() -> TypeRegistration
impl Mul<GlobalTransform> for GlobalTransform
impl Mul<GlobalTransform> for GlobalTransform
type Output = GlobalTransform
type Output = GlobalTransform
The resulting type after applying the * operator.
fn mul(
self,
global_transform: GlobalTransform
) -> <GlobalTransform as Mul<GlobalTransform>>::Output
fn mul(
self,
global_transform: GlobalTransform
) -> <GlobalTransform as Mul<GlobalTransform>>::Output
Performs the * operation. Read more
impl Mul<Transform> for GlobalTransform
impl Mul<Transform> for GlobalTransform
type Output = GlobalTransform
type Output = GlobalTransform
The resulting type after applying the * operator.
impl Mul<Vec3> for GlobalTransform
impl Mul<Vec3> for GlobalTransform
impl PartialEq<GlobalTransform> for GlobalTransform
impl PartialEq<GlobalTransform> for GlobalTransform
fn eq(&self, other: &GlobalTransform) -> bool
fn eq(&self, other: &GlobalTransform) -> bool
This method tests for self and other values to be equal, and is used
by ==. Read more
fn ne(&self, other: &GlobalTransform) -> bool
fn ne(&self, other: &GlobalTransform) -> bool
This method tests for !=.
impl Reflect for GlobalTransform
impl Reflect for GlobalTransform
fn any_mut(&mut self) -> &mut (dyn Any + 'static)
fn any_mut(&mut self) -> &mut (dyn Any + 'static)
Returns the value as a &mut dyn Any.
fn clone_value(&self) -> Box<dyn Reflect + 'static, Global>
fn clone_value(&self) -> Box<dyn Reflect + 'static, Global>
Clones the value as a Reflect trait object. Read more
fn set(
&mut self,
value: Box<dyn Reflect + 'static, Global>
) -> Result<(), Box<dyn Reflect + 'static, Global>>
fn set(
&mut self,
value: Box<dyn Reflect + 'static, Global>
) -> Result<(), Box<dyn Reflect + 'static, Global>>
Performs a type-checked assignment of a reflected value to this value. Read more
fn apply(&mut self, value: &(dyn Reflect + 'static))
fn apply(&mut self, value: &(dyn Reflect + 'static))
Applies a reflected value to this value. Read more
fn reflect_ref(&self) -> ReflectRef<'_>
fn reflect_ref(&self) -> ReflectRef<'_>
Returns an enumeration of “kinds” of type. Read more
fn reflect_mut(&mut self) -> ReflectMut<'_>
fn reflect_mut(&mut self) -> ReflectMut<'_>
Returns a mutable enumeration of “kinds” of type. Read more
fn serializable(&self) -> Option<Serializable<'_>>
fn serializable(&self) -> Option<Serializable<'_>>
Returns a serializable version of the value. Read more
fn reflect_hash(&self) -> Option<u64>
fn reflect_hash(&self) -> Option<u64>
Returns a hash of the value (which includes the type). Read more
fn reflect_partial_eq(&self, value: &(dyn Reflect + 'static)) -> Option<bool>
fn reflect_partial_eq(&self, value: &(dyn Reflect + 'static)) -> Option<bool>
Returns a “partial equality” comparison result. Read more
impl Struct for GlobalTransform
impl Struct for GlobalTransform
fn field(&self, name: &str) -> Option<&(dyn Reflect + 'static)>
fn field(&self, name: &str) -> Option<&(dyn Reflect + 'static)>
Returns a reference to the value of the field named name as a &dyn Reflect. Read more
fn field_mut(&mut self, name: &str) -> Option<&mut (dyn Reflect + 'static)>
fn field_mut(&mut self, name: &str) -> Option<&mut (dyn Reflect + 'static)>
Returns a mutable reference to the value of the field named name as a
&mut dyn Reflect. Read more
fn field_at(&self, index: usize) -> Option<&(dyn Reflect + 'static)>
fn field_at(&self, index: usize) -> Option<&(dyn Reflect + 'static)>
Returns a reference to the value of the field with index index as a
&dyn Reflect. Read more
fn field_at_mut(&mut self, index: usize) -> Option<&mut (dyn Reflect + 'static)>
fn field_at_mut(&mut self, index: usize) -> Option<&mut (dyn Reflect + 'static)>
Returns a mutable reference to the value of the field with index index
as a &mut dyn Reflect. Read more
fn iter_fields(&self) -> FieldIter<'_>
fn iter_fields(&self) -> FieldIter<'_>
Returns an iterator over the values of the struct’s fields.
fn clone_dynamic(&self) -> DynamicStruct
fn clone_dynamic(&self) -> DynamicStruct
Clones the struct into a [DynamicStruct].
impl Copy for GlobalTransform
impl StructuralPartialEq for GlobalTransform
Auto Trait Implementations
impl RefUnwindSafe for GlobalTransform
impl Send for GlobalTransform
impl Sync for GlobalTransform
impl Unpin for GlobalTransform
impl UnwindSafe for GlobalTransform
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
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,
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
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
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
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
fn as_any(&self) -> &(dyn Any + 'static)
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
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
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,
fn from_world(_world: &mut World) -> T
fn from_world(_world: &mut World) -> T
Creates Self using data from the given World
impl<S> GetField for S where
S: Struct,
impl<S> GetField for S where
S: Struct,
impl<T> GetPath for T where
T: Reflect,
impl<T> GetPath for T where
T: Reflect,
fn path(
&'r self,
path: &'p str
) -> Result<&'r (dyn Reflect + 'static), ReflectPathError<'p>>
fn path(
&'r self,
path: &'p str
) -> Result<&'r (dyn Reflect + 'static), ReflectPathError<'p>>
Returns a reference to the value specified by path. Read more
fn path_mut(
&'r mut self,
path: &'p str
) -> Result<&'r mut (dyn Reflect + 'static), ReflectPathError<'p>>
fn path_mut(
&'r mut self,
path: &'p str
) -> Result<&'r mut (dyn Reflect + 'static), ReflectPathError<'p>>
Returns a mutable reference to the value specified by path. Read more
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>
impl<T> TypeData for T where
T: 'static + Send + Sync + Clone,
impl<T> TypeData for T where
T: 'static + Send + Sync + Clone,
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>,
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