ht.Math.Quaternion(x, y, z, w)

new Quaternion(x, y, z, w)

创建并初始化一个四元数对象,使用 x、y、z 和 w 四个分量表示

Parameters:
Name Type Attributes Description
x number <optional>

默认值 0

y number <optional>

默认值 0

z number <optional>

默认值 0

w number <optional>

默认值 1

Methods

clone() → {ht.Math.Quaternion}

返回一个与当前四元数有相同 x、y、z 和 w 分量的四元数

conjugate() → {ht.Math.Quaternion}

返回当前四元数的旋转共轭

copy(Quaternion) → {ht.Math.Quaternion}

将传入的四元数的 x、y、z 和 w 分量拷贝到当前四元数

Parameters:
Name Type Description
Quaternion ht.Math.Quaternion

dot(Quaternion) → {number}

计算四元数 Quaternion 与当前四元数的点积

Parameters:
Name Type Description
Quaternion ht.Math.Quaternion
Returns:
number

equals(Quaternion) → {boolean}

当前四元素和所传入 四元素 是否相等

Parameters:
Name Type Description
Quaternion ht.Math.Quaternion
Returns:
boolean

fromArray(Array, offset) → {ht.Math.Quaternion}

根据传入数组设置当前四元数的 x、y、z 和 w 分量

Parameters:
Name Type Attributes Description
Array Array.<Object>
offset number <optional>

数组的偏移量,默认值为 0

inverse() → {ht.Math.Quaternion}

反转当前四元数

length() → {number}

计算此四元数的直线长度,视为四维向量

Returns:
number

lengthSq() → {number}

计算此四元数的直线长度平方,视为四维向量

Returns:
number

multiply(Quaternion) → {ht.Math.Quaternion}

将当前四元数乘以 Quaternion

Parameters:
Name Type Description
Quaternion ht.Math.Quaternion

multiplyQuaternions(a, b) → {ht.Math.Quaternion}

将当前四元数设置为 a 乘以 b

Parameters:
Name Type Description
a ht.Math.Quaternion
b ht.Math.Quaternion

normalize() → {ht.Math.Quaternion}

标准化当前四元数

premultiply(Quaternion) → {ht.Math.Quaternion}

将 Quaternion 乘以当前四元数

Parameters:
Name Type Description
Quaternion ht.Math.Quaternion

set(x, y, z, w) → {ht.Math.Quaternion}

设置当前四元数的 x、y、z 和 w 分量

Parameters:
Name Type Description
x number
y number
z number
w number

setFromAxisAngle(axis, angle) → {ht.Math.Quaternion}

根据旋转轴和角度指定的旋转设置当前四元数

Parameters:
Name Type Description
axis ht.Math.Vector3

旋转轴

angle number

旋转角度(弧度制)

setFromEuler(Euler) → {ht.Math.Quaternion}

根据欧拉角指定的旋转角度设置当前四元数

Parameters:
Name Type Description
Euler ht.Math.Euler

setFromRotationMatrix(Matrix4) → {ht.Math.Quaternion}

根据 Matrix4 的旋转分量设置当前四元数

Parameters:
Name Type Description
Matrix4 ht.Math.Matrix4

slerp(Quaternion, t) → {ht.Math.Quaternion}

处理四元数之间的球形插值

Parameters:
Name Type Description
Quaternion ht.Math.Quaternion
t number

位于闭区间 [0,1] 中的插值因子