基础类型 / Transform
Transform Class
三维变换
Transform 由平移、旋转和缩放组成。
平移用于确定物体的位置,旋转用于确定物体的朝向,缩放用于确定物体的大小。
按以下顺序应用位置向量变换:缩放->旋转->平移, 方向向量的变换按以下顺序应用:缩放->旋转
Table of contents
Accessors
position(): Vector |
|---|
| 获取位置信息 |
rotation(): Rotation |
| 获取旋转信息 |
scale(): Vector |
| 获取缩放信息 |
identity(): Transform |
| 获取一个单位 Transform |
Methods
clone(): Transform |
|---|
| 克隆一个新的 Transform |
fromString(str: string, outer?: Transform): Transform |
| 通过字符串创建一个 Transform |
| getForwardVector |
| :----- |
getRightVector(): Vector |
| 获取 Transform 的 向右 方向向量 |
getUpVector(): Vector |
| 获取 Transform 的 向上 方向向量 |
inverseTransformDirection(location: Vector): Vector |
| 世界方向转化为本地方向 |
inverseTransformPosition(location: Vector): Vector |
| 世界坐标转化为本地坐标 |
lookAt(target: Vector): void |
| 面向目标方向 |
rotate(axis: Vector, angle: number): void |
| 绕指定轴旋转 |
toString(): string |
| 输出为一个有格式的字符串 |
transformDirection(location: Vector): Vector |
| 本地方向转化为世界方向 |
transformPosition(location: Vector): Vector |
| 本地坐标转化为世界坐标 |
fromString(str: string, outer?: Transform): Transform |
| 通过字符串创建一个 Transform |
返回一个新的 Transform
• new Transform(location, rotation, scale)
用给定的 Position 或 rotation 或 scale 值设定给 Transform
Parameters
location Vector | 坐标信息 |
|---|---|
rotation Rotation | 旋转信息 |
scale Vector | 缩放信息 |
• new Transform(newTransform)
复制给定的 Transform
Parameters
newTransform Transform | Transform 对象 |
|---|
Accessors
position
• | • | ||||
|---|---|---|---|---|---|
获取位置信息 Returns
| 设置位置信息 Parameters
|
rotation
• | • | ||||
|---|---|---|---|---|---|
获取旋转信息 Returns
| 设置旋转信息 Parameters
|
scale
• | • | ||||
|---|---|---|---|---|---|
获取缩放信息 Returns
| 设置缩放信息 Parameters
|
identity
• |
|---|
获取一个单位 Transform 位置:(0, 0, 0),旋转:(0, 0, 0),缩放:(1, 1, 1) Returns |
Transform |
|---|
Methods
clone
• clone(): Transform
克隆一个新的 Transform
Returns
Transform | 新的数据相同的 Transform |
|---|
fromString
• fromString(str): void
读取字符串数据
Parameters
str string | 读取的字符串数据 range:"0.000000,0.000000,0.0000000.000000,0.000000,0.0000001.000000,1.000000,1.000000" |
|---|---|
outer? Transform | 接受结果的Transform default:null |
Returns
Transform | 创建或读取自字符串的 Transform 对象 |
|---|
Parameters
str string | 读取的字符串数据 range:"0.000000,0.000000,0.0000000.000000,0.000000,0.0000001.000000,1.000000,1.000000" |
|---|
获取 Transform 的 向前 方向向量
Returns
Vector | Transform 的向前方向向量 |
|---|
getRightVector
• getRightVector(): Vector
获取 Transform 的 向右 方向向量
Returns
Vector | Transform 的向右方向向量 |
|---|
getUpVector
• getUpVector(): Vector
获取 Transform 的 向上 方向向量
Returns
Vector | Transform 的向上方向向量 |
|---|
inverseTransformDirection
• inverseTransformDirection(location): Vector
世界方向转化为本地方向
Parameters
location Vector | 世界方向 |
|---|
Returns
Vector | 本地方向 |
|---|
inverseTransformPosition
• inverseTransformPosition(location): Vector
世界坐标转化为本地坐标
Parameters
location Vector | 世界坐标 |
|---|
Returns
Vector | 本地坐标 |
|---|
lookAt
• lookAt(target): void
面向目标方向
Parameters
target Vector | 世界坐标 |
|---|
rotate
• rotate(axis, angle): void
绕指定轴旋转
Parameters
axis Vector | 旋转轴 |
|---|---|
angle number | 旋转的角度值 range: 无限制 type:浮点数 |
toString
• toString(): string
输出为一个有格式的字符串
Returns
string | 字符串 |
|---|
transformDirection
• transformDirection(location): Vector
本地方向转化为世界方向
Parameters
location Vector | 本地方向 |
|---|
Returns
Vector | 世界方向 |
|---|
transformPosition
• transformPosition(location): Vector
本地坐标转化为世界坐标
Parameters
location Vector | 本地坐标 |
|---|
Returns
Vector | 世界坐标 |
|---|
fromString
• Static fromString(str, outer?): Transform
通过字符串创建一个 Transform
字符串格式为:0.000000,0.000000,0.000000|0.000000,0.000000,0.000000|1.000000,1.000000,1.000000
如果 outer 不为空, 返回 outer,否则返回一个新的 Transform 对象, 建议传入 outer 来减少 new 对象且 outer 不能为 null/undefined
Parameters
str string | 读取的字符串数据 range:"0.000000,0.000000,0.0000000.000000,0.000000,0.0000001.000000,1.000000,1.000000" |
|---|---|
outer? Transform | 接受结果的Transform default:null |
Returns
Transform | 创建或读取自字符串的 Transform 对象 |
|---|