Skip to main content

GlobalTransform

Struct GlobalTransform 

Source
pub struct GlobalTransform(pub Mat4);
Expand description

全局变换组件,表示世界空间中的最终变换。

GlobalTransform 通常由层次变换系统计算,表示对象在世界空间中的最终位置、旋转和缩放。 它使用 4x4 矩阵存储,以提供高效的变换操作。

Tuple Fields§

§0: Mat4

Implementations§

Source§

impl GlobalTransform

Source

pub const IDENTITY: Self

单位全局变换

Source

pub fn from_matrix(matrix: Mat4) -> Self

从变换矩阵创建全局变换

Source

pub fn from_transform(transform: &Transform) -> Self

从本地变换创建全局变换

Source

pub fn matrix(&self) -> Mat4

获取变换矩阵

Source

pub fn translation(&self) -> Vec3

获取位置分量

Source

pub fn rotation(&self) -> Quat

获取旋转分量

Source

pub fn scale(&self) -> Vec3

获取缩放分量

Source

pub fn transform_point(&self, point: Vec3) -> Vec3

应用全局变换到点

Source

pub fn transform_vector(&self, vector: Vec3) -> Vec3

应用全局变换到向量(忽略平移)

Source

pub fn mul_transform(&self, other: &GlobalTransform) -> GlobalTransform

组合全局变换

Source

pub fn inverse(&self) -> Result<Self>

获取全局变换的逆变换

Source

pub fn is_finite(&self) -> bool

检查全局变换是否有效

Trait Implementations§

Source§

impl Clone for GlobalTransform

Source§

fn clone(&self) -> GlobalTransform

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for GlobalTransform

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for GlobalTransform

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl From<Mat4> for GlobalTransform

Source§

fn from(matrix: Mat4) -> Self

Converts to this type from the input type.
Source§

impl From<Transform> for GlobalTransform

Source§

fn from(transform: Transform) -> Self

Converts to this type from the input type.
Source§

impl PartialEq for GlobalTransform

Source§

fn eq(&self, other: &GlobalTransform) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for GlobalTransform

Source§

impl StructuralPartialEq for GlobalTransform

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.