pub struct GlobalTransform(pub Mat4);Expand description
全局变换组件,表示世界空间中的最终变换。
GlobalTransform 通常由层次变换系统计算,表示对象在世界空间中的最终位置、旋转和缩放。
它使用 4x4 矩阵存储,以提供高效的变换操作。
Tuple Fields§
§0: Mat4Implementations§
Source§impl GlobalTransform
impl GlobalTransform
Sourcepub const IDENTITY: GlobalTransform
pub const IDENTITY: GlobalTransform
单位全局变换
Sourcepub fn from_matrix(matrix: Mat4) -> GlobalTransform
pub fn from_matrix(matrix: Mat4) -> GlobalTransform
从变换矩阵创建全局变换
Sourcepub fn from_transform(transform: &Transform) -> GlobalTransform
pub fn from_transform(transform: &Transform) -> GlobalTransform
从本地变换创建全局变换
Sourcepub fn translation(&self) -> Vec3
pub fn translation(&self) -> Vec3
获取位置分量
Sourcepub fn transform_point(&self, point: Vec3) -> Vec3
pub fn transform_point(&self, point: Vec3) -> Vec3
应用全局变换到点
Sourcepub fn transform_vector(&self, vector: Vec3) -> Vec3
pub fn transform_vector(&self, vector: Vec3) -> Vec3
应用全局变换到向量(忽略平移)
Sourcepub fn mul_transform(&self, other: &GlobalTransform) -> GlobalTransform
pub fn mul_transform(&self, other: &GlobalTransform) -> GlobalTransform
组合全局变换
Sourcepub fn inverse(&self) -> Result<GlobalTransform, AnvilKitError>
pub fn inverse(&self) -> Result<GlobalTransform, AnvilKitError>
获取全局变换的逆变换
Trait Implementations§
Source§impl Clone for GlobalTransform
impl Clone for GlobalTransform
Source§fn clone(&self) -> GlobalTransform
fn clone(&self) -> GlobalTransform
Returns a duplicate 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 Component for GlobalTransform
impl Component for GlobalTransform
Source§const STORAGE_TYPE: StorageType = bevy_ecs::component::StorageType::Table
const STORAGE_TYPE: StorageType = bevy_ecs::component::StorageType::Table
A constant indicating the storage type used for this component.
Source§fn register_component_hooks(_hooks: &mut ComponentHooks)
fn register_component_hooks(_hooks: &mut ComponentHooks)
Called when registering this component, allowing mutable access to its
ComponentHooks.Source§impl Debug for GlobalTransform
impl Debug for GlobalTransform
Source§impl Default for GlobalTransform
impl Default for GlobalTransform
Source§fn default() -> GlobalTransform
fn default() -> GlobalTransform
Returns the “default value” for a type. Read more
Source§impl From<Mat4> for GlobalTransform
impl From<Mat4> for GlobalTransform
Source§fn from(matrix: Mat4) -> GlobalTransform
fn from(matrix: Mat4) -> GlobalTransform
Converts to this type from the input type.
Source§impl From<Transform> for GlobalTransform
impl From<Transform> for GlobalTransform
Source§fn from(transform: Transform) -> GlobalTransform
fn from(transform: Transform) -> GlobalTransform
Converts to this type from the input type.
Source§impl PartialEq for GlobalTransform
impl PartialEq for GlobalTransform
impl Copy for GlobalTransform
impl StructuralPartialEq for GlobalTransform
Auto Trait Implementations§
impl Freeze for GlobalTransform
impl RefUnwindSafe for GlobalTransform
impl Send for GlobalTransform
impl Sync for GlobalTransform
impl Unpin for GlobalTransform
impl UnsafeUnpin for GlobalTransform
impl UnwindSafe for GlobalTransform
Blanket Implementations§
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
Mutably borrows from an owned value. Read more
Source§impl<C> Bundle for Cwhere
C: Component,
impl<C> Bundle for Cwhere
C: Component,
fn component_ids( components: &mut Components, storages: &mut Storages, ids: &mut impl FnMut(ComponentId), )
unsafe fn from_components<T, F>(ctx: &mut T, func: &mut F) -> C
Source§fn get_component_ids(
components: &Components,
ids: &mut impl FnMut(Option<ComponentId>),
)
fn get_component_ids( components: &Components, ids: &mut impl FnMut(Option<ComponentId>), )
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>
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.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
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)
Convert
&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)
Convert
&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> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<C> DynamicBundle for Cwhere
C: Component,
impl<C> DynamicBundle for Cwhere
C: Component,
fn get_components(self, func: &mut impl FnMut(StorageType, OwningPtr<'_>))
Source§impl<T> FromWorld for Twhere
T: Default,
impl<T> FromWorld for Twhere
T: Default,
Source§fn from_world(_world: &mut World) -> T
fn from_world(_world: &mut World) -> T
Creates
Self using data from the given World.