xr-frame / Exports / Transform
# Class: Transform
3D变换组件,作为场景中3D节点的根基,一般被代理到XRNode元素。
# Hierarchy
-
↳
Transform
# Table of contents
# Constructors
# Events
# Properties
# Accessors
- el
- layer
- node
- position
- quaternion
- rotation
- scale
- scene
- version
- visible
- worldForward
- worldMatrix
- worldPosition
- worldQuaternion
- worldRight
- worldScale
- worldUp
# Methods
# Constructors
# constructor
• new Transform()
# Inherited from
# Events
# onAdd
▸ onAdd(parent
, data
): void
所挂载的element
被挂载到场景时触发的回调。
# Parameters
Name | Type |
---|---|
parent | Element |
data | ITransformData |
# Returns
void
# Inherited from
# onRelease
▸ onRelease(data
): void
从被挂载的element
上被移除,或是element
被销毁时,触发的回调。
一般用于释放持有的资源。
# Parameters
Name | Type |
---|---|
data | ITransformData |
# Returns
void
# Inherited from
# onRemove
▸ onRemove(parent
, data
): void
所挂载的element
从父节点parent
被移除时,或者自己从element
上被移除时,触发的回调。
一般用于消除功能的运作。
如果一个组件的元素直接被销毁了,那这个组件就不会经历onRemove而是直接进入onRelease。
# Parameters
Name | Type |
---|---|
parent | Element |
data | ITransformData |
# Returns
void
# Inherited from
# onTick
▸ onTick(deltaTime
, data
): void
渲染每帧触发的回调。
# Parameters
Name | Type | Description |
---|---|---|
deltaTime | number | 单位为毫秒(ms)。 |
data | ITransformData | - |
# Returns
void
# Inherited from
# onUpdate
▸ onUpdate(data
, preData
): void
数据更新时触发的回调。
# Parameters
Name | Type |
---|---|
data | ITransformData |
preData | ITransformData |
# Returns
void
# Inherited from
# Properties
# priority
• Readonly
priority: number
= 100
自定义组件的更新优先级。
# Overrides
# schema
• Readonly
schema: IComponentSchema
# Overrides
# EVENTS
▪ Static
EVENTS: string
[] = []
# Inherited from
# Accessors
# el
• get
el(): Element
挂载的元素。
# Returns
# layer
• get
layer(): number
# Returns
number
• set
layer(value
): void
# Parameters
Name | Type |
---|---|
value | number |
# Returns
void
# node
• get
node(): default
# Returns
default
# position
• get
position(): Vector3
# Returns
# quaternion
• get
quaternion(): Quaternion
# Returns
# rotation
• get
rotation(): Vector3
注意如果这里直接修改,使用弧度。
# Returns
# scale
• get
scale(): Vector3
# Returns
# scene
• get
scene(): Scene
当前场景。
# Returns
# version
• get
version(): number
当前版本,每次有数据更新都会增加,可以用作和其他组件合作的依据。
# Returns
number
# visible
• get
visible(): boolean
# Returns
boolean
• set
visible(value
): void
# Parameters
Name | Type |
---|---|
value | boolean |
# Returns
void
# worldForward
• get
worldForward(): Vector3
获取世界前向向量,注意不可修改。
# Returns
# worldMatrix
• get
worldMatrix(): Matrix4
获取世界矩阵,注意不可修改。
# Returns
# worldPosition
• get
worldPosition(): Vector3
获取世界绝对位移,注意不可修改。
# Returns
# worldQuaternion
• get
worldQuaternion(): Quaternion
获取世界绝对旋转,注意不可修改。
# Returns
# worldRight
• get
worldRight(): Vector3
获取世界右向向量,注意不可修改。
# Returns
# worldScale
• get
worldScale(): Vector3
获取世界绝对缩放,注意不可修改。
# Returns
# worldUp
• get
worldUp(): Vector3
获取世界上向向量,注意不可修改。
# Returns
# Methods
# getData
▸ getData<T
>(key
): ITransformData
[T
]
获取一个当前值。
# Type parameters
Name | Type |
---|---|
T | extends keyof ITransformData |
# Parameters
Name | Type |
---|---|
key | T |
# Returns
# Inherited from
# setData
▸ setData(data
): void
不通过xml
而是直接设置data
,注意值的类型需要和schema
中一致。
# Parameters
Name | Type |
---|---|
data | Partial <ITransformData > |
# Returns
void
# Inherited from
# setDataOne
▸ setDataOne<T
>(key
, value
): void
设置一个数据。
# Type parameters
Name | Type |
---|---|
T | extends keyof ITransformData |
# Parameters
Name | Type |
---|---|
key | T |
value | ITransformData [T ] |
# Returns
void
# Inherited from
# setLocalMatrix
▸ setLocalMatrix(mat
): void
直接设置本地矩阵。
# Parameters
Name | Type |
---|---|
mat | Matrix4 |
# Returns
void